1 package org.opendaylight.openflowplugin.impl.services;
3 import static org.mockito.Matchers.eq;
4 import static org.mockito.Mockito.mock;
5 import static org.mockito.Mockito.verify;
6 import static org.mockito.Mockito.when;
9 import org.mockito.Mock;
10 import org.mockito.Mockito;
11 import org.opendaylight.openflowplugin.api.openflow.registry.meter.DeviceMeterRegistry;
12 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.AddMeterInput;
13 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.AddMeterInputBuilder;
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.RemoveMeterInput;
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.RemoveMeterInputBuilder;
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.SalMeterService;
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.UpdateMeterInput;
18 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.UpdateMeterInputBuilder;
19 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.service.rev130918.meter.update.UpdatedMeter;
20 import org.opendaylight.yang.gen.v1.urn.opendaylight.meter.types.rev130918.MeterId;
22 public class SalMeterServiceImplTest extends ServiceMocking {
24 private static final Long DUMMY_METER_ID = 15L;
25 public SalMeterService salMeterService;
28 DeviceMeterRegistry mockedDeviceMeterRegistry;
31 public void initialization() {
32 super.initialization();
33 salMeterService = new SalMeterServiceImpl(mockedRequestContextStack, mockedDeviceContext);
34 when(mockedDeviceContext.getDeviceMeterRegistry()).thenReturn(mockedDeviceMeterRegistry);
38 public void testAddMeter() throws Exception {
39 final MeterId dummyMeterId = new MeterId(DUMMY_METER_ID);
40 AddMeterInput addMeterInput = new AddMeterInputBuilder().setMeterId(dummyMeterId).build();
42 salMeterService.addMeter(addMeterInput);
43 verify(mockedRequestContextStack).createRequestContext();
44 verify(mockedDeviceMeterRegistry).store(eq(dummyMeterId));
48 public void testUpdateMeter() throws Exception {
49 final UpdatedMeter mockedUpdatedMeter = mock(UpdatedMeter.class);
50 Mockito.when(mockedUpdatedMeter.getMeterId()).thenReturn(new MeterId(43L));
51 Mockito.doReturn(UpdatedMeter.class).when(mockedUpdatedMeter).getImplementedInterface();
53 final UpdateMeterInput updateMeterInput = new UpdateMeterInputBuilder().setUpdatedMeter(mockedUpdatedMeter).build();
54 salMeterService.updateMeter(updateMeterInput);
55 verify(mockedRequestContextStack).createRequestContext();
59 public void testRemoveMeter() throws Exception {
60 final MeterId dummyMeterId = new MeterId(DUMMY_METER_ID);
61 RemoveMeterInput removeMeterInput = new RemoveMeterInputBuilder().setMeterId(dummyMeterId).build();
63 salMeterService.removeMeter(removeMeterInput);
64 verify(mockedRequestContextStack).createRequestContext();
65 verify(mockedDeviceMeterRegistry).markToBeremoved(eq(dummyMeterId));