[session] move context manager logic in the security context manager
The `init_security` and `reset_security` method have no other user that the context manager itself. Having dedicated public function is not useful.
importosfromos.pathimportjoin,dirnamefromshutilimportrmtreefromlogilab.common.testlibimportTestCase,unittest_mainfromcubicweb.web.propertysheetimport*DATADIR=join(dirname(__file__),'data')CACHEDIR=join(DATADIR,'uicache')classPropertySheetTC(TestCase):deftearDown(self):rmtree(CACHEDIR)deftest(self):ps=PropertySheet(CACHEDIR,datadir_url='http://cwtest.com')ps.load(join(DATADIR,'sheet1.py'))ps.load(join(DATADIR,'sheet2.py'))# defined by sheet1self.assertEqual(ps['logo'],'http://cwtest.com/logo.png')# defined by sheet1, overriden by sheet2self.assertEqual(ps['bgcolor'],'#FFFFFF')# defined by sheet2self.assertEqual(ps['fontcolor'],'black')# defined by sheet1, extended by sheet2self.assertEqual(ps['stylesheets'],['http://cwtest.com/cubicweb.css','http://cwtest.com/mycube.css'])# lazy string defined by sheet1self.assertIsInstance(ps['lazy'],lazystr)self.assertEqual(str(ps['lazy']),'#FFFFFF')# test compilationself.assertEqual(ps.compile('a {bgcolor: %(bgcolor)s; size: 1%;}'),'a {bgcolor: #FFFFFF; size: 1%;}')self.assertEqual(ps.process_resource(DATADIR,'pouet.css'),CACHEDIR)self.assertTrue('pouet.css'inps._cache)self.assertFalse(ps.need_reload())os.utime(join(DATADIR,'sheet1.py'),None)self.assertTrue('pouet.css'inps._cache)self.assertTrue(ps.need_reload())self.assertTrue('pouet.css'inps._cache)ps.reload()self.assertFalse('pouet.css'inps._cache)self.assertFalse(ps.need_reload())ps.process_resource(DATADIR,'pouet.css')# put in cacheos.utime(join(DATADIR,'pouet.css'),None)self.assertFalse(ps.need_reload())self.assertFalse('pouet.css'inps._cache)if__name__=='__main__':unittest_main()