2 * Copyright (c) 2015 Inocybe Technologies and others. All rights reserved.
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
8 package org.opendaylight.ovsdb.southbound.ovsdb.transact;
10 import static org.mockito.ArgumentMatchers.any;
11 import static org.mockito.Mockito.doNothing;
12 import static org.mockito.Mockito.mock;
13 import static org.mockito.Mockito.verify;
15 import java.util.ArrayList;
16 import java.util.List;
17 import org.junit.Before;
18 import org.junit.Ignore;
19 import org.junit.Test;
20 import org.junit.runner.RunWith;
21 import org.mockito.Mock;
22 import org.mockito.junit.MockitoJUnitRunner;
23 import org.opendaylight.ovsdb.lib.operations.TransactionBuilder;
24 import org.opendaylight.ovsdb.southbound.InstanceIdentifierCodec;
26 @RunWith(MockitoJUnitRunner.class)
27 public class TransactCommandAggregatorTest {
29 private final List<TransactCommand> commands = new ArrayList<>();
30 private TransactCommandAggregator transactCommandAggregator;
31 @Mock private DataChangeEvent changes;
32 @Mock private BridgeOperationalState operationalState;
35 public void setUp() throws Exception {
36 transactCommandAggregator = new TransactCommandAggregator();
39 commands.add(mock(BridgeUpdateCommand.class));
40 commands.add(mock(OpenVSwitchBridgeAddCommand.class));
41 commands.add(mock(ControllerUpdateCommand.class));
42 commands.add(mock(ControllerRemovedCommand.class));
43 commands.add(mock(ProtocolUpdateCommand.class));
44 commands.add(mock(ProtocolRemovedCommand.class));
45 commands.add(mock(BridgeRemovedCommand.class));
46 commands.add(mock(TerminationPointCreateCommand.class));
47 commands.add(mock(TerminationPointDeleteCommand.class));
48 commands.add(mock(OvsdbNodeUpdateCommand.class));
49 commands.add(mock(AutoAttachUpdateCommand.class));
50 commands.add(mock(AutoAttachRemovedCommand.class));
51 commands.add(mock(QosUpdateCommand.class));
52 commands.add(mock(QosRemovedCommand.class));
53 commands.add(mock(QueueUpdateCommand.class));
54 commands.add(mock(QueueRemovedCommand.class));
55 commands.add(mock(TerminationPointUpdateCommand.class));
59 @Ignore("This needs to be rewritten")
60 public void testExecute() {
61 TransactionBuilder transaction = mock(TransactionBuilder.class);
62 for (TransactCommand command: commands) {
63 doNothing().when(command).execute(any(TransactionBuilder.class), any(BridgeOperationalState.class),
64 any(DataChangeEvent.class), any(InstanceIdentifierCodec.class));
66 transactCommandAggregator.execute(transaction, mock(BridgeOperationalState.class),
67 mock(DataChangeEvent.class), mock(InstanceIdentifierCodec.class));
68 for (TransactCommand command: commands) {
69 verify(command).execute(any(TransactionBuilder.class), any(BridgeOperationalState.class),
70 any(DataChangeEvent.class), any(InstanceIdentifierCodec.class));