2 * Copyright 2005-2011 the original author or authors.
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this file except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
16 package org.wamblee.xmlrouter.integrationtest;
18 import static org.mockito.Matchers.*;
19 import static org.mockito.Mockito.*;
20 import static org.ops4j.pax.exam.CoreOptions.*;
22 import javax.xml.transform.dom.DOMSource;
24 import org.junit.Test;
25 import org.junit.runner.RunWith;
26 import org.ops4j.pax.exam.Option;
27 import org.ops4j.pax.exam.junit.Configuration;
28 import org.ops4j.pax.exam.junit.JUnit4TestRunner;
29 import org.osgi.framework.BundleContext;
30 import org.osgi.framework.ServiceRegistration;
31 import org.wamblee.xmlrouter.subscribe.Destination;
33 @RunWith(JUnit4TestRunner.class)
34 public class XmlRouterIntegrationTest {
37 public Option[] config() {
41 // wrappedBundle(mavenBundle().groupId("junit")
42 // .artifactId("junit-dep").version("4.8.2")), //
43 // mavenBundle().groupId("org.mockito").artifactId("mockito-all")
44 // .version("1.8.5"), //
48 systemPackages("org.mockito", "org.junit"),
50 // XML Router API packages.
51 mavenBundle().groupId("org.wamblee.xmlrouter")
52 .artifactId("xmlrouter-common").versionAsInProject(),//
53 mavenBundle().groupId("org.wamblee.xmlrouter")
54 .artifactId("xmlrouter-config").versionAsInProject(),//
55 mavenBundle().groupId("org.wamblee.xmlrouter")
56 .artifactId("xmlrouter-publish").versionAsInProject(),//
57 mavenBundle().groupId("org.wamblee.xmlrouter")
58 .artifactId("xmlrouter-subscribe").versionAsInProject(),//
59 mavenBundle().groupId("org.wamblee.xmlrouter")
60 .artifactId("xmlrouter-listener").versionAsInProject(),//
63 mavenBundle().groupId("org.wamblee.xmlrouter")
64 .artifactId("xmlrouter-router-bundle").versionAsInProject(), //
71 public void test1(BundleContext aContext) throws InterruptedException {
72 System.out.println("=== Got context " + aContext);
74 Destination dest = mock(Destination.class);
75 ServiceRegistration registration = aContext.registerService(
76 Destination.class.getName(), dest, null);
79 verify(dest, atLeastOnce()).receive(any(DOMSource.class));
81 registration.unregister();