import org.junit.Test;
import org.opendaylight.controller.config.api.ValidationException;
-import org.opendaylight.controller.netconf.api.NetconfDocumentedException;
+import org.opendaylight.controller.config.facade.xml.ConfigSubsystemFacade;
+import org.opendaylight.controller.config.util.xml.DocumentedException;
+import org.opendaylight.controller.config.util.xml.XmlElement;
+import org.opendaylight.controller.config.util.xml.XmlUtil;
import org.opendaylight.controller.netconf.api.xml.XmlNetconfConstants;
-import org.opendaylight.controller.netconf.confignetconfconnector.transactions.TransactionProvider;
-import org.opendaylight.controller.netconf.util.xml.XmlElement;
-import org.opendaylight.controller.netconf.util.xml.XmlUtil;
import org.w3c.dom.Element;
public class ValidateTest {
public static final String NETCONF_SESSION_ID_FOR_REPORTING = "foo";
- @Test(expected = NetconfDocumentedException.class)
+ @Test(expected = DocumentedException.class)
public void test() throws Exception {
final XmlElement xml = XmlElement.fromString("<abc></abc>");
- final Validate validate = new Validate(null, null, NETCONF_SESSION_ID_FOR_REPORTING);
+ final Validate validate = new Validate(null, NETCONF_SESSION_ID_FOR_REPORTING);
validate.handleWithNoSubsequentOperations(null, xml);
}
- @Test(expected = NetconfDocumentedException.class)
+ @Test(expected = DocumentedException.class)
public void testNoSource() throws Exception {
final XmlElement xml = XmlElement.fromString("<validate xmlns=\""
+ XmlNetconfConstants.URN_IETF_PARAMS_XML_NS_NETCONF_BASE_1_0 + "\"/>");
- final Validate validate = new Validate(null, null, NETCONF_SESSION_ID_FOR_REPORTING);
+ final Validate validate = new Validate(null, NETCONF_SESSION_ID_FOR_REPORTING);
validate.handleWithNoSubsequentOperations(null, xml);
}
- @Test(expected = NetconfDocumentedException.class)
+ @Test(expected = DocumentedException.class)
public void testNoNamespace() throws Exception {
final XmlElement xml = XmlElement.fromString("<validate/>");
- final Validate validate = new Validate(null, null, NETCONF_SESSION_ID_FOR_REPORTING);
+ final Validate validate = new Validate(null, NETCONF_SESSION_ID_FOR_REPORTING);
validate.handleWithNoSubsequentOperations(null, xml);
}
- @Test(expected = NetconfDocumentedException.class)
+ @Test(expected = DocumentedException.class)
public void testRunningSource() throws Exception {
final XmlElement xml = XmlElement.fromString("<validate xmlns=\""
+ XmlNetconfConstants.URN_IETF_PARAMS_XML_NS_NETCONF_BASE_1_0
+ "\"><source><running></running></source></validate>");
- final Validate validate = new Validate(null, null, NETCONF_SESSION_ID_FOR_REPORTING);
+ final Validate validate = new Validate(null, NETCONF_SESSION_ID_FOR_REPORTING);
validate.handleWithNoSubsequentOperations(null, xml);
}
- @Test(expected = NetconfDocumentedException.class)
+ @Test(expected = DocumentedException.class)
public void testNoTransaction() throws Exception {
final XmlElement xml = XmlElement.fromString("<validate xmlns=\""
+ XmlNetconfConstants.URN_IETF_PARAMS_XML_NS_NETCONF_BASE_1_0
+ "\"><source><candidate/></source></validate>");
- final TransactionProvider transactionProvider = mock(TransactionProvider.class);
- doThrow(IllegalStateException.class).when(transactionProvider).validateTransaction();
- final Validate validate = new Validate(transactionProvider, null, NETCONF_SESSION_ID_FOR_REPORTING);
+ final ConfigSubsystemFacade facade = mock(ConfigSubsystemFacade.class);
+ doThrow(IllegalStateException.class).when(facade).validateConfiguration();
+ final Validate validate = new Validate(facade, NETCONF_SESSION_ID_FOR_REPORTING);
validate.handleWithNoSubsequentOperations(null, xml);
}
- @Test(expected = NetconfDocumentedException.class)
+ @Test(expected = DocumentedException.class)
public void testValidationException() throws Exception {
final XmlElement xml = XmlElement.fromString("<validate xmlns=\""
+ XmlNetconfConstants.URN_IETF_PARAMS_XML_NS_NETCONF_BASE_1_0
+ "\">><source><candidate/></source></validate>");
- final TransactionProvider transactionProvider = mock(TransactionProvider.class);
- doThrow(ValidationException.class).when(transactionProvider).validateTransaction();
- final Validate validate = new Validate(transactionProvider, null, NETCONF_SESSION_ID_FOR_REPORTING);
+ final ConfigSubsystemFacade facade = mock(ConfigSubsystemFacade.class);
+ doThrow(ValidationException.class).when(facade).validateConfiguration();
+ final Validate validate = new Validate(facade, NETCONF_SESSION_ID_FOR_REPORTING);
validate.handleWithNoSubsequentOperations(null, xml);
}
final XmlElement xml = XmlElement.fromString("<validate xmlns=\""
+ XmlNetconfConstants.URN_IETF_PARAMS_XML_NS_NETCONF_BASE_1_0
+ "\"><source><candidate/></source></validate>");
- final TransactionProvider transactionProvider = mock(TransactionProvider.class);
final Element okElement = XmlUtil.readXmlToElement("<ok/>");
- doNothing().when(transactionProvider).validateTransaction();
- final Validate validate = new Validate(transactionProvider, null, NETCONF_SESSION_ID_FOR_REPORTING);
+ final ConfigSubsystemFacade facade = mock(ConfigSubsystemFacade.class);
+ doNothing().when(facade).validateConfiguration();
+ final Validate validate = new Validate(facade, NETCONF_SESSION_ID_FOR_REPORTING);
Element ok = validate.handleWithNoSubsequentOperations(XmlUtil.newDocument(), xml);
assertEquals(XmlUtil.toString(okElement), XmlUtil.toString(ok));
}