*/
package org.wamblee.xmlrouter.integrationtest;
+import static org.mockito.Matchers.*;
+import static org.mockito.Mockito.*;
import static org.ops4j.pax.exam.CoreOptions.*;
+import javax.xml.transform.dom.DOMSource;
+
import org.junit.Test;
import org.junit.runner.RunWith;
import org.ops4j.pax.exam.Option;
import org.ops4j.pax.exam.junit.Configuration;
import org.ops4j.pax.exam.junit.JUnit4TestRunner;
import org.osgi.framework.BundleContext;
+import org.osgi.framework.ServiceRegistration;
+import org.wamblee.xmlrouter.subscribe.Destination;
@RunWith(JUnit4TestRunner.class)
public class XmlRouterIntegrationTest {
@Configuration()
public Option[] config() {
return options(
+ cleanCaches(),
// Test dependencies
- mavenBundle().groupId("junit").artifactId("junit-dep")
- .version("4.8.2"), //
+ wrappedBundle(mavenBundle().groupId("junit")
+ .artifactId("junit-dep").version("4.8.2")), //
mavenBundle().groupId("org.mockito").artifactId("mockito-all")
.version("1.8.5"), //
+ // junitBundles(),
+ // mockitoBundles(),
// XML Router API packages.
mavenBundle().groupId("org.wamblee.xmlrouter")
}
@Test
- public void test1(BundleContext aContext) {
+ public void test1(BundleContext aContext) throws InterruptedException {
System.out.println("=== Got context " + aContext);
- }
+ Destination dest = mock(Destination.class);
+ // verify(dest, never()).receive(any(DOMSource.class));
+ ServiceRegistration registration = aContext.registerService(
+ Destination.class.getName(), dest, null);
+ Thread.sleep(5000);
+ verify(dest, atLeastOnce()).receive(any(DOMSource.class));
+
+ registration.unregister();
+ }
}