X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fnetconf%2Fconfig-persister-impl%2Fsrc%2Ftest%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fnetconf%2Fpersist%2Fimpl%2Fosgi%2FConfigPersisterTest.java;h=e02e27a745a032e1f36414c63e9e93dfd55e41c1;hb=dc1a275c3c1ea8949dd3a607e08ee4624e758511;hp=b722496142e4f2014b82e776317488e02ddb4527;hpb=4f8166639477de8c1c9048baee2ba70003748756;p=controller.git diff --git a/opendaylight/netconf/config-persister-impl/src/test/java/org/opendaylight/controller/netconf/persist/impl/osgi/ConfigPersisterTest.java b/opendaylight/netconf/config-persister-impl/src/test/java/org/opendaylight/controller/netconf/persist/impl/osgi/ConfigPersisterTest.java index b722496142..e02e27a745 100644 --- a/opendaylight/netconf/config-persister-impl/src/test/java/org/opendaylight/controller/netconf/persist/impl/osgi/ConfigPersisterTest.java +++ b/opendaylight/netconf/config-persister-impl/src/test/java/org/opendaylight/controller/netconf/persist/impl/osgi/ConfigPersisterTest.java @@ -25,14 +25,13 @@ import org.slf4j.LoggerFactory; import org.w3c.dom.Document; import org.xml.sax.SAXException; -import javax.management.MBeanServer; import java.io.IOException; -import java.lang.management.ManagementFactory; import static org.mockito.Matchers.any; import static org.mockito.Matchers.anyString; import static org.mockito.Mockito.doNothing; import static org.mockito.Mockito.doReturn; +import static org.mockito.Mockito.doThrow; import static org.mockito.Mockito.mock; public class ConfigPersisterTest { @@ -40,7 +39,6 @@ public class ConfigPersisterTest { private MockedBundleContext ctx; private ConfigPersisterActivator configPersisterActivator; - private static final MBeanServer mBeanServer = ManagementFactory.getPlatformMBeanServer(); private TestingExceptionHandler handler; @@ -83,7 +81,7 @@ public class ConfigPersisterTest { // this means pushing of config was successful public void assertCannotRegisterAsJMXListener_pushWasSuccessful() { - handler.assertException(RuntimeException.class, "Cannot register as JMX listener to netconf"); + handler.assertException(IllegalStateException.class, "Cannot register as JMX listener to netconf"); } public NetconfOperationService getWorkingService(Document document) throws SAXException, IOException, NetconfDocumentedException { @@ -113,26 +111,29 @@ public class ConfigPersisterTest { @Test public void testPersisterConflictingVersionException() throws Exception { setUpContextAndStartPersister("cap1"); - NetconfOperationService service = getWorkingService(getConflictVersionDocument()); - doReturn(service).when(ctx.serviceFactory).createService(anyString()); + + doReturn(getConflictingService()).when(ctx.serviceFactory).createService(anyString()); Thread.sleep(2000); handler.assertException(IllegalStateException.class, "Max wait for conflicting version stabilization timeout"); } - private Document getConflictVersionDocument() throws SAXException, IOException { - return XmlUtil.readXmlToDocument( - "\n" + - "" + - ConflictingVersionException.class.getCanonicalName() + - "\n" + - "" - ); + private NetconfOperationService getConflictingService() throws Exception { + NetconfOperationService service = getWorkingService(getOKDocument()); + ConflictingVersionException cve = new ConflictingVersionException(""); + try { + NetconfDocumentedException.wrap(cve); + throw new AssertionError("Should throw an exception"); + }catch(NetconfDocumentedException e) { + NetconfOperation mockedOperation = service.getNetconfOperations().iterator().next(); + doThrow(e).when(mockedOperation).handle(any(Document.class), any(NetconfOperationChainedExecution.class)); + return service; + } } @Test public void testSuccessConflictingVersionException() throws Exception { setUpContextAndStartPersister("cap1"); - doReturn(getWorkingService(getConflictVersionDocument())).when(ctx.serviceFactory).createService(anyString()); + doReturn(getConflictingService()).when(ctx.serviceFactory).createService(anyString()); Thread.sleep(500); // working service: logger.info("Switching to working service **");