Merge "Channel initializer class hierarchy refactor"
[controller.git] / opendaylight / md-sal / sal-binding-it / src / test / java / org / opendaylight / controller / test / sal / binding / it / AbstractTest.java
1 package org.opendaylight.controller.test.sal.binding.it;
2
3 import static org.ops4j.pax.exam.CoreOptions.*;
4 import static org.opendaylight.controller.test.sal.binding.it.TestHelper.*;
5
6 import javax.inject.Inject;
7
8 import org.junit.runner.RunWith;
9 import org.opendaylight.controller.sal.binding.api.BindingAwareBroker;
10 import org.ops4j.pax.exam.Configuration;
11 import org.ops4j.pax.exam.Option;
12 import org.ops4j.pax.exam.junit.PaxExam;
13 import org.ops4j.pax.exam.options.DefaultCompositeOption;
14 import org.ops4j.pax.exam.util.PathUtils;
15 import org.osgi.framework.BundleContext;
16
17 @RunWith(PaxExam.class)
18 public abstract class AbstractTest {
19
20     public static final String CONTROLLER = "org.opendaylight.controller";
21     public static final String YANGTOOLS = "org.opendaylight.yangtools";
22
23     public static final String CONTROLLER_MODELS = "org.opendaylight.controller.model";
24     public static final String YANGTOOLS_MODELS = "org.opendaylight.yangtools.model";
25
26     @Inject
27     BindingAwareBroker broker;
28
29     @Inject
30     BundleContext bundleContext;
31
32     public BindingAwareBroker getBroker() {
33         return broker;
34     }
35
36     public void setBroker(BindingAwareBroker broker) {
37         this.broker = broker;
38     }
39
40     public BundleContext getBundleContext() {
41         return bundleContext;
42     }
43
44     public void setBundleContext(BundleContext bundleContext) {
45         this.bundleContext = bundleContext;
46     }
47
48     @Configuration
49     public Option[] config() {
50         return options(systemProperty("osgi.console").value("2401"), mavenBundle("org.slf4j", "slf4j-api")
51                 .versionAsInProject(), //
52                 systemProperty("logback.configurationFile").value(
53                         "file:" + PathUtils.getBaseDir()
54                                 + "/src/test/resources/logback.xml"),
55                 mavenBundle("org.slf4j", "log4j-over-slf4j").versionAsInProject(), //
56                 mavenBundle("ch.qos.logback", "logback-core").versionAsInProject(), //
57                 mavenBundle("ch.qos.logback", "logback-classic").versionAsInProject(), //
58
59                 configMinumumBundles(),
60                 
61                 mdSalCoreBundles(),
62
63                 bindingAwareSalBundles(),
64
65                 // BASE Models
66                 baseModelBundles(), flowCapableModelBundles(), junitAndMockitoBundles());
67     }
68     
69 }