Modify nemo-impl partical test files
[nemo.git] / nemo-impl / src / test / java / org / opendaylight / nemo / user / vnspacemanager / structurestyle / deleteintent / DeleteNodeTest.java
1 package org.opendaylight.nemo.user.vnspacemanager.structurestyle.deleteintent;\r
2 import org.opendaylight.nemo.user.vnspacemanager.structurestyle.*;\r
3 import static org.mockito.Mockito.mock;\r
4 import org.junit.Assert;\r
5 import org.junit.Before;\r
6 import org.junit.Test;\r
7 \r
8 import org.opendaylight.controller.md.sal.binding.api.DataBroker;\r
9 import org.opendaylight.nemo.user.tenantmanager.TenantManage;\r
10 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.NodeId;\r
11 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.UserId;\r
12 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.Users;\r
13 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.Objects;\r
14 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.objects.Node;\r
15 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.objects.NodeKey;\r
16 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.users.User;\r
17 import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.users.UserKey;\r
18 import org.opendaylight.controller.md.sal.binding.api.WriteTransaction;\r
19 import org.opendaylight.controller.md.sal.common.api.data.LogicalDatastoreType;\r
20 import org.opendaylight.yangtools.yang.binding.InstanceIdentifier;\r
21 import org.opendaylight.controller.md.sal.common.api.data.TransactionCommitFailedException;\r
22 import com.google.common.util.concurrent.CheckedFuture;\r
23 import com.google.common.util.concurrent.FutureCallback;\r
24 import com.google.common.util.concurrent.Futures;\r
25 import org.slf4j.Logger;\r
26 import org.slf4j.LoggerFactory;\r
27 import java.util.List;\r
28 import org.opendaylight.controller.md.sal.binding.api.ReadOnlyTransaction;\r
29 import static org.junit.Assert.*;\r
30 import static org.mockito.Mockito.*;\r
31 import java.util.*;\r
32 public class DeleteNodeTest{\r
33         private DataBroker dataBroker;\r
34     private TenantManage tenantManage;\r
35         private UserId  userid;\r
36         private NodeId  nodeid;\r
37         private DeleteNode deletenode;\r
38         private User user;\r
39         private Objects objects;\r
40         private  Node node;\r
41         private NodeId notnodeid;\r
42         private List<Node> nodeList;\r
43         private   WriteTransaction  writetransaction;\r
44         @org.junit.Before\r
45         public void setUp() throws Exception{\r
46                 dataBroker=mock(DataBroker.class);\r
47                 tenantManage=mock(TenantManage.class);\r
48         userid=mock(UserId.class);      \r
49                 nodeid=mock(NodeId.class);\r
50                 deletenode=new DeleteNode(dataBroker,tenantManage);\r
51                 user=mock(User.class);\r
52                 objects=mock(Objects.class);\r
53                 node=mock(Node.class);\r
54                 notnodeid=mock(NodeId.class);\r
55                 nodeList=new ArrayList<Node>(1);\r
56                 nodeList.add(node);\r
57                 writetransaction=mock(WriteTransaction.class);\r
58         }\r
59         @org.junit.Test\r
60     public void DeleNodeHandlingTest(){\r
61          CheckedFuture connectiondefinitionFuture = mock(CheckedFuture.class);\r
62      ReadOnlyTransaction readOnlyTransaction = mock(ReadOnlyTransaction.class);\r
63          when(dataBroker.newReadOnlyTransaction()).thenReturn(readOnlyTransaction);\r
64     //branch 1\r
65     when(tenantManage.getUser()).thenReturn(null);\r
66     Assert.assertEquals(deletenode.DeleNodeHandling(userid,nodeid),"There are no user in data store."); \r
67         //branch 2\r
68         when(tenantManage.getUser()).thenReturn(user);\r
69         when(user.getObjects()).thenReturn(null);\r
70         Assert.assertEquals(deletenode.DeleNodeHandling(userid,nodeid),null);\r
71    //branch 3\r
72         when(tenantManage.getUser()).thenReturn(user);\r
73         when(user.getObjects()).thenReturn(objects);\r
74         when(objects.getNode()).thenReturn(null);\r
75         Assert.assertEquals(deletenode.DeleNodeHandling(userid,nodeid),"There are no nodes instances in data store.");\r
76         //branch 4\r
77         when(tenantManage.getUser()).thenReturn(user);\r
78         when(user.getObjects()).thenReturn(objects);\r
79         when(objects.getNode()).thenReturn(nodeList);\r
80         when(node.getNodeId()).thenReturn(notnodeid);\r
81         Assert.assertEquals(deletenode.DeleNodeHandling(userid,nodeid),"The node instance" +nodeid.toString()+"is not exist.Could not be deleted");\r
82         //branch 5\r
83         when(tenantManage.getUser()).thenReturn(user);\r
84         when(user.getObjects()).thenReturn(objects);\r
85         when(objects.getNode()).thenReturn(nodeList);\r
86         when(node.getNodeId()).thenReturn(nodeid);\r
87         when(dataBroker.newWriteOnlyTransaction()).thenReturn(writetransaction);\r
88         CheckedFuture<Void, TransactionCommitFailedException> f;\r
89         f=mock(CheckedFuture.class);\r
90         when(writetransaction.submit()).thenReturn(f);\r
91         Assert.assertEquals(deletenode.DeleNodeHandling(userid,nodeid),null);\r
92         }\r
93 }\r