Coverage for tests/test_policy.py : 40%

Hot-keys on this page
r m x p toggle line displays
j k next/prev highlighted chunk
0 (zero) top of page
1 (one) first highlighted chunk
#!/usr/bin/env python
# # LSST Data Management System # Copyright 2016 LSST Corporation. # # This product includes software developed by the # LSST Project (http://www.lsst.org/). # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU General Public License as published by # the Free Software Foundation, either version 3 of the License, or # (at your option) any later version. # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the LSST License Statement and # the GNU General Public License along with this program. If not, # see <http://www.lsstcorp.org/LegalNotices/>. #
self.testData = tempfile.mkdtemp(dir=ROOT, prefix='TestPolicyInRepo-')
if os.path.exists(self.testData): shutil.rmtree(self.testData)
"""Verify that when specifying a repo policy that the policy gets written & loaded correctly. """
objA = dpTest.TestObject("abc") dpTest.TestObject("def")
firstRepoPath = os.path.join(self.testData, 'repo1') os.path.join(self.testData, 'repo2')
policy = dafPersist.Policy({'camera': 'lsst.afw.cameraGeom.Camera', 'datasets': { 'basicObject1': { 'python': 'lsst.daf.persistence.test.TestObject', 'template': 'basic/id%(id)s.pickle', 'storage': 'PickleStorage'}, } })
firstRepoPath = os.path.join(self.testData, 'repo1') repoArgs = dafPersist.RepositoryArgs(root=firstRepoPath, mapper='lsst.obs.base.test.CompositeMapper', policy=policy) butler = dafPersist.Butler(outputs=repoArgs)
with open(os.path.join(firstRepoPath, 'repositoryCfg.yaml')) as f: cfg = yaml.load(f) self.assertEqual(cfg.policy, policy) butler.put(objA, 'basicObject1', {'id': 1})
del butler del repoArgs
# Test that a newly-initialized butler can find the policy in the repositoryCfg. repoArgs = dafPersist.RepositoryArgs(root=firstRepoPath) butler = dafPersist.Butler(inputs=repoArgs) reloadedObjA = butler.get('basicObject1', {'id': 1}) self.assertEqual(reloadedObjA, objA)
lsst.utils.tests.init()
lsst.utils.tests.init() unittest.main() |