def test_enforce(self): pep = PEP( {'ResourceStatusClient':self.RSMock, 'ResourceManagementClient': self.RMMock, 'SiteStatus': self.RMMock} ) pep.pdp = self.mockPDP res = pep.enforce( None ) self.assertTrue(res['OK']) decisionParams = {} res = pep.enforce( decisionParams ) self.assertTrue(res['OK']) decisionParams = {'element':'Site', 'name': 'Site1'} decParamsPDP = dict(decisionParams) decParamsPDP['active'] = 'active' self.mockPDP.takeDecision.return_value = {'OK':True, 'Value':{'policyCombinedResult': {'PolicyType':['', ''], 'PolicyAction':[( 'aa', 'bb' )], 'Status':'S', 'Reason':'testReason'}, 'singlePolicyResults': [{'Status': 'Active', 'PolicyName': 'SAM_CE_Policy', 'Reason': 'SAM:ok'}, {'Status': 'Banned', 'PolicyName': 'DT_Policy_Scheduled', 'Reason': 'DT:OUTAGE in 1 hours', 'EndDate': '2010-02-16 15:00:00'}], 'decisionParams':decParamsPDP}} res = pep.enforce( decisionParams ) self.assertTrue(res['OK']) decisionParams = {'element':'Resource', 'name': 'StorageElement', 'statusType': 'ReadAccess'} res = pep.enforce( decisionParams ) self.assertTrue(res['OK'])
def test_enforce(self): pep = PEP({ 'ResourceStatusClient': self.RSMock, 'ResourceManagementClient': self.RMMock, 'SiteStatus': self.RMMock }) pep.pdp = self.mockPDP res = pep.enforce(None) self.assertTrue(res['OK']) decisionParams = {} res = pep.enforce(decisionParams) self.assertTrue(res['OK']) decisionParams = {'element': 'Site', 'name': 'Site1'} decParamsPDP = dict(decisionParams) decParamsPDP['active'] = 'active' self.mockPDP.takeDecision.return_value = { 'OK': True, 'Value': { 'policyCombinedResult': { 'PolicyType': ['', ''], 'PolicyAction': [('aa', 'bb')], 'Status': 'S', 'Reason': 'testReason' }, 'singlePolicyResults': [{ 'Status': 'Active', 'PolicyName': 'SAM_CE_Policy', 'Reason': 'SAM:ok' }, { 'Status': 'Banned', 'PolicyName': 'DT_Policy_Scheduled', 'Reason': 'DT:OUTAGE in 1 hours', 'EndDate': '2010-02-16 15:00:00' }], 'decisionParams': decParamsPDP } } res = pep.enforce(decisionParams) self.assertTrue(res['OK']) decisionParams = { 'element': 'Resource', 'name': 'StorageElement', 'statusType': 'ReadAccess' } res = pep.enforce(decisionParams) self.assertTrue(res['OK'])
def test_enforce(self): pep = PEP( {"ResourceStatusClient": self.RSMock, "ResourceManagementClient": self.RMMock, "SiteStatus": self.RMMock} ) pep.pdp = self.mockPDP res = pep.enforce(None) self.assertTrue(res["OK"]) decisionParams = {} res = pep.enforce(decisionParams) self.assertTrue(res["OK"]) decisionParams = {"element": "Site", "name": "Site1"} decParamsPDP = dict(decisionParams) decParamsPDP["active"] = "active" self.mockPDP.takeDecision.return_value = { "OK": True, "Value": { "policyCombinedResult": { "PolicyType": ["", ""], "PolicyAction": [("aa", "bb")], "Status": "S", "Reason": "testReason", }, "singlePolicyResults": [ {"Status": "Active", "PolicyName": "SAM_CE_Policy", "Reason": "SAM:ok"}, { "Status": "Banned", "PolicyName": "DT_Policy_Scheduled", "Reason": "DT:OUTAGE in 1 hours", "EndDate": "2010-02-16 15:00:00", }, ], "decisionParams": decParamsPDP, }, } res = pep.enforce(decisionParams) self.assertTrue(res["OK"]) decisionParams = {"element": "Resource", "name": "StorageElement", "statusType": "ReadAccess"} res = pep.enforce(decisionParams) self.assertTrue(res["OK"])