Home | Trees | Indices | Help |
|
---|
|
1 ''' 2 Created on 18 Oct 2011 3 4 @author: rwilkinson 5 ''' 6 import logging 7 import os.path 8 import time 9 import unittest 10 11 from ndg.xacml.parsers.etree.factory import ReaderFactory 12 from ndg.xacml.core.context.pdp import PDP 13 from ndg.xacml.core.context.result import Decision 14 from ndg.xacml.test import THIS_DIR 15 from ndg.xacml.test.context import XacmlContextBaseTestCase 16 17 18 logging.basicConfig(level=logging.ERROR) 1921 """Tests with CMIP5 policy set using nested policies and policy sets for 22 efficiency. 23 """ 24 RESOURCE_1_ID = 'http://localhost/thredds/dodsC/cmip5.output1.MOHC.HadGEM2-ES.rcp60.day.land.day.r1i1p1.mrsos.20111007.aggregation.dods' 25 RESOURCE_2_ID = 'http://localhost/thredds/dodsC/cmip5.output1.MOHC.HadGEM2-ES.rcp60.day.land.day.r1i1p1.mrsos.20110915.aggregation.dods' 26 RESOURCE_3_ID = 'http://localhost/thredds/dodsC/cmip5.output1.MOHC.HadGEM2-ES.rcp60.3hr.land.3hr.r1i1p1.mrsos.20111007.aggregation.dods' 27 XACML_FILENAME = 'cmip5-policyset.xml' 28 XACML_FILEPATH = os.path.join(THIS_DIR, 'cmip5_policyset', XACML_FILENAME) 2974 75 76 77 if __name__ == "__main__": 78 unittest.main() 7931 print "Setting up" 32 self.pdp = PDP.fromPolicySource(self.__class__.XACML_FILEPATH, ReaderFactory) 33 print "Setup complete"34 3537 request = self._createRequestCtx( 38 self.__class__.RESOURCE_1_ID, 39 subjectRoles=('cmip5_research',)) 40 print "Starting request" 41 start_time = time.time() 42 response = self.pdp.evaluate(request) 43 print("Response received after %fs" % (time.time() - start_time)) 44 self.failIf(response is None, "Null response") 45 for result in response.results: 46 self.failIf(result.decision != Decision.PERMIT, 47 "Expecting Permit decision")4850 request = self._createRequestCtx( 51 self.__class__.RESOURCE_2_ID, 52 subjectRoles=('cmip5_research',)) 53 print "Starting request" 54 start_time = time.time() 55 response = self.pdp.evaluate(request) 56 print("Response received after %fs" % (time.time() - start_time)) 57 self.failIf(response is None, "Null response") 58 for result in response.results: 59 self.failIf(result.decision != Decision.DENY, 60 "Expecting Deny decision")6163 request = self._createRequestCtx( 64 self.__class__.RESOURCE_3_ID, 65 subjectRoles=('cmip5_research',)) 66 print "Starting request" 67 start_time = time.time() 68 response = self.pdp.evaluate(request) 69 print("Response received after %fs" % (time.time() - start_time)) 70 self.failIf(response is None, "Null response") 71 for result in response.results: 72 self.failIf(result.decision != Decision.PERMIT, 73 "Expecting Permit decision")
Home | Trees | Indices | Help |
|
---|
Generated by Epydoc 3.0.1 on Thu Apr 5 08:44:42 2012 | http://epydoc.sourceforge.net |