Fix lead transaction cancellation
[mdsal.git] / dom / mdsal-dom-spi / src / test / java / org / opendaylight / mdsal / dom / spi / DOMDataTreePrefixTableTest.java
1 /*
2  * Copyright (c) 2016 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 package org.opendaylight.mdsal.dom.spi;
9
10 import static org.junit.Assert.assertEquals;
11 import static org.junit.Assert.assertNull;
12
13 import org.junit.Test;
14 import org.opendaylight.mdsal.common.api.LogicalDatastoreType;
15 import org.opendaylight.mdsal.dom.api.DOMDataTreeIdentifier;
16 import org.opendaylight.yangtools.yang.common.QName;
17 import org.opendaylight.yangtools.yang.data.api.YangInstanceIdentifier;
18
19 public class DOMDataTreePrefixTableTest {
20
21     @Test
22     public void basicTest() throws Exception {
23         final DOMDataTreePrefixTable<Object> domDataTreePrefixTable = DOMDataTreePrefixTable.create();
24         final Object testObject = new Object();
25         final YangInstanceIdentifier yangInstanceIdentifier = YangInstanceIdentifier.of(QName.create("", "test"));
26         final DOMDataTreeIdentifier domDataTreeIdentifier =
27                 new DOMDataTreeIdentifier(LogicalDatastoreType.OPERATIONAL, yangInstanceIdentifier);
28
29         domDataTreePrefixTable.store(domDataTreeIdentifier, testObject);
30         assertEquals(QName.create("", "test"),
31                 domDataTreePrefixTable.lookup(domDataTreeIdentifier).getIdentifier().getNodeType());
32         domDataTreePrefixTable.remove(domDataTreeIdentifier);
33         assertNull(domDataTreePrefixTable.lookup(domDataTreeIdentifier));
34
35         final DOMDataTreeIdentifier invalidDOMDataTreeIdentifier =
36                 new DOMDataTreeIdentifier(LogicalDatastoreType.CONFIGURATION, yangInstanceIdentifier);
37         domDataTreePrefixTable.remove(invalidDOMDataTreeIdentifier);
38         assertNull(domDataTreePrefixTable.lookup(invalidDOMDataTreeIdentifier));
39     }
40 }