2 * Copyright (c) 2016 Cisco Systems, Inc. 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.mdsal.dom.broker;
10 import static org.mockito.Mockito.doThrow;
11 import static org.mockito.Mockito.mock;
13 import com.google.common.collect.ImmutableMap;
15 import org.junit.Test;
16 import org.opendaylight.mdsal.dom.spi.store.DOMStoreTransaction;
18 public class AbstractDOMForwardedCompositeTransactionTest {
20 private static final DOMStoreTransaction FAIL_TX1 = mock(DOMStoreTransaction.class);
21 private static final DOMStoreTransaction FAIL_TX2 = mock(DOMStoreTransaction.class);
23 @Test(expected = IllegalStateException.class)
24 public void closeSubtransactionsTest() throws Exception {
25 doThrow(UnsupportedOperationException.class).when(FAIL_TX1).close();
26 doThrow(UnsupportedOperationException.class).when(FAIL_TX2).close();
28 final AbstractDOMForwardedCompositeTransaction<?, ?> domForwardedCompositeTransaction =
29 new DOMForwardedCompositeTransactionTestImpl("testIdent",
30 ImmutableMap.of("testKey1", FAIL_TX1, "testKey2", FAIL_TX2));
32 domForwardedCompositeTransaction.closeSubtransactions();
35 private static final class DOMForwardedCompositeTransactionTestImpl
36 extends AbstractDOMForwardedCompositeTransaction<String, DOMStoreTransaction> {
38 DOMForwardedCompositeTransactionTestImpl(final Object identifier,
39 final Map<String, DOMStoreTransaction> backingTxs) {
40 super(identifier, backingTxs);