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")
48 // XML Router API packages.
49 mavenBundle().groupId("org.wamblee.xmlrouter")
50 .artifactId("xmlrouter-common").versionAsInProject(),//
51 mavenBundle().groupId("org.wamblee.xmlrouter")
52 .artifactId("xmlrouter-config").versionAsInProject(),//
53 mavenBundle().groupId("org.wamblee.xmlrouter")
54 .artifactId("xmlrouter-publish").versionAsInProject(),//
55 mavenBundle().groupId("org.wamblee.xmlrouter")
56 .artifactId("xmlrouter-subscribe").versionAsInProject(),//
57 mavenBundle().groupId("org.wamblee.xmlrouter")
58 .artifactId("xmlrouter-listener").versionAsInProject(),//
61 mavenBundle().groupId("org.wamblee.xmlrouter")
62 .artifactId("xmlrouter-router-bundle").versionAsInProject(), //
69 public void test1(BundleContext aContext) throws InterruptedException {
70 System.out.println("=== Got context " + aContext);
72 Destination dest = mock(Destination.class);
73 // verify(dest, never()).receive(any(DOMSource.class));
74 ServiceRegistration registration = aContext.registerService(
75 Destination.class.getName(), dest, null);
78 verify(dest, atLeastOnce()).receive(any(DOMSource.class));
80 registration.unregister();