Bug-915: Adding static document generation.
[controller.git] / opendaylight / netconf / netconf-monitoring / src / test / java / org / opendaylight / controller / netconf / monitoring / osgi / NetconfMonitoringServiceTrackerTest.java
1 /*
2  * Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
3  *
4  * This program and the accompanying materials are made available under the
5  * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6  * and is available at http://www.eclipse.org/legal/epl-v10.html
7  */
8
9 package org.opendaylight.controller.netconf.monitoring.osgi;
10
11 import static org.mockito.Matchers.any;
12 import static org.mockito.Matchers.anyString;
13 import static org.mockito.Mockito.doNothing;
14 import static org.mockito.Mockito.doReturn;
15 import static org.mockito.Mockito.times;
16 import static org.mockito.Mockito.verify;
17 import java.util.Hashtable;
18 import org.junit.Before;
19 import org.junit.Test;
20 import org.mockito.Mock;
21 import org.mockito.MockitoAnnotations;
22 import org.opendaylight.controller.netconf.api.monitoring.NetconfMonitoringService;
23 import org.opendaylight.controller.netconf.mapping.api.NetconfOperationServiceFactory;
24 import org.osgi.framework.BundleContext;
25 import org.osgi.framework.Filter;
26 import org.osgi.framework.ServiceReference;
27 import org.osgi.framework.ServiceRegistration;
28
29 public class NetconfMonitoringServiceTrackerTest {
30
31     @Mock
32     private ServiceReference<NetconfMonitoringService> reference;
33     @Mock
34     private BundleContext context;
35     @Mock
36     private ServiceRegistration<?> serviceRegistration;
37     @Mock
38     private Filter filter;
39     @Mock
40     private NetconfMonitoringService monitoringService;
41
42     @Before
43     public void setUp() throws Exception {
44         MockitoAnnotations.initMocks(this);
45         doReturn(serviceRegistration).when(context).registerService(any(Class.class), any(NetconfOperationServiceFactory.class), any(Hashtable.class));
46         doNothing().when(serviceRegistration).unregister();
47         doReturn(filter).when(context).createFilter(anyString());
48         doReturn("").when(reference).toString();
49         doReturn(monitoringService).when(context).getService(any(ServiceReference.class));
50     }
51
52     @Test
53     public void testAddingService() throws Exception {
54         NetconfMonitoringServiceTracker tracker = new NetconfMonitoringServiceTracker(context);
55         tracker.addingService(reference);
56         verify(context, times(1)).registerService(any(Class.class), any(NetconfOperationServiceFactory.class), any(Hashtable.class));
57         tracker.removedService(reference, null);
58         verify(serviceRegistration, times(1)).unregister();
59     }
60 }