2 * Copyright (c) 2014 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.yangtools.yang.data.operations;
10 import static org.junit.Assert.assertEquals;
11 import static org.junit.Assert.fail;
13 import java.util.Arrays;
14 import java.util.Collection;
16 import org.junit.Test;
17 import org.junit.runner.RunWith;
18 import org.junit.runners.Parameterized;
20 @RunWith(Parameterized.class)
21 public class YangDataOperationsNegativeTest extends YangDataOperationsTest{
23 private static final String XML_NEG_FOLDER_NAME = "/xmls-negative";
24 private final Class<? extends DataModificationException> expected;
26 @Parameterized.Parameters()
27 public static Collection<Object[]> data() {
28 return Arrays.asList(new Object[][] {
31 { "/containerTest_noneContainerActualMissing", DataModificationException.DataMissingException.class },
32 { "/containerTest_createContainerActualPresent", DataModificationException.DataExistsException.class },
33 { "/containerTest_deleteContainerActualMissing", DataModificationException.DataMissingException.class },
35 { "/listTest_createListActualPresent", DataModificationException.DataExistsException.class },
36 { "/listTest_deleteListActualMissing", DataModificationException.DataMissingException.class },
37 { "/listTest_noneListActualMissing", DataModificationException.DataMissingException.class },
39 { "/leafTest_createLeafActualPresent", DataModificationException.DataExistsException.class },
40 { "/leafTest_deleteLeafActualMissing", DataModificationException.DataMissingException.class },
42 { "/leafListTest_createLeafActualPresent", DataModificationException.DataExistsException.class },
43 { "/leafListTest_deleteLeafActualMissing", DataModificationException.DataMissingException.class },
47 public YangDataOperationsNegativeTest(String testDir, Class<? extends DataModificationException> e) throws Exception {
53 protected String getXmlFolderName() {
54 return XML_NEG_FOLDER_NAME;
58 public void testModification() throws Exception {
60 DataOperations.modify(containerNode,
61 currentConfig.orNull(), modification.orNull(), modifyAction);
62 fail("Negative test for " + testDirName + " should have failed");
63 } catch (Exception e) {
64 assertEquals(e.getClass(), expected);