def testComponentView(self): cvName = self.iComponentViews[0]["theName"] cvSyn = self.iComponentViews[0]["theSynopsis"] theComponents = [] for c in self.iComponentViews[0]["theComponents"]: cName = c["theName"] cDesc = c["theDescription"] cInts = [] for i in c["theInterfaces"]: cInts.append((i["theName"],i["theType"],i["theAccessRight"],i["thePrivilege"])) cStructs = [] for cs in c["theStructure"]: cStructs.append((cs["theHeadAsset"],cs["theHeadAdornment"],cs["theHeadNav"],cs["theHeadNry"],cs["theHeadRole"],cs["theTailRole"],cs["theTailNry"],cs["theTailNav"],cs["theTailAdornment"],cs["theTailAsset"])) cReqs = [] cGoals = [] for i in c["theGoals"]: cGoals.append(i) cGoalAssocs = [] for cga in c["theGoalAssociations"]: cGoalAssocs.append((cga["theGoalName"],cga["theSubGoalName"],cga["theRefType"],'None')) theComponents.append(ComponentParameters(cName,cDesc,cInts,cStructs,cReqs,cGoals,cGoalAssocs)) theConnectors = [] for conn in self.iComponentViews[0]["theConnectors"]: theConnectors.append(ConnectorParameters(conn["theConnectorName"],cvName,conn["theFromComponent"],conn["theFromRole"],conn["theFromInterface"],conn["theToComponent"],conn["theToInterface"],conn["theToRole"],conn["theAssetName"],conn["theProtocol"],conn["theAccessRight"])) icvp = ComponentViewParameters(cvName,cvSyn,self.theMetricTypes,self.theRoles,self.theAssets,self.theRequirements,self.theGoals,theComponents,theConnectors) b = Borg() b.dbProxy.addComponentView(icvp) ocvps = b.dbProxy.getComponentViews() ocvp = ocvps[cvName] self.assertEqual(icvp.name(), ocvp.name()) self.assertEqual(icvp.synopsis(), ocvp.synopsis()) self.assertEqual(b.dbProxy.componentAttackSurface('Policy Manager'),3.0) cg = b.dbProxy.componentGoalModel('Policy Manager') icvp.setId(ocvp.id()) icvp.theSynopsis = 'revised synopsis' b.dbProxy.updateComponentView(icvp) ocvps = b.dbProxy.getComponentViews() ocvp = ocvps[cvName] self.assertEqual(icvp.name(), ocvp.name()) self.assertEqual(ocvp.synopsis(), 'revised synopsis') b.dbProxy.deleteComponentView(ocvp.id())
def testComponentView(self): cvName = self.iComponentViews[0]["theName"] cvSyn = self.iComponentViews[0]["theSynopsis"] theComponents = [] for c in self.iComponentViews[0]["theComponents"]: cName = c["theName"] cDesc = c["theDescription"] cInts = [] for i in c["theInterfaces"]: cInts.append((i["theName"],i["theType"],i["theAccessRight"],i["thePrivilege"])) cStructs = [] for cs in c["theStructure"]: cStructs.append((cs["theHeadAsset"],cs["theHeadAdornment"],cs["theHeadNav"],cs["theHeadNry"],cs["theHeadRole"],cs["theTailRole"],cs["theTailNry"],cs["theTailNav"],cs["theTailAdornment"],cs["theTailAsset"])) cReqs = [] cGoals = [] for i in c["theGoals"]: cGoals.append(i) cGoalAssocs = [] for cga in c["theGoalAssociations"]: cGoalAssocs.append((cga["theGoalName"],cga["theSubGoalName"],cga["theRefType"],'None')) theComponents.append(ComponentParameters(cName,cDesc,cInts,cStructs,cReqs,cGoals,cGoalAssocs)) theConnectors = [] for conn in self.iComponentViews[0]["theConnectors"]: theConnectors.append(ConnectorParameters(conn["theConnectorName"],cvName,conn["theFromComponent"],conn["theFromRole"],conn["theFromInterface"],conn["theToComponent"],conn["theToInterface"],conn["theToRole"],conn["theAssetName"],conn["theProtocol"],conn["theAccessRight"])) icvp = ComponentViewParameters(cvName,cvSyn,self.theMetricTypes,self.theRoles,self.theAssets,self.theRequirements,self.theGoals,theComponents,theConnectors) b = Borg() b.dbProxy.addComponentView(icvp) ocvps = b.dbProxy.getComponentViews() ocvp = ocvps[cvName] self.assertEqual(icvp.name(), ocvp.name()) self.assertEqual(icvp.synopsis(), ocvp.synopsis()) self.assertEqual(b.dbProxy.componentAttackSurface('Policy Manager'),3.0) cg = b.dbProxy.componentGoalModel('Policy Manager') icvp.setId(ocvp.id()) icvp.theSynopsis = 'revised synopsis' b.dbProxy.updateComponentView(icvp) ocvps = b.dbProxy.getComponentViews() ocvp = ocvps[cvName] self.assertEqual(icvp.name(), ocvp.name()) self.assertEqual(ocvp.synopsis(), 'revised synopsis') b.dbProxy.deleteComponentView(ocvp.id())
def parameters(self): parameters = ComponentViewParameters(self.theName,self.theSynopsis,[],[],[],[],[],self.theComponents,self.theConnectors) parameters.setId(self.theComponentViewId) return parameters
def parameters(self): parameters = ComponentViewParameters(self.theName,self.theSynopsis,[],[],[],[],[],self.theComponents,self.theConnectors) parameters.setId(self.theComponentViewId) return parameters