Coverage for tests/test_cloudModel.py : 30%

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
1import numpy as np
2import unittest
3import lsst.utils.tests
4from lsst.sims.cloudModel import CloudModel, CloudModelConfig
7class TestCloudModel(unittest.TestCase):
8 def setUp(self):
9 # Set config to known values.
10 config = CloudModelConfig()
11 config.efd_columns = ['cloud']
12 config.efd_delta_time = 30
13 config.target_columns = ['altitude', 'azimuth']
14 self.config = config
16 def test_configure(self):
17 # Configure with defaults.
18 cloudModel = CloudModel()
19 conf = CloudModelConfig()
20 self.assertEqual(cloudModel._config, conf)
21 # Test specifying the config.
22 cloudModel = CloudModel(self.config)
23 self.assertEqual(cloudModel._config.efd_delta_time, self.config.efd_delta_time)
24 # Test specifying an incorrect config.
25 self.assertRaises(RuntimeError, CloudModel, 0.8)
27 def test_status(self):
28 cloudModel = CloudModel()
29 confDict = cloudModel.config_info()
30 expected_keys = ['CloudModel_version', 'CloudModel_sha', 'efd_columns', 'efd_delta_time',
31 'target_columns']
32 for k in expected_keys:
33 self.assertTrue(k in confDict.keys())
35 def test_efd_requirements(self):
36 cloudModel = CloudModel(self.config)
37 cols, deltaT = cloudModel.efd_requirements
38 self.assertEqual(self.config.efd_columns, cols)
39 self.assertEqual(self.config.efd_delta_time, deltaT)
41 def test_targetmap_requirements(self):
42 cloudModel = CloudModel(self.config)
43 self.assertEqual(cloudModel.target_requirements, self.config.target_columns)
45 def test_call(self):
46 cloudModel = CloudModel(self.config)
47 in_cloud = 1.53
48 efdData = {'cloud': in_cloud}
49 alt = np.zeros(50, float)
50 az = np.zeros(50, float)
51 targetDict = {'altitude': alt, 'azimuth': az}
52 out_cloud = cloudModel(efdData, targetDict)['cloud']
53 # Test that we propagated cloud value over the whole sky.
54 self.assertEqual(in_cloud, out_cloud.max())
55 self.assertEqual(in_cloud, out_cloud.min())
56 self.assertEqual(len(out_cloud), len(alt))
59class TestMemory(lsst.utils.tests.MemoryTestCase):
60 pass
62def setup_module(module):
63 lsst.utils.tests.init()
65if __name__ == "__main__": 65 ↛ 66line 65 didn't jump to line 66, because the condition on line 65 was never true
66 lsst.utils.tests.init()
67 unittest.main()