ObsTests¶
-
class
lsst.obs.base.tests.
ObsTests
¶ Bases:
lsst.obs.base.butler_tests.ButlerGetTests
,lsst.obs.base.mapper_tests.MapperTests
,lsst.obs.base.camera_tests.CameraTests
Aggregator class for all of the obs_* test classes.
Inherit from this class, then lsst.utils.tests.TestCase, in that order.
Example subclass:
class TestObs(lsst.obs.base.tests.ObsTests, lsst.utils.tests.TestCase): def setUp(self): self.setUp_tests(...) self.setUp_butler_get(...) self.setUp_mapper(...) self.setUp_camera(...)
Notes
The intention is for each obs package to have a single test class that inherits from this collector class, thus “automatically” getting all new tests. If those tests require setup that isn’t defined in a given obs package, that obs package will be broken until updated. This is intentional, as a way to prevent obs packages from falling behind out of neglect.
Methods Summary
setUp_butler_get
([ccdExposureId_bits, …])Set up the necessary variables for butlerGet tests. setUp_camera
([camera_name, n_detectors, …])Set up the necessary variables for camera tests. setUp_mapper
([output, path_to_raw, keys, …])Set up the necessary variables for mapper tests. setUp_tests
(butler, mapper, dataIds)Set up the necessary shared variables used by multiple tests. tearDown
()test_bias
()test_camera_butler
()Check that the butler returns the right type of camera. test_can_standardize
()test_dark
()test_exposureId_bits
()test_flat
()test_get_dataset_types
()test_get_default_level
()test_get_keys_raw
()test_get_linearizer
()Test that we can get a linearizer for good detectorIds. test_get_linearizer_bad_detectorIds
()Do bad detectorIds raise? test_iterable
()Simplest camera test: can we get a Camera instance, and does iterating return Detectors? test_keys
()test_map
()test_map_config_data
()test_map_metadata_data
()test_plate_scale
()Check the plate scale at center of focal plane test_query_metadata
()Test expansion of incomplete information of the available data in this obs package’s testdata repo. test_raw
()test_raw_header_wcs
()Test that raw_header_wcs
returns the unmodified header of the raw image.test_subset_raw
()test_validate
()Methods Documentation
-
setUp_butler_get
(ccdExposureId_bits=None, exposureIds=None, filters=None, exptimes=None, detectorIds=None, detector_names=None, detector_serials=None, dimensions=None, sky_origin=None, raw_subsets=None, good_detectorIds=None, bad_detectorIds=None, linearizer_type=None, raw_header_wcs=None)¶ Set up the necessary variables for butlerGet tests.
All “exposure name” entries below should correspond to an entry in self.dataIds.
Parameters: - ccdExposureId_bits :
int
expected value of ccdExposureId_bits
- exposureIds :
dict
dict of exposure name : ccdExposureId (the number as returned by the butler)
- filters :
dict
dict of exposure name : filter name
- exptimes :
dict
dict of exposure name : exposure time
- detector_names :
dict
dict of exposure name : detector name
- detectorIds :
dict
dict of exposure name : detectorId
- detector_serials :
dict
dict of exposure name : detector serial
- dimensions :
dict
dict of exposure name : dimensions (as a geom.Extent2I)
- sky_origin :
tuple
offloat
Longitude, Latitude of ‘raw’ exposure
- raw_subsets :
tuple
of (kwargs,int
) keyword args and expected number of subsets for
butler.subset('raw', **kwargs)
- good_detectorIds :
list
ofint
list of valid ccd numbers
- bad_detectorIds :
list
ofint
list of invalid ccd numbers
- linearizer_type :
dict
dict of detectorId (usually
int
): LinearizerType (e.g. lsst.ip.isr.LinearizeLookupTable.LinearityType), or unittest.SkipTest to skip all linearizer tests.- raw_header_wcs :
lsst.afw.geom.SkyWcs
The SkyWcs object that should be returned by
butler.get("raw_header_wcs", dataId=self.dataIds["raw"])
- ccdExposureId_bits :
-
setUp_camera
(camera_name=None, n_detectors=None, first_detector_name=None, plate_scale=None)¶ Set up the necessary variables for camera tests.
Parameters: - camera_name :
str
name of this camera
- n_detectors :
int
number of detectors in this camera
- first_detector_name :
str
name of the first detector in this camera
- plate_scale :
lsst.geom.Angle
plate scale at center of focal plane, as angle-on-sky/mm
- camera_name :
-
setUp_mapper
(output=None, path_to_raw=None, keys=None, query_format=None, queryMetadata=None, metadata_output_path=None, map_python_type=None, map_python_std_type=None, map_cpp_type=None, map_storage_name=None, raw_filename=None, default_level=None, raw_levels=None, test_config_metadata=True)¶ Set up the necessary variables for mapper tests.
Parameters: - output :
str
full path to output repository (can be the same as data_dir input repository)
- path_to_raw :
str
full path to the raw file referenced by dataIds[‘raw’]
- keys :
set
dictionary keys that this mapper should contain
- query_format :
list
format list for the results portion of queryMetadata
- queryMetadata :
tuple
of (dict
,tuple
) dataIds and the results of calling them in queryMetadata
- metadata_output_path :
str
path to metadata output associated with dataIds[‘raw’]
- map_python_type :
type
full python type specification returned by the mapper for dataIds[‘raw’]
- map_python_std_type :
type
full python type specification returned by the mapper for dataIds[‘raw’] after standardization
- map_cpp_type :
str
C++ type specification returned by the mapper for dataIds[‘raw’]
- map_storage_name :
str
butler name for the storage type dataIds[‘raw’]
- raw_filename :
str
Name of the raw files returned by the mapper for dataIds[‘raw’]
- default_level :
str
value returned from mapper.getDefaultLevel
- raw_levels :
tuple
of (str
,set
ofstr
) (level, expect) level and expected mapper return for mapper.getKeys(‘raw’, level)
- test_config_metadata :
bool
Test persisted config and metadata? These tests may not be appropriate for test stand data. Defaults to True.
- output :
-
setUp_tests
(butler, mapper, dataIds)¶ Set up the necessary shared variables used by multiple tests.
Parameters: - butler: lsst.daf.persistence.Butler
A butler object, instantiated on the testdata repository for the obs package being tested.
- mapper: lsst.obs.CameraMapper
A CameraMapper object for your camera, instantiated on the testdata repository the obs package being tested.
- dataIds: dict
dictionary of (exposure name): (dataId of that exposure in the testdata repository), with unittest.SkipTest as the value for any exposures you do not have/do not want to test. It must contain a valid ‘raw’ dataId, in addition to ‘bias’,’flat’,’dark’, which may be set to SkipTest. For example:
self.dataIds = {'raw': {'visit': 1, 'filter': 'g'}, 'bias': {'visit': 1}, 'flat': {'visit': 1}, 'dark': unittest.SkipTest }
-
tearDown
()¶
-
test_bias
()¶
-
test_camera_butler
()¶ Check that the butler returns the right type of camera.
-
test_can_standardize
()¶
-
test_dark
()¶
-
test_exposureId_bits
()¶
-
test_flat
()¶
-
test_get_dataset_types
()¶
-
test_get_default_level
()¶
-
test_get_keys_raw
()¶
-
test_get_linearizer
()¶ Test that we can get a linearizer for good detectorIds.
-
test_get_linearizer_bad_detectorIds
()¶ Do bad detectorIds raise?
-
test_iterable
()¶ Simplest camera test: can we get a Camera instance, and does iterating return Detectors?
-
test_keys
()¶
-
test_map
()¶
-
test_map_config_data
()¶
-
test_map_metadata_data
()¶
-
test_plate_scale
()¶ Check the plate scale at center of focal plane
Check plate_scale using the FOCAL_PLANE to FIELD_ANGLE transform from the camera.
-
test_query_metadata
()¶ Test expansion of incomplete information of the available data in this obs package’s testdata repo.
-
test_raw
()¶
-
test_raw_header_wcs
()¶ Test that
raw_header_wcs
returns the unmodified header of the raw image.
-
test_subset_raw
()¶
-
test_validate
()¶
-