import java.util.List;
import java.util.ArrayList;
import java.io.StringReader;
+import java.util.Map;
+
import static org.mockito.Mockito.*;
import org.powermock.api.mockito.PowerMockito;
import org.powermock.api.support.membermodification.MemberMatcher;
@Test
public void testNodeModel() throws Exception {
+ UserId userId = mock(UserId.class);
+ DataBroker dataBroker = mock(DataBroker.class);
+ TenantManage tenantManage = mock(TenantManage.class);
+ Field field_jj_ntk = class1.getDeclaredField("jj_ntk");
+ field_jj_ntk.setAccessible(true);
+ Field field_token = class1.getDeclaredField("token");
+ field_token.setAccessible(true);
+
+ Token token = new Token();
+ Token token_ID = new Token();
+ token_ID.kind = NEMOparserConstants.ID;
+ token_ID.image = "test";
+ Token token_PROPERTY = new Token();
+ token_PROPERTY.kind = NEMOparserConstants.PROPERTY;
+ Token token_STRING = new Token();
+ token_STRING.kind = NEMOparserConstants.STRING;
+ token_STRING.image = "test_string";
+ Token token_COLON = new Token();
+ token_COLON.kind = NEMOparserConstants.COLON;
+ Token token_ID1 = new Token();
+ token_ID1.kind = NEMOparserConstants.ID;
+ token_ID1.image = "test1";
+ Token token_SEMICOLON = new Token();
+ token_SEMICOLON.kind = NEMOparserConstants.SEMICOLON;
+ Token token_NODE = new Token();
+ token_NODE.kind = NEMOparserConstants.NODE;
+
+
+ //connect
+ token.next = token_ID;
+ token_ID.next = token_PROPERTY;
+ token_PROPERTY.next = token_STRING;
+ token_STRING.next = token_COLON;
+ token_COLON.next = token_ID1;
+ token_ID1.next = token_SEMICOLON;
+ token_SEMICOLON.next = token_NODE;
+
+ field_jj_ntk.set(class1, NEMOparserConstants.STRING);
+ field_token.set(class1, token);
+ PowerMockito.spy(NEMOparser.class);
+ PowerMockito.when(NEMOparser.class,"jj_ntk")
+ .thenReturn(NEMOparserConstants.NODE)
+ .thenReturn(NEMOparserConstants.NODE)
+ .thenReturn(NEMOparserConstants.SEMICOLON);
+ PowerMockito.mockStatic(NEMOparser.class);
+ PowerMockito.when(NEMOparser.abstractNode(any(UpdateTemplateDefinitionLang.class))).thenReturn("zhangmeng");
+ Assert.assertTrue(NEMOparser.NodeModel(userId, dataBroker, tenantManage) == null);
}
@Test
public void testAbstractNode() throws Exception {
+ UpdateTemplateDefinitionLang definition = mock(UpdateTemplateDefinitionLang.class);
+
+ Field field_jj_ntk = class1.getDeclaredField("jj_ntk");
+ field_jj_ntk.setAccessible(true);
+ Field field_token = class1.getDeclaredField("token");
+ field_token.setAccessible(true);
+
+ Token token = new Token();
+ Token token_ID = new Token();
+ token_ID.kind = NEMOparserConstants.ID;
+ token_ID.image = "test";
+ Token token_TYPE = new Token();
+ token_TYPE.kind = NEMOparserConstants.TYPE;
+ Token token_ID1 = new Token();
+ token_ID1.kind = NEMOparserConstants.ID;
+ token_ID1.image = "test1";
+ Token token_CONTAIN = new Token();
+ token_CONTAIN.kind = NEMOparserConstants.CONTAIN;
+ Token token_ID2 = new Token();
+ token_ID2.kind = NEMOparserConstants.ID;
+ token_ID2.image = "test2";
+ Token token_SEMICOLON = new Token();
+ token_SEMICOLON.kind = NEMOparserConstants.SEMICOLON;
+
+ //connect
+ token.next = token_ID;
+ token_ID.next = token_TYPE;
+ token_TYPE.next = token_ID1;
+ token_ID1.next = token_CONTAIN;
+ token_CONTAIN.next = token_ID2;
+ token_ID2.next = token_SEMICOLON;
+
+ field_jj_ntk.set(class1, NEMOparserConstants.CONTAIN);
+ field_token.set(class1, token);
+ Assert.assertTrue(NEMOparser.abstractNode(definition) == null);
+
+ //branch PROPERTY
+ //connect aggin
+ Token token_PROPERTY = new Token();
+ token_PROPERTY.kind = NEMOparserConstants.PROPERTY;
+ Token token_COLON = new Token();
+ token_COLON.kind = NEMOparserConstants.COLON;
+ PowerMockito.mockStatic(NEMOparser.class);
+ PowerMockito.when(NEMOparser.property()).thenReturn(new LinkedHashMap<String, String>());
+ token.next = token_ID;
+ token_ID.next = token_TYPE;
+ token_TYPE.next = token_ID1;
+ token_ID1.next = token_PROPERTY;
+ token_PROPERTY.next = token_ID2;
+ token_ID2.next = token_COLON;
+ token_COLON.next = token_SEMICOLON;
+
+ field_jj_ntk.set(class1, NEMOparserConstants.PROPERTY);
+ field_token.set(class1, token);
+ Assert.assertTrue(NEMOparser.abstractNode(definition) == null);
}
@Test
public void testAbstractConnection() throws Exception {
+ UpdateTemplateDefinitionLang definition = mock(UpdateTemplateDefinitionLang.class);
+ Field field_jj_ntk = class1.getDeclaredField("jj_ntk");
+ field_jj_ntk.setAccessible(true);
+ Field field_token = class1.getDeclaredField("token");
+ field_token.setAccessible(true);
+
+ Token token = new Token();
+ Token token_ID = new Token();
+ token_ID.kind = NEMOparserConstants.ID;
+ token_ID.image = "test";
+ Token token_TYPE = new Token();
+ token_TYPE.kind = NEMOparserConstants.TYPE;
+ Token token_ID1 = new Token();
+ token_ID1.kind = NEMOparserConstants.ID;
+ token_ID1.image = "test1";
+ Token token_ENDNODES = new Token() ;
+ token_ENDNODES.kind = NEMOparserConstants.ENDNODES;
+ Token token_ID2 = new Token();
+ token_ID2.kind = NEMOparserConstants.ID;
+ token_ID2.image = "test2";
+ Token token_SEMICOLON = new Token();
+ token_SEMICOLON.kind = NEMOparserConstants.SEMICOLON;
+ //connect
+ token.next = token_ID;
+ token_ID.next = token_TYPE;
+ token_TYPE.next = token_ID1;
+ token_ID1.next = token_ENDNODES;
+ token_ENDNODES.next = token_ID2;
+ token_ID2.next = token_SEMICOLON;
+
+ field_jj_ntk.set(class1, NEMOparserConstants.ENDNODES);
+ field_token.set(class1, token);
+
+ Assert.assertTrue(NEMOparser.abstractConnection(definition) == null);
+
+ //branch PROPERTY
+ //connect aggin
+ Token token_PROPERTY = new Token();
+ token_PROPERTY.kind = NEMOparserConstants.PROPERTY;
+ Token token_COLON = new Token();
+ token_COLON.kind = NEMOparserConstants.COLON;
+ PowerMockito.mockStatic(NEMOparser.class);
+ PowerMockito.when(NEMOparser.property()).thenReturn(new LinkedHashMap<String, String>());
+ token.next = token_ID;
+ token_ID.next = token_TYPE;
+ token_TYPE.next = token_ID1;
+ token_ID1.next = token_PROPERTY;
+ token_PROPERTY.next = token_ID2;
+ token_ID2.next = token_COLON;
+ token_COLON.next = token_SEMICOLON;
+
+ field_jj_ntk.set(class1, NEMOparserConstants.PROPERTY);
+ field_token.set(class1, token);
+ Assert.assertTrue(NEMOparser.abstractConnection(definition) == null);
}
@Test
public void testAbstractFlow() throws Exception {
+ UpdateTemplateDefinitionLang definition = mock(UpdateTemplateDefinitionLang.class);
+
+ Field field_jj_ntk = class1.getDeclaredField("jj_ntk");
+ field_jj_ntk.setAccessible(true);
+ Field field_token = class1.getDeclaredField("token");
+ field_token.setAccessible(true);
+
+ Token token = new Token();
+ Token token_ID = new Token();
+ token_ID.kind = NEMOparserConstants.ID;
+ token_ID.image = "test";
+ Token token_MATCH = new Token();
+ token_MATCH.kind = NEMOparserConstants.MATCH;
+ Token token_ID1 = new Token();
+ token_ID1.kind = NEMOparserConstants.ID;
+ Token token_COLON = new Token();
+ token_COLON.kind = NEMOparserConstants.COLON;
+ Token token_PROPERTY = new Token();
+ token_PROPERTY.kind = NEMOparserConstants.PROPERTY;
+ Token token_ID2 = new Token();
+ token_ID2.kind = NEMOparserConstants.ID;
+ Token token_COLON1 = new Token();
+ token_COLON1.kind = NEMOparserConstants.COLON;
+ Token token_SEMICOLON = new Token();
+ token_SEMICOLON.kind = NEMOparserConstants.SEMICOLON;
+ //connect
+ token.next = token_ID;
+ token_ID.next = token_MATCH;
+ token_MATCH.next = token_ID1;
+ token_ID1.next = token_COLON;
+ token_COLON.next = token_PROPERTY;
+ token_PROPERTY.next = token_ID2;
+ token_ID2.next = token_COLON1;
+ token_COLON1.next = token_SEMICOLON;
+
+ field_jj_ntk.set(class1, NEMOparserConstants.PROPERTY);
+ field_token.set(class1, token);
+
+ PowerMockito.mockStatic(NEMOparser.class);
+ PowerMockito.when(NEMOparser.property()).thenReturn(new LinkedHashMap<String, String>());
+ when(definition.createAbstractFlow(any(String.class), any(LinkedHashMap.class), any(LinkedHashMap.class))).thenReturn("test");
+ Assert.assertTrue(NEMOparser.abstractFlow(definition) == null);
}
import org.junit.Test;\r
import static org.mockito.Mockito.*;\r
import static org.junit.Assert.*;\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-import java.util.HashMap;\r
-import java.util.LinkedHashMap;\r
-import java.lang.reflect.Method; \r
-import java.util.*;\r
\r
\r
import org.opendaylight.nemo.user.tenantmanager.TenantManage;\r
import java.util.LinkedHashMap;\r
\r
import java.io.*;\r
+import java.lang.reflect.Field;\r
+import java.lang.reflect.Method;\r
\r
/**\r
* Created by Thomas Liu on 2015/12/14.\r
private List<String> endnodes;\r
private LinkedHashMap<String, LinkedHashMap<String,String>> propertyList;\r
private LinkedHashMap<String,String> properties;\r
+ private Field field;\r
+ private Class class1;\r
+ private Method method;\r
\r
//createConnection\r
private User user;\r
connectionname = new String("conn1");\r
connectiontype = new String("p2p");\r
endnodes = new ArrayList<String>(){{add(new String("123"));}};\r
-\r
+ class1 = UpdateConnectionLang.class;\r
//createConnection\r
user = mock(User.class);\r
object = mock(Objects.class);\r
\r
@org.junit.Test\r
public void testConnectionHandling() throws Exception {\r
-\r
-\r
+ field = class1.getDeclaredField("updateConnection");\r
+ UpdateConnection updateConnection = mock(UpdateConnection.class);\r
+ field.setAccessible(true);\r
+ field.set(updateConnectionLangTest,updateConnection);\r
+ field = class1.getDeclaredField("connection");\r
+ Connection connection = mock(Connection.class);\r
+ field.setAccessible(true);\r
+ field.set(updateConnectionLangTest,connection);\r
//errorInfo == null\r
+ endnodes = new ArrayList<String>(){{add(new String("123"));}};\r
+ connectiontype = new String("p2p");\r
properties = new LinkedHashMap<String,String>(){{\r
- put(new String("1"),NEMOConstants.range);\r
- put(new String("group"),NEMOConstants.string);\r
+ //put(new String("1"),NEMOConstants.range);\r
+ //put(new String("group"),NEMOConstants.string);\r
//put(new String("100"),NEMOConstants.integer);\r
put(new String("100,200"),NEMOConstants.range);\r
}};\r
propertyList.put(new String("p1"),properties);\r
+ //checkProperties()\r
//createConnection()\r
//userId,connectionname,connectiontype,endnodes,propertyList\r
- doNothing().when(tenantManage).fetchVNSpace(userId);\r
- when(tenantManage.getUser()).thenReturn(user);\r
- when(user.getObjects()).thenReturn(object);\r
- when(object.getNode()).thenReturn(nodeList);\r
- when(object.getNode()).thenReturn(nodeList);\r
- when(object.getConnection()).thenReturn(connList);\r
- when(object.getConnection()).thenReturn(connList);\r
-\r
- //connection\r
- //connection exists\r
- when(connList.get(0).getConnectionName()).thenReturn(connectionName);\r
- when(connectionName.getValue()).thenReturn(new String("conn1"));\r
- when(connList.get(0).getConnectionId()).thenReturn(connectionId);\r
-\r
- //endnodes\r
- when(nodeList.get(0).getNodeName()).thenReturn(nodeName);\r
- when(nodeName.getValue()).thenReturn(new String("node1"));\r
- when(nodeList.get(0).getNodeId()).thenReturn(nodeId);\r
- when(nodeList.get(0).getNodeId()).thenReturn(nodeId);\r
-\r
- //propertylist\r
- updateConnectionLangTest.ConnectionHandling(userId, connectionname, connectiontype, endnodes, propertyList);\r
-\r
+ when(tenantManage.getObjectId(userId,connectionname)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ HashMap<ConnectionId,Connection> connectionMap = new HashMap<ConnectionId,Connection>();\r
+ ConnectionId connectionId = new ConnectionId("11111111-1111-1111-1111-111111111111");\r
+ Connection connection2 = mock(Connection.class);\r
+ connectionMap.put(connectionId,connection2);\r
+ when(tenantManage.getConnection(userId)).thenReturn(connectionMap);\r
+ when(tenantManage.getConnection(userId)).thenReturn(connectionMap);\r
+ //if (!endnodes.isEmpty())\r
+ when(tenantManage.getObjectId(userId,"123")).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getObjectId(userId,"123")).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(updateConnection.ConnectionHandling(userId,connection)).thenReturn("ConnectionHandling");\r
+ System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@ Result1 :"+updateConnectionLangTest.ConnectionHandling(userId, connectionname, connectiontype, endnodes, propertyList));\r
+\r
+\r
+ //\r
properties = new LinkedHashMap<String,String>(){{\r
- //put(new String("1"),NEMOConstants.range);\r
- //put(new String("group"),NEMOConstants.string);\r
- //put(new String("100"),NEMOConstants.integer);\r
put(new String("100,200"),NEMOConstants.range);\r
+ put(new String("100"),NEMOConstants.integer);\r
}};\r
propertyList.put(new String("p1"),properties);\r
- //createConnection()\r
- //userId,connectionname,connectiontype,endnodes,propertyList\r
- doNothing().when(tenantManage).fetchVNSpace(userId);\r
- when(tenantManage.getUser()).thenReturn(user);\r
- when(user.getObjects()).thenReturn(object);\r
- when(object.getNode()).thenReturn(nodeList);\r
- when(object.getNode()).thenReturn(nodeList);\r
- when(object.getConnection()).thenReturn(connList);\r
- when(object.getConnection()).thenReturn(connList);\r
-\r
- //connection\r
- //connection exists\r
- when(connList.get(0).getConnectionName()).thenReturn(connectionName);\r
- when(connectionName.getValue()).thenReturn(new String("conn1"));\r
- when(connList.get(0).getConnectionId()).thenReturn(connectionId);\r
-\r
- //endnodes\r
- when(nodeList.get(0).getNodeName()).thenReturn(nodeName);\r
- when(nodeName.getValue()).thenReturn(new String("node1"));\r
- when(nodeList.get(0).getNodeId()).thenReturn(nodeId);\r
- when(nodeList.get(0).getNodeId()).thenReturn(nodeId);\r
+ System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@ Result2 :"+updateConnectionLangTest.ConnectionHandling(userId, connectionname, connectiontype, endnodes, propertyList));\r
+ }\r
\r
- //propertylist\r
- updateConnectionLangTest.ConnectionHandling(userId, connectionname, connectiontype, endnodes, propertyList);\r
+ @org.junit.Test\r
+ public void testcheckProperty() throws Exception {\r
+ method = class1.getDeclaredMethod("checkProperty",new Class[]{\r
+ LinkedHashMap.class,\r
+ });\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("100"),NEMOConstants.integer);\r
+ put(new String("group"),NEMOConstants.string);\r
+ put(new String("100,200"),NEMOConstants.range);\r
+ }};\r
+ propertyList.put(new String("s1"),properties);\r
+ method.setAccessible(true);\r
+ System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@ Result3 :"+method.invoke(updateConnectionLangTest,propertyList));\r
\r
- /*connList = new ArrayList<Connection>();\r
- endnodes = new ArrayList<String>();\r
properties = new LinkedHashMap<String,String>(){{\r
- //put(new String("1"),NEMOConstants.range);\r
- //put(new String("group"),NEMOConstants.string);\r
- //put(new String("100"),NEMOConstants.integer);\r
+ put(new String("group"),NEMOConstants.string);\r
+ put(new String("100"),NEMOConstants.integer);\r
put(new String("100,200"),NEMOConstants.range);\r
}};\r
- propertyList.put(new String("p1"),properties);\r
- //createConnection()\r
- //userId,connectionname,connectiontype,endnodes,propertyList\r
- doNothing().when(tenantManage).fetchVNSpace(userId);\r
- when(tenantManage.getUser()).thenReturn(user);\r
- when(user.getObjects()).thenReturn(object);\r
- when(object.getNode()).thenReturn(nodeList);\r
- when(object.getNode()).thenReturn(nodeList);\r
- when(object.getConnection()).thenReturn(connList);\r
- when(object.getConnection()).thenReturn(connList);\r
+ propertyList.put(new String("s1"),properties);\r
+ System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@ Result4 :"+method.invoke(updateConnectionLangTest,propertyList));\r
+ }\r
\r
+ @org.junit.Test\r
+ public void testcreateConnection() throws Exception {\r
\r
- updateConnectionLangTest.ConnectionHandling(userId, connectionname, connectiontype, endnodes, propertyList);*/\r
+ method = class1.getDeclaredMethod("createConnection",new Class[]{\r
+ UserId.class,\r
+ String.class,\r
+ String.class,\r
+ List.class,\r
+ LinkedHashMap.class,\r
+ });\r
+ method.setAccessible(true);\r
\r
\r
properties = new LinkedHashMap<String,String>(){{\r
- //put(new String("1"),NEMOConstants.range);\r
- //put(new String("group"),NEMOConstants.string);\r
- //put(new String("100"),NEMOConstants.integer);\r
- //put(new String("100,200"),NEMOConstants.range);\r
+ put(new String("100"),NEMOConstants.string);\r
}};\r
propertyList.put(new String("p1"),properties);\r
- //createConnection()\r
- //userId,connectionname,connectiontype,endnodes,propertyList\r
+ endnodes = new ArrayList<String>();\r
+ when(tenantManage.getObjectId(userId,connectionname)).thenReturn(null);\r
+ System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@ Result5 :"+method.invoke(updateConnectionLangTest,userId,connectionname,connectiontype,endnodes,propertyList));\r
\r
- //updateConnectionLangTest.ConnectionHandling(userId, connectionname, connectiontype, endnodes, propertyList);\r
\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("200,100"),NEMOConstants.range);\r
+ }};\r
+ propertyList.put(new String("p1"),properties);\r
+ endnodes = new ArrayList<String>();\r
+ when(tenantManage.getObjectId(userId,connectionname)).thenReturn(null);\r
+ System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@ Result6 :"+method.invoke(updateConnectionLangTest,userId,connectionname,connectiontype,endnodes,propertyList));\r
\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("1"),NEMOConstants.integer);\r
+ }};\r
+ propertyList.put(new String("p1"),properties);\r
+ endnodes = new ArrayList<String>();\r
+ when(tenantManage.getObjectId(userId,connectionname)).thenReturn(null);\r
+ System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@ Result7 :"+method.invoke(updateConnectionLangTest,userId,connectionname,connectiontype,endnodes,propertyList));\r
\r
- }\r
- @org.junit.Test\r
- public void createConnectionTest() throws Exception{\r
- UserId userId1=mock(UserId.class);\r
- String connectionname1;\r
- String connectiontype1;\r
- connectionname1 = new String("conn1");\r
- connectiontype1 = new String("p2p");\r
- List<String> endnodes1=null;\r
- LinkedHashMap<String, LinkedHashMap<String,String>> propertyList1=null;\r
- Class<?>[] args=new Class<?>[5];\r
- args[0]=userId1.getClass();\r
- args[1]=connectionname1.getClass();\r
- args[2]=connectiontype1.getClass();\r
- args[3]=endnodes1.getClass();\r
- args[4]=propertyList1.getClass();\r
- Object[] args1 = new Object[4]; \r
- for(int i=0;i<5;i++)\r
- args1[i]=new Object();\r
- args1[0]=userId1;\r
- args1[1]=connectionname1;\r
- args1[2]=connectiontype1;\r
- args1[3]=endnodes1;\r
- args1[4]=propertyList1;\r
- Method methon=updateConnectionLangTest.getClass().getDeclaredMethod("createConnection",args);\r
- methon.setAccessible(true);\r
- //branch 1 \r
- when(tenantManage.getObjectId(userId1,connectionname1)).thenReturn(null);\r
- Assert.assertNull(methon.invoke(updateConnectionLangTest,args1));\r
- //branch 2 \r
- Map<ConnectionId, Connection> map=new HashMap<ConnectionId,Connection>();\r
- ConnectionId connectionId1=new ConnectionId("111111111111");\r
- Connection connection1=mock(Connection.class);\r
- map.put(connectionId1,connection1);\r
- ConnectionKey connectionkey=mock(ConnectionKey.class);\r
- when(tenantManage.getObjectId(userId1,connectionname1)).thenReturn("111111111111");\r
- when(tenantManage.getObjectId(userId1,connectionname1)).thenReturn("111111111111");\r
- when(tenantManage.getConnection(userId1)).thenReturn(map);\r
- when(connection1.getKey()).thenReturn(connectionkey);\r
- when(connection1.getConnectionId()).thenReturn(connectionId1);\r
- Assert.assertNull(methon.invoke(updateConnectionLangTest,args1));\r
- //branch 3\r
- when(tenantManage.getObjectId(userId1,connectionname1)).thenReturn(null);\r
- endnodes1 = new ArrayList<String>(){{add(new String("123"));}};\r
- args1[3]=endnodes1;\r
- when(tenantManage.getObjectId(userId,"123")).thenReturn(null);\r
- Assert.assertNotNull(methon.invoke(updateConnectionLangTest,args1));\r
- //branch 4\r
- when(tenantManage.getObjectId(userId1,connectionname1)).thenReturn(null);\r
- propertyList1 = new LinkedHashMap<String, LinkedHashMap<String,String>>();\r
- LinkedHashMap<String,String> properties1 = new LinkedHashMap<String,String>(){{\r
- put(new String("1"),NEMOConstants.range);\r
- put(new String("group"),NEMOConstants.string);\r
+ properties = new LinkedHashMap<String,String>(){{\r
put(new String("100"),NEMOConstants.integer);\r
- put(new String("100,200"),NEMOConstants.range);\r
+\r
}};\r
- propertyList1.put(new String("p1"),properties1);\r
- endnodes1=null;\r
- args1[3]=endnodes1;\r
- args1[4]=propertyList1;\r
- Assert.assertNull(methon.invoke(updateConnectionLangTest,args1));\r
- }\r
+ propertyList.put(new String("p1"),properties);\r
+ endnodes = new ArrayList<String>();\r
+ HashMap<ConnectionId,Connection> connectionMap = new HashMap<ConnectionId,Connection>();\r
+ ConnectionId connectionId = new ConnectionId("11111111-1111-1111-1111-111121111111");\r
+ Connection connection2 = mock(Connection.class);\r
+ connectionMap.put(connectionId,connection2);\r
+ when(tenantManage.getObjectId(userId,connectionname)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getConnection(userId)).thenReturn(connectionMap);\r
+ connectionMap.clear();\r
+ connectionMap.put(new ConnectionId("11111111-1111-1111-1111-111111111111"),connection2);\r
+ when(tenantManage.getConnectionDataStore(userId)).thenReturn(connectionMap);\r
+ when(tenantManage.getConnectionDataStore(userId)).thenReturn(connectionMap);\r
+ System.out.println("@@@@@@@@@@@@@@@@@@@@@@@@ Result8 :"+method.invoke(updateConnectionLangTest,userId,connectionname,connectiontype,endnodes,propertyList));\r
+ }\r
+\r
+\r
}
\ No newline at end of file
import java.util.List;\r
import java.util.HashMap;\r
import java.util.LinkedHashMap;\r
-import java.lang.reflect.Method; \r
-import java.util.*;\r
+\r
+import java.lang.reflect.Field;\r
+import java.lang.reflect.Method;\r
\r
import org.opendaylight.controller.md.sal.binding.api.DataBroker;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.Objects;\r
import org.opendaylight.nemo.user.tenantmanager.TenantManage;\r
import org.opendaylight.nemo.user.vnspacemanager.languagestyle.NEMOConstants;\r
+import org.opendaylight.nemo.user.vnspacemanager.structurestyle.updateintent.UpdateConnection;\r
import org.opendaylight.nemo.user.vnspacemanager.structurestyle.updateintent.UpdateFlow;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.*;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.objects.Connection;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.objects.Flow;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.objects.FlowBuilder;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.objects.FlowKey;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.FlowName;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.FlowId;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.Objects;\r
-import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.objects.Flow;\r
+\r
/**\r
* Created by Thomas Liu on 2015/12/15.\r
*/\r
private Objects object;\r
private List<Flow> flows;\r
private LinkedHashMap<String,String> matches,properties;\r
+ private Class class1;\r
+ private Method method;\r
+ private Field field;\r
\r
\r
@org.junit.Before\r
tenantManage = mock(TenantManage.class);\r
updateFlowLangTest = new UpdateFlowLang(dataBroker,tenantManage);\r
flowname = new String("flow1");\r
+ class1 = UpdateFlowLang.class;\r
\r
user = mock(User.class);\r
object = mock(Objects.class);\r
\r
@org.junit.Test\r
public void testFlowHandling() throws Exception {\r
- doNothing().when(tenantManage).fetchVNSpace(userId);\r
- when(tenantManage.getUser()).thenReturn(user);\r
-\r
- when(user.getObjects()).thenReturn(object);\r
- when(user.getObjects()).thenReturn(object);\r
- when(object.getFlow()).thenReturn(flows);\r
- when(user.getObjects()).thenReturn(object);\r
- when(object.getFlow()).thenReturn(flows);\r
-\r
- when(flows.get(0).getFlowName()).thenReturn(new FlowName("flow1"));\r
- when(flows.get(0).getFlowId()).thenReturn(new FlowId("11111111-1111-1111-1111-111111111111"));\r
\r
+ field = class1.getDeclaredField("updateFlow");\r
+ UpdateFlow updateFlow = mock(UpdateFlow.class);\r
+ field.setAccessible(true);\r
+ field.set(updateFlowLangTest,updateFlow);\r
+ field = class1.getDeclaredField("flow");\r
+ Flow flow2 = mock(Flow.class);\r
+ field.setAccessible(true);\r
+ field.set(updateFlowLangTest,flow2);\r
matches = new LinkedHashMap<String,String>(){{\r
put(new String("group"),NEMOConstants.string);\r
put(new String("100"),NEMOConstants.integer);\r
put(new String("100,200"),NEMOConstants.range);\r
+ put(new String("200,100"),NEMOConstants.range);\r
}};\r
- flowmatch.put(new String("1"),matches);\r
+ flowmatch.put(new String("s1"),matches);\r
\r
properties = new LinkedHashMap<String,String>(){{\r
//put(new String("1"),NEMOConstants.range);\r
- put(new String("group"),NEMOConstants.string);\r
- put(new String("100"),NEMOConstants.integer);\r
+ //put(new String("group"),NEMOConstants.string);\r
+ //put(new String("100"),NEMOConstants.integer);\r
put(new String("100,200"),NEMOConstants.range);\r
}};\r
- propertyList.put(new String("1"),properties);\r
+ propertyList.put(new String("s1"),properties);\r
+ //createflow\r
+ when(tenantManage.getObjectId(userId,flowname)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ HashMap<FlowId,Flow> flowMap = new HashMap<FlowId,Flow>();\r
+ FlowId flowId = new FlowId("11111111-1111-1111-1111-111111111111");\r
+ Flow flow = mock(Flow.class);\r
+ flowMap.put(flowId,flow);\r
+ when(tenantManage.getObjectId(userId,flowname)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getFlow(userId)).thenReturn(flowMap);\r
+ when(tenantManage.getFlow(userId)).thenReturn(flowMap);\r
+ when(updateFlow.FlowHandling(userId,flow2)).thenReturn("FlowHandling");\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&& Result1: " + updateFlowLangTest.FlowHandling(userId, flowname, flowmatch, propertyList));\r
\r
\r
- updateFlowLangTest.FlowHandling(userId,flowname,flowmatch,propertyList);\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("100,200"),NEMOConstants.range);\r
+ put(new String("1"),NEMOConstants.range);\r
+ }};\r
+ propertyList.put(new String("s1"),properties);\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&& Result2: " + updateFlowLangTest.FlowHandling(userId, flowname, flowmatch, propertyList));\r
\r
}\r
- @org.junit.Test\r
- public void createFlowTest() throws Exception{\r
- UserId userid=mock(UserId.class);\r
- String flowname="flowname";\r
- LinkedHashMap<String,LinkedHashMap<String,String>> flowmatch=null;\r
- LinkedHashMap<String,LinkedHashMap<String,String>> propertyList=null;\r
- doNothing().when(tenantManage).fetchVNSpace(userId);\r
- when(tenantManage.getUser()).thenReturn(user);\r
- when(user.getObjects()).thenReturn(null);\r
- Class<?>[] args=new Class<?>[4];\r
- args[0]=userid.getClass();\r
- args[1]=flowname.getClass();\r
- args[2]=flowmatch.getClass();\r
- args[3]=propertyList.getClass();\r
- Object[] args1 = new Object[4]; \r
- args1[0]=userid;\r
- args1[1]=flowname;\r
- args1[2]=flowmatch;\r
- args1[3]=propertyList;\r
- Method setupdateintentlang= updateFlowLangTest.getClass().getDeclaredMethod("createFlow",args); \r
- setupdateintentlang.setAccessible(true);\r
- Assert.assertNull(setupdateintentlang.invoke(updateFlowLangTest,args1));\r
- //branch 2\r
- Objects objects=mock(Objects.class);\r
- Flow flow=mock(Flow.class);\r
- doNothing().when(tenantManage).fetchVNSpace(userId);\r
- when(tenantManage.getUser()).thenReturn(user);\r
- List<Flow> flows = new ArrayList<Flow>();\r
- flows.add(flow);\r
- FlowId flowId = new FlowId(UUID.randomUUID().toString());\r
- when(user.getObjects()).thenReturn(objects);\r
- when(objects.getFlow()).thenReturn(flows);\r
- when(flow.getFlowName().getValue()).thenReturn(flowname);\r
- when(flow.getKey()).thenReturn(new FlowKey(flowId));\r
- when(flow.getFlowId()).thenReturn(flowId);\r
- Assert.assertNull(setupdateintentlang.invoke(updateFlowLangTest,args1));\r
- //branch 3\r
- doNothing().when(tenantManage).fetchVNSpace(userId);\r
- when(tenantManage.getUser()).thenReturn(user);\r
- when(user.getObjects()).thenReturn(objects);\r
- when(objects.getFlow()).thenReturn(flows);\r
- when(flow.getFlowName().getValue()).thenReturn(flowname);\r
- when(flow.getKey()).thenReturn(new FlowKey(flowId));\r
- when(flow.getFlowId()).thenReturn(flowId);\r
- flowmatch = new LinkedHashMap<String,LinkedHashMap<String,String>>();\r
\r
- args1[0]=userid;\r
- args1[1]=flowname;\r
- args1[3]=flowmatch;\r
- args1[4]=propertyList;\r
- matches = new LinkedHashMap<String,String>(){{\r
- put(new String("group"),NEMOConstants.string);\r
+ @org.junit.Test\r
+ public void testcheckProperty() throws Exception {\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&" );\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&" );\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&" );\r
+ method = class1.getDeclaredMethod("checkProperty",new Class[]{\r
+ LinkedHashMap.class,\r
+ });\r
+ method.setAccessible(true);\r
+\r
+ properties = new LinkedHashMap<String,String>(){{\r
put(new String("100"),NEMOConstants.integer);\r
+ put(new String("group"),NEMOConstants.string);\r
put(new String("100,200"),NEMOConstants.range);\r
- put(new String("300,200"),NEMOConstants.range);\r
}};\r
- flowmatch.put(new String("1"),matches);\r
- Assert.assertNull(setupdateintentlang.invoke(updateFlowLangTest,args1));\r
- //branch 4\r
- propertyList = new LinkedHashMap<String,LinkedHashMap<String,String>>();\r
+ propertyList.put(new String("s1"),properties);\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&& Result3: " + method.invoke(updateFlowLangTest, propertyList));\r
+\r
properties = new LinkedHashMap<String,String>(){{\r
put(new String("group"),NEMOConstants.string);\r
put(new String("100"),NEMOConstants.integer);\r
put(new String("100,200"),NEMOConstants.range);\r
- put(new String("300,200"),NEMOConstants.range);\r
}};\r
- propertyList.put(new String("1"),properties);\r
- args1[4]=propertyList;\r
- Assert.assertNotNull(setupdateintentlang.invoke(updateFlowLangTest,args1)); \r
- \r
- }\r
+ propertyList.put(new String("s1"),properties);\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&& Result4: " + method.invoke(updateFlowLangTest, propertyList));\r
+ }\r
+\r
+\r
+ @org.junit.Test\r
+ public void testcreateFlow() throws Exception{\r
+ method = class1.getDeclaredMethod("createFlow",new Class[]{\r
+ UserId.class,\r
+ String.class,\r
+ LinkedHashMap.class,\r
+ LinkedHashMap.class,\r
+ });\r
+ method.setAccessible(true);\r
+\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("100"),NEMOConstants.string);\r
+ }};\r
+ propertyList.put(new String("p1"),properties);\r
+ matches = new LinkedHashMap<String,String>();\r
+ flowmatch.put(new String("s1"),matches);\r
+ when(tenantManage.getObjectId(userId,flowname)).thenReturn(null);\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&& Result5: " + method.invoke(updateFlowLangTest, userId,flowname,flowmatch,propertyList));\r
+\r
+\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("200,100"),NEMOConstants.range);\r
+ }};\r
+ propertyList.put(new String("p1"),properties);\r
+ when(tenantManage.getObjectId(userId,flowname)).thenReturn(null);\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&& Result6: " + method.invoke(updateFlowLangTest, userId,flowname,flowmatch,propertyList));\r
+\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("1"),NEMOConstants.integer);\r
+ }};\r
+ propertyList.put(new String("p1"),properties);\r
+ when(tenantManage.getObjectId(userId,flowname)).thenReturn(null);\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&& Result7: " + method.invoke(updateFlowLangTest, userId,flowname,flowmatch,propertyList));\r
+\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("1"),NEMOConstants.integer);\r
+ }};\r
+ propertyList.put(new String("p1"),properties);\r
+ HashMap<FlowId,Flow> flowMap = new HashMap<FlowId,Flow>();\r
+ FlowId flowId = new FlowId("11111111-1111-1111-1111-111111111111");\r
+ Flow flow = mock(Flow.class);\r
+ when(tenantManage.getObjectId(userId,flowname)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getObjectId(userId,flowname)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getFlow(userId)).thenReturn(flowMap);\r
+ flowMap.put(flowId,flow);\r
+ when(tenantManage.getFlowDataStore(userId)).thenReturn(flowMap);\r
+ when(tenantManage.getFlowDataStore(userId)).thenReturn(flowMap);\r
+ System.out.println("&&&&&&&&&&&&&&&&&&&&&& Result8: " + method.invoke(updateFlowLangTest, userId,flowname,flowmatch,propertyList));\r
+\r
+ }\r
}
\ No newline at end of file
import static org.mockito.Mockito.*;\r
import static org.junit.Assert.*;\r
\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-import java.util.HashMap;\r
-import java.util.LinkedHashMap;\r
-import java.util.ArrayList;\r
-import java.util.List;\r
-import java.util.HashMap;\r
-import java.util.LinkedHashMap;\r
-import java.lang.reflect.Method; \r
import java.util.*;\r
+\r
import org.opendaylight.controller.md.sal.binding.api.DataBroker;\r
import org.opendaylight.nemo.user.tenantmanager.TenantManage;\r
import org.opendaylight.nemo.user.vnspacemanager.languagestyle.NEMOConstants;\r
import org.opendaylight.nemo.user.vnspacemanager.languagestyle.NEMOParse.NEMOparser;\r
+import org.opendaylight.nemo.user.vnspacemanager.structurestyle.updateintent.GetDefinitions;\r
import org.opendaylight.nemo.user.vnspacemanager.structurestyle.updateintent.UpdateNode;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.generic.physical.network.rev151010.physical.network.physical.hosts.PhysicalHost;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.*;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.engine.common.rev151010.PhysicalHostName;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.objects.Node;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.objects.NodeBuilder;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.objects.NodeKey;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.NodeName;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.NodeId;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.NodeType;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.ObjectId;\r
import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.Objects;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.TemplateName;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.intent.rev151010.user.intent.template.definitions.TemplateDefinition;\r
+import org.opendaylight.yang.gen.v1.urn.opendaylight.params.xml.ns.yang.nemo.common.rev151010.UserRoleName;\r
+//import java.lang.reflect.Field;\r
+import java.lang.reflect.Field;\r
+import java.lang.reflect.Method;\r
\r
\r
\r
private User user;\r
private Objects object;\r
private List<Node> nodes;\r
+ private Field field;\r
+ private Class class1;\r
+ private Method method;\r
\r
@org.junit.Before\r
public void setUp() throws Exception {\r
dataBroker = mock(DataBroker.class);\r
tenantManage = mock(TenantManage.class);\r
updateNodeLangTest = new UpdateNodeLang(dataBroker,tenantManage);\r
-\r
propertyList = new LinkedHashMap<String,LinkedHashMap<String,String>>();\r
- properties = new LinkedHashMap<String,String>(){{\r
- //put(new String("1"),NEMOConstants.range);\r
- put(new String("group"),NEMOConstants.string);\r
- put(new String("100"),NEMOConstants.integer);\r
- put(new String("100,200"),NEMOConstants.range);\r
- }};\r
- propertyList.put(new String("1"),properties);\r
-\r
user = mock(User.class);\r
object = mock(Objects.class);\r
nodes = new ArrayList<Node>(){{add(mock(Node.class));}};\r
-\r
+ userId = mock(UserId.class);\r
nodename = new String("node1");\r
+ class1 = UpdateNodeLang.class;\r
\r
}\r
\r
@org.junit.Test\r
public void testNodeHandling() throws Exception {\r
+ //if (nodetype.equals(NEMOConstants.host)&&!subnodes.isEmpty())\r
+ nodetype = new String(NEMOConstants.host);\r
+ subnodes = new ArrayList<String>(){{\r
+ add("node1");\r
+ }};\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result1 :"+updateNodeLangTest.NodeHandling(userId,nodename,nodetype,subnodes,propertyList));\r
+\r
+ //if (tenantManage.getTempalteDefinition(userId)!=null)\r
+ //if (!subnodes.isEmpty())\r
+ //if (nodeModel)\r
+ //if (!subnodes.isEmpty())\r
+ nodetype = new String("null");\r
+ subnodes = new ArrayList<String>(){{\r
+ add("node1");\r
+ }};\r
+ HashMap<TemplateName,TemplateDefinition> TempalteDefinition = new HashMap<TemplateName,TemplateDefinition>();\r
+ TemplateName templateName = new TemplateName("null");\r
+ TemplateDefinition templateDefinition = mock(TemplateDefinition.class);\r
+ TempalteDefinition.put(templateName,templateDefinition);\r
+ when(tenantManage.getTempalteDefinition(userId)).thenReturn(TempalteDefinition);\r
+ when(tenantManage.getTempalteDefinition(userId)).thenReturn(TempalteDefinition);\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result2 :"+updateNodeLangTest.NodeHandling(userId,nodename,nodetype,subnodes,propertyList));\r
+\r
+ //if (tenantManage.getTempalteDefinition(userId)==null)\r
+ //if (tenantManage.getDefinitionDataStore(userId)!=null)\r
+ //if (!subnodes.isEmpty())\r
+ //if (nodeModel)\r
+ //if (!subnodes.isEmpty())\r
+ nodetype = new String("null");\r
+ subnodes = new ArrayList<String>(){{\r
+ add("node1");\r
+ }};\r
+ when(tenantManage.getTempalteDefinition(userId)).thenReturn(null);\r
+ when(tenantManage.getDefinitionDataStore(userId)).thenReturn(TempalteDefinition);\r
+ when(tenantManage.getDefinitionDataStore(userId)).thenReturn(TempalteDefinition);\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result3 :"+updateNodeLangTest.NodeHandling(userId,nodename,nodetype,subnodes,propertyList));\r
+\r
+ //if (tenantManage.getTempalteDefinition(userId)==null)\r
+ //if (tenantManage.getDefinitionDataStore(userId)==null)\r
+ // else if (!nodeModel)\r
+ //if (!subnodes.isEmpty())\r
+ //if (nodeModel)\r
+ //if (!subnodes.isEmpty())\r
+ nodetype = new String("null");\r
+ subnodes = new ArrayList<String>(){{\r
+ add("node1");\r
+ }};\r
+ HashMap<UserId, User> usersMap = new HashMap<UserId, User>();\r
+ UserId userId2 = mock(UserId.class);\r
+ User user2 = mock(User.class);\r
+ usersMap.put(userId2,user2);\r
+ when(tenantManage.getTempalteDefinition(userId)).thenReturn(null);\r
+ when(tenantManage.getDefinitionDataStore(userId)).thenReturn(null);\r
+ when(tenantManage.getUsers()).thenReturn(usersMap);\r
+ when(user2.getUserRole()).thenReturn(new UserRoleName(NEMOConstants.admin));\r
+ //when(user2.getUserRole()).thenReturn(1);\r
+ UserId userId3 = mock(UserId.class);\r
+ when(user2.getUserId()).thenReturn(userId3);\r
+ when(tenantManage.getDefinitionDataStore(userId3)).thenReturn(TempalteDefinition);\r
+ when(user2.getUserId()).thenReturn(userId3);\r
+ when(tenantManage.getDefinitionDataStore(userId3)).thenReturn(TempalteDefinition);\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result4 :"+updateNodeLangTest.NodeHandling(userId,nodename,nodetype,subnodes,propertyList));\r
+\r
+ //if (tenantManage.getTempalteDefinition(userId)==null)\r
+ //if (tenantManage.getDefinitionDataStore(userId)==null)\r
+ // else if (!nodeModel)\r
+ //else\r
+ //(!propertyList.isEmpty())\r
+ //if (errorInfo==null)\r
+ //test checkProperty\r
+ //test createNode\r
+ nodetype = new String("null");\r
+ subnodes = new ArrayList<String>(){{\r
+ add("node1");\r
+ }};\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ //put(new String("1"),NEMOConstants.range);\r
+ //put(new String("group"),NEMOConstants.string);\r
+ //put(new String("100"),NEMOConstants.integer);\r
+ put(new String("100,200"),NEMOConstants.range);\r
+ //put(new String("100"),NEMOConstants.integer);\r
+ }};\r
+ field = class1.getDeclaredField("updateNode");\r
+ UpdateNode updateNode = mock(UpdateNode.class);\r
+ field.setAccessible(true);\r
+ field.set(updateNodeLangTest,updateNode);\r
+ propertyList.put(new String("s1"),properties);\r
+ when(tenantManage.getTempalteDefinition(userId)).thenReturn(null);\r
+ when(tenantManage.getDefinitionDataStore(userId)).thenReturn(null);\r
+ when(tenantManage.getUsers()).thenReturn(usersMap);\r
+ when(user2.getUserRole()).thenReturn(new UserRoleName("null"));\r
+ //test createNode()\r
+ HashMap<NodeId,Node> nodeMap = new HashMap<NodeId,Node>();\r
+ NodeId nodeId4 = new NodeId("11111111-1111-1111-1111-111111111111");\r
+ Node node1 = mock(Node.class);\r
+ nodeMap.put(nodeId4, node1);\r
+ when(tenantManage.getObjectId(userId, nodename)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getObjectId(userId,nodename)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getNode(userId)).thenReturn(nodeMap);\r
+ when(node1.getNodeId()).thenReturn(new NodeId("11111111-1111-1111-1111-111111111111"));\r
+ //if (!subnodes.isEmpty())\r
+ when(tenantManage.getObjectId(userId,"node1")).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ //if (errorInfo==null && !propertyList.isEmpty())\r
+ field = class1.getDeclaredField("node");\r
+ Node nodemock = mock(Node.class);\r
+ field.setAccessible(true);\r
+ field.set(updateNodeLangTest,nodemock);\r
+ when(updateNode.NodeHandling(userId,nodemock)).thenReturn("string");\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result5 :"+updateNodeLangTest.NodeHandling(userId,nodename,nodetype,subnodes,propertyList));\r
\r
- nodetype = new String("host");\r
+ //if (tenantManage.getTempalteDefinition(userId)!=null)\r
+ //if (!subnodes.isEmpty())\r
+ //if (nodeModel)\r
+ //if else\r
+ nodetype = new String("null");\r
subnodes = new ArrayList<String>();\r
- updateNodeLangTest.NodeHandling(userId,nodename,nodetype,subnodes,propertyList);\r
+ field = class1.getDeclaredField("updateTemplateInstanceLang");\r
+ UpdateTemplateInstanceLang updateTemplateInstanceLang = mock(UpdateTemplateInstanceLang.class);\r
+ field.setAccessible(true);\r
+ field.set(updateNodeLangTest,updateTemplateInstanceLang);\r
+ when(tenantManage.getTempalteDefinition(userId)).thenReturn(TempalteDefinition);\r
+ when(tenantManage.getTempalteDefinition(userId)).thenReturn(TempalteDefinition);\r
+ when(updateTemplateInstanceLang.templateInstanceLang(userId,nodename,nodetype,propertyList)).thenReturn("errorinfo");\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result6 :"+updateNodeLangTest.NodeHandling(userId,nodename,nodetype,subnodes,propertyList));\r
+\r
\r
- nodetype = new String("host");\r
+ //if (tenantManage.getTempalteDefinition(userId)==null)\r
+ //if (tenantManage.getDefinitionDataStore(userId)==null)\r
+ // else if (!nodeModel)\r
+ //else\r
+ //(!propertyList.isEmpty())\r
+ //if (errorInfo==null)\r
+ //test checkProperty()\r
+ nodetype = new String("null");\r
subnodes = new ArrayList<String>(){{\r
add("node1");\r
}};\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("100,200"),NEMOConstants.range);\r
+ put(new String("100"),NEMOConstants.integer);\r
+ }};\r
+ propertyList.put(new String("s1"),properties);\r
+ when(tenantManage.getTempalteDefinition(userId)).thenReturn(null);\r
+ when(tenantManage.getDefinitionDataStore(userId)).thenReturn(null);\r
+ when(tenantManage.getUsers()).thenReturn(usersMap);\r
+ when(user2.getUserRole()).thenReturn(new UserRoleName("null"));\r
+\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result7 :"+updateNodeLangTest.NodeHandling(userId,nodename,nodetype,subnodes,propertyList));\r
+ }\r
+\r
+ @org.junit.Test\r
+ public void testcheckProperty() throws Exception {\r
+ method = class1.getDeclaredMethod("checkProperty",new Class[]{\r
+ LinkedHashMap.class,\r
+ });\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("100"),NEMOConstants.integer);\r
+ put(new String("group"),NEMOConstants.string);\r
+ put(new String("100,200"),NEMOConstants.range);\r
+ }};\r
+ propertyList.put(new String("s1"),properties);\r
+ method.setAccessible(true);\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result8 "+method.invoke(updateNodeLangTest,propertyList));\r
+\r
+\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("group"),NEMOConstants.string);\r
+ put(new String("100"),NEMOConstants.integer);\r
+ put(new String("100,200"),NEMOConstants.range);\r
+ }};\r
+ propertyList.put(new String("s1"),properties);\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result9 "+method.invoke(updateNodeLangTest,propertyList));\r
+ }\r
+\r
+ @org.junit.Test\r
+ public void testcreateNode() throws Exception {\r
+ nodetype = new String(NEMOConstants.host);\r
+ method = class1.getDeclaredMethod("createNode",new Class[]{\r
+ UserId.class,\r
+ String.class,\r
+ String.class,\r
+ List.class,\r
+ LinkedHashMap.class,\r
\r
- doNothing().when(tenantManage).fetchVNSpace(userId);\r
- when(tenantManage.getUser()).thenReturn(user);\r
+ });\r
+ subnodes = new ArrayList<String>(){{\r
+ add("node1");\r
+ }};\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("100,200"),NEMOConstants.range);\r
+ put(new String("100,200"),NEMOConstants.range);\r
+ }};\r
+ propertyList.put(new String("s1"),properties);\r
+ method.setAccessible(true);\r
+ field = class1.getDeclaredField("getDefinitions");\r
+ field.setAccessible(true);\r
+ GetDefinitions getDefinitions = mock(GetDefinitions.class);\r
+ field.set(updateNodeLangTest,getDefinitions);\r
+ Map<PhysicalHostName, PhysicalHost> physicalHostMap = new HashMap<PhysicalHostName, PhysicalHost>();\r
+ when(tenantManage.getObjectId(userId,nodename)).thenReturn(null);\r
+ when(getDefinitions.getPhysicalHost()).thenReturn(physicalHostMap);\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result10 "+method.invoke(updateNodeLangTest,userId,nodename,nodetype,subnodes,propertyList));\r
\r
- when(user.getObjects()).thenReturn(object);\r
- when(user.getObjects()).thenReturn(object);\r
- when(object.getNode()).thenReturn(nodes);\r
- when(user.getObjects()).thenReturn(object);\r
- when(object.getNode()).thenReturn(nodes);\r
\r
- when(nodes.get(0).getNodeName()).thenReturn(new NodeName("node1"));\r
- when(nodes.get(0).getNodeId()).thenReturn(new NodeId("11111111-1111-1111-1111-111111111111"));\r
+ subnodes = new ArrayList<String>();\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("group"),NEMOConstants.string);\r
+ }};\r
+ propertyList.put(new String("s1"),properties);\r
+ method.setAccessible(true);\r
\r
- when(nodes.get(0).getNodeName()).thenReturn(new NodeName("node1"));\r
- when(nodes.get(0).getNodeId()).thenReturn(new NodeId("11111111-1111-1111-1111-111111111111"));\r
- when(nodes.get(0).getNodeId()).thenReturn(new NodeId("11111111-1111-1111-1111-111111111111"));\r
+ HashMap<NodeId,Node> nodeMap = new HashMap<NodeId,Node>();\r
+ NodeId nodeId4 = new NodeId("11111111-1111-1111-1111-111111111111");\r
+ Node node1 = mock(Node.class);\r
+ nodeMap.put(nodeId4, node1);\r
+ when(tenantManage.getObjectId(userId, nodename)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getObjectId(userId,nodename)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getNode(userId)).thenReturn(null);\r
+ when(tenantManage.getNodeDataStore(userId)).thenReturn(nodeMap);\r
+ when(node1.getNodeId()).thenReturn(new NodeId("11111111-1111-1111-1111-111111111111"));\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result11 "+method.invoke(updateNodeLangTest,userId,nodename,nodetype,subnodes,propertyList));\r
\r
- updateNodeLangTest.NodeHandling(userId, nodename, nodetype, subnodes, propertyList);\r
\r
+ nodetype = "error";\r
+ subnodes = new ArrayList<String>();\r
+ properties = new LinkedHashMap<String,String>(){{\r
+ put(new String("100"),NEMOConstants.integer);\r
+ }};\r
+ propertyList.put(new String("s1"),properties);\r
+ method.setAccessible(true);\r
\r
+ when(tenantManage.getObjectId(userId, nodename)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getObjectId(userId,nodename)).thenReturn("11111111-1111-1111-1111-111111111111");\r
+ when(tenantManage.getNode(userId)).thenReturn(null);\r
+ when(tenantManage.getNodeDataStore(userId)).thenReturn(null);\r
+ System.out.println("!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Result12 "+method.invoke(updateNodeLangTest,userId,nodename,nodetype,subnodes,propertyList));\r
}\r
- @org.junit.Test\r
- public void createNodeTest() throws Exception{\r
- //branch 1 \r
- UserId userId=mock(UserId.class);\r
- NodeId nodeid=new NodeId("11111111-1111-1111-1111-111111111111");\r
- NodeKey nodekey=mock(NodeKey.class);\r
- String nodename="nodename"; \r
- String nodetype=NEMOConstants.host; \r
- ObjectId objectid=mock(ObjectId.class);\r
- List<String> subnodes=null; \r
- Node node =mock(Node.class);\r
- Map<NodeId, Node> nodes=new HashMap<NodeId, Node>(2);\r
- nodes.put(nodeid,node);\r
- LinkedHashMap<String, LinkedHashMap<String,String>> propertyList1=null;\r
- when(tenantManage.getObjectId(userId,nodename)).thenReturn("11111111-1111-1111-1111-111111111111"); \r
- when(tenantManage.getNode(any(UserId.class))).thenReturn(nodes);\r
- when(nodes.get(any(NodeId.class))).thenReturn(node);\r
- when(tenantManage.getNodeDataStore(userId)).thenReturn(nodes);\r
- when(nodes.get(any(NodeId.class))).thenReturn(node);\r
- when(node.getKey()).thenReturn(nodekey);\r
- when(node.getNodeId()).thenReturn(nodeid);\r
- Class<?>[] args=new Class<?>[5];\r
- args[0]=userId.getClass();\r
- args[1]=nodename.getClass();\r
- args[2]=nodetype.getClass();\r
- args[3]=subnodes.getClass();\r
- args[4]=propertyList1.getClass();\r
- Object[] args1 = new Object[5]; \r
- args1[0]=userId;\r
- args1[1]=nodename;\r
- args1[2]=nodetype;\r
- args1[3]=subnodes;\r
- args1[4]=propertyList1;\r
- Method updatenodeintentlang= updateNodeLangTest.getClass().getDeclaredMethod("createNode",args); \r
- updatenodeintentlang.setAccessible(true);\r
- Assert.assertNull(updatenodeintentlang.invoke(updateNodeLangTest,args1));\r
- //branch 2\r
- when(tenantManage.getObjectId(userId,nodename)).thenReturn("11111111-1111-1111-1111-111111111111"); \r
- when(tenantManage.getNode(any(UserId.class))).thenReturn(nodes);\r
- when(nodes.get(any(NodeId.class))).thenReturn(node);\r
- when(tenantManage.getNodeDataStore(userId)).thenReturn(nodes);\r
- when(nodes.get(any(NodeId.class))).thenReturn(node);\r
- when(node.getKey()).thenReturn(nodekey);\r
- when(node.getNodeId()).thenReturn(nodeid);\r
- subnodes=new ArrayList<String>(3);\r
- String subnodeName="subnodename";\r
- subnodes.add(subnodeName);\r
- args1[3]=subnodes;\r
- when(tenantManage.getObjectId(userId,subnodeName)).thenReturn(null);\r
- Assert.assertEquals(updatenodeintentlang.invoke(updateNodeLangTest,args1),"The subnode " +subnodeName+ " is not exist.");\r
- //branch 3\r
- when(tenantManage.getObjectId(userId,nodename)).thenReturn("11111111-1111-1111-1111-111111111111"); \r
- when(tenantManage.getNode(any(UserId.class))).thenReturn(nodes);\r
- when(nodes.get(any(NodeId.class))).thenReturn(node);\r
- when(tenantManage.getNodeDataStore(userId)).thenReturn(nodes);\r
- when(nodes.get(any(NodeId.class))).thenReturn(node);\r
- when(node.getKey()).thenReturn(nodekey);\r
- when(node.getNodeId()).thenReturn(nodeid);\r
- \r
- when(tenantManage.getObjectId(userId,subnodeName)).thenReturn("11111111-1111-1111-1111-111111111111");\r
- Assert.assertNull(updatenodeintentlang.invoke(updateNodeLangTest,args1));\r
- //branch 4\r
- LinkedHashMap<String,String> properties1;\r
- propertyList1 = new LinkedHashMap<String,LinkedHashMap<String,String>>();\r
- properties1 = new LinkedHashMap<String,String>(){{\r
- //put(new String("1"),NEMOConstants.range);\r
- put(new String("group"),NEMOConstants.string);\r
- put(new String("100"),NEMOConstants.integer);\r
- put(new String("100,200"),NEMOConstants.range);\r
- }};\r
- propertyList1.put(new String("1"),properties1);\r
- args1[4]=propertyList1;\r
- when(tenantManage.getObjectId(userId,nodename)).thenReturn("11111111-1111-1111-1111-111111111111"); \r
- when(tenantManage.getNode(any(UserId.class))).thenReturn(nodes);\r
- when(nodes.get(any(NodeId.class))).thenReturn(node);\r
- when(tenantManage.getNodeDataStore(userId)).thenReturn(nodes);\r
- when(nodes.get(any(NodeId.class))).thenReturn(node);\r
- when(node.getKey()).thenReturn(nodekey);\r
- when(node.getNodeId()).thenReturn(nodeid);\r
- \r
- when(tenantManage.getObjectId(userId,subnodeName)).thenReturn("11111111-1111-1111-1111-111111111111");\r
- Assert.assertNull(updatenodeintentlang.invoke(updateNodeLangTest,args1));\r
- \r
- }\r
}
\ No newline at end of file