474b18f8f4fd07cabcaf0a3f5e09d550f07dee6b
[mdsal.git] / dom / mdsal-dom-inmemory-datastore / src / test / java / org / opendaylight / mdsal / dom / store / inmemory / DataTreeModificationCursorAdaptorTest.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.store.inmemory;
9
10 import static org.junit.Assert.assertEquals;
11 import static org.mockito.Mockito.doNothing;
12 import static org.mockito.Mockito.doReturn;
13 import static org.mockito.Mockito.mock;
14 import static org.mockito.Mockito.verify;
15 import static org.opendaylight.mdsal.dom.store.inmemory.TestUtils.PATH_ARGUMENT;
16 import static org.opendaylight.mdsal.dom.store.inmemory.TestUtils.resetMocks;
17
18 import org.junit.After;
19 import org.junit.Test;
20 import org.opendaylight.yangtools.yang.data.api.schema.tree.DataTreeModificationCursor;
21
22 public class DataTreeModificationCursorAdaptorTest {
23
24     @Test
25     public void basicTest() throws Exception {
26         final DataTreeModificationCursor dataTreeModificationCursor = mock(DataTreeModificationCursor.class);
27         final DataTreeModificationCursorAdaptor dataTreeModificationCursorAdaptor =
28                 DataTreeModificationCursorAdaptor.of(dataTreeModificationCursor);
29         final Iterable iterable = mock(Iterable.class);
30         doReturn("test").when(PATH_ARGUMENT).toString();
31
32         assertEquals(dataTreeModificationCursorAdaptor.delegate(), dataTreeModificationCursor);
33
34         doNothing().when(dataTreeModificationCursor).delete(PATH_ARGUMENT);
35         dataTreeModificationCursorAdaptor.delete(PATH_ARGUMENT);
36         verify(dataTreeModificationCursor).delete(PATH_ARGUMENT);
37
38         doNothing().when(dataTreeModificationCursor).enter(PATH_ARGUMENT);
39         dataTreeModificationCursorAdaptor.enter(PATH_ARGUMENT);
40         verify(dataTreeModificationCursor).enter(PATH_ARGUMENT);
41
42         doNothing().when(dataTreeModificationCursor).enter(PATH_ARGUMENT, PATH_ARGUMENT);
43         dataTreeModificationCursorAdaptor.enter(PATH_ARGUMENT, PATH_ARGUMENT);
44         verify(dataTreeModificationCursor).enter(PATH_ARGUMENT, PATH_ARGUMENT);
45
46         doNothing().when(dataTreeModificationCursor).enter(iterable);
47         dataTreeModificationCursorAdaptor.enter(iterable);
48         verify(dataTreeModificationCursor).enter(iterable);
49
50         doNothing().when(dataTreeModificationCursor).merge(PATH_ARGUMENT, null);
51         dataTreeModificationCursorAdaptor.merge(PATH_ARGUMENT,null);
52         verify(dataTreeModificationCursor).merge(PATH_ARGUMENT, null);
53
54         doNothing().when(dataTreeModificationCursor).write(PATH_ARGUMENT, null);
55         dataTreeModificationCursorAdaptor.write(PATH_ARGUMENT, null);
56         verify(dataTreeModificationCursor).write(PATH_ARGUMENT, null);
57
58         doNothing().when(dataTreeModificationCursor).exit(1);
59         dataTreeModificationCursorAdaptor.exit(1);
60         verify(dataTreeModificationCursor).exit(1);
61
62         doNothing().when(dataTreeModificationCursor).exit();
63         dataTreeModificationCursorAdaptor.exit();
64         verify(dataTreeModificationCursor).exit();
65
66         doReturn(null).when(dataTreeModificationCursor).readNode(PATH_ARGUMENT);
67         dataTreeModificationCursorAdaptor.readNode(PATH_ARGUMENT);
68         verify(dataTreeModificationCursor).readNode(PATH_ARGUMENT);
69
70         doNothing().when(dataTreeModificationCursor).close();
71         dataTreeModificationCursorAdaptor.close();
72         verify(dataTreeModificationCursor).close();
73     }
74
75     @After
76     public void reset() {
77         resetMocks();
78     }
79 }