LSST Applications  21.0.0+75b29a8a7f,21.0.0+e70536a077,21.0.0-1-ga51b5d4+62c747d40b,21.0.0-10-gbfb87ad6+3307648ee3,21.0.0-15-gedb9d5423+47cba9fc36,21.0.0-2-g103fe59+fdf0863a2a,21.0.0-2-g1367e85+d38a93257c,21.0.0-2-g45278ab+e70536a077,21.0.0-2-g5242d73+d38a93257c,21.0.0-2-g7f82c8f+e682ffb718,21.0.0-2-g8dde007+d179fbfa6a,21.0.0-2-g8f08a60+9402881886,21.0.0-2-ga326454+e682ffb718,21.0.0-2-ga63a54e+08647d4b1b,21.0.0-2-gde069b7+26c92b3210,21.0.0-2-gecfae73+0445ed2f95,21.0.0-2-gfc62afb+d38a93257c,21.0.0-27-gbbd0d29+ae871e0f33,21.0.0-28-g5fc5e037+feb0e9397b,21.0.0-3-g21c7a62+f4b9c0ff5c,21.0.0-3-g357aad2+57b0bddf0b,21.0.0-3-g4be5c26+d38a93257c,21.0.0-3-g65f322c+3f454acf5d,21.0.0-3-g7d9da8d+75b29a8a7f,21.0.0-3-gaa929c8+9e4ef6332c,21.0.0-3-ge02ed75+4b120a55c4,21.0.0-4-g3300ddd+e70536a077,21.0.0-4-g591bb35+4b120a55c4,21.0.0-4-gc004bbf+4911b9cd27,21.0.0-4-gccdca77+f94adcd104,21.0.0-4-ge8fba5a+2b3a696ff9,21.0.0-5-gb155db7+2c5429117a,21.0.0-5-gdf36809+637e4641ee,21.0.0-6-g00874e7+c9fd7f7160,21.0.0-6-g4e60332+4b120a55c4,21.0.0-7-gc8ca178+40eb9cf840,21.0.0-8-gfbe0b4b+9e4ef6332c,21.0.0-9-g2fd488a+d83b7cd606,w.2021.05
LSST Data Management Base Package
Public Member Functions | Static Public Attributes | List of all members
lsst.obs.base.instrument_tests.InstrumentTests Class Reference
Inheritance diagram for lsst.obs.base.instrument_tests.InstrumentTests:

Public Member Functions

def test_name (self)
 
def test_getCamera (self)
 
def test_register (self)
 
def testMakeTranslatorFactory (self)
 

Static Public Attributes

 data = None
 
 instrument = None
 

Detailed Description

Tests of sublcasses of Instrument.

TestCase subclasses must derive from this, then `TestCase`, and override
``data`` and ``instrument``.

Definition at line 55 of file instrument_tests.py.

Member Function Documentation

◆ test_getCamera()

def lsst.obs.base.instrument_tests.InstrumentTests.test_getCamera (   self)
Test that getCamera() returns a reasonable Camera definition.

Definition at line 71 of file instrument_tests.py.

71  def test_getCamera(self):
72  """Test that getCamera() returns a reasonable Camera definition.
73  """
74  camera = self.instrument.getCamera()
75  self.assertEqual(camera.getName(), self.instrument.getName())
76  self.assertEqual(len(camera), self.data.nDetectors)
77  self.assertEqual(next(iter(camera)).getName(), self.data.firstDetectorName)
78 
std::string const & getName() const noexcept
Return a filter's name.
Definition: Filter.h:78

◆ test_name()

def lsst.obs.base.instrument_tests.InstrumentTests.test_name (   self)

Definition at line 68 of file instrument_tests.py.

68  def test_name(self):
69  self.assertEqual(self.instrument.getName(), self.data.name)
70 

◆ test_register()

def lsst.obs.base.instrument_tests.InstrumentTests.test_register (   self)
Test that register() sets appropriate Dimensions.

Definition at line 79 of file instrument_tests.py.

79  def test_register(self):
80  """Test that register() sets appropriate Dimensions.
81  """
82  registryConfig = RegistryConfig()
83  registryConfig["db"] = "sqlite://"
84  registry = Registry.createFromConfig(registryConfig)
85  # check that the registry starts out empty
86  self.assertFalse(registry.queryDataIds(["instrument"]).toSequence())
87  self.assertFalse(registry.queryDataIds(["detector"]).toSequence())
88  self.assertFalse(registry.queryDataIds(["physical_filter"]).toSequence())
89 
90  # register the instrument and check that certain dimensions appear
91  self.instrument.register(registry)
92  instrumentDataIds = registry.queryDataIds(["instrument"]).toSequence()
93  self.assertEqual(len(instrumentDataIds), 1)
94  instrumentNames = {dataId["instrument"] for dataId in instrumentDataIds}
95  self.assertEqual(instrumentNames, {self.data.name})
96  detectorDataIds = registry.queryDataIds(["detector"]).expanded().toSequence()
97  self.assertEqual(len(detectorDataIds), self.data.nDetectors)
98  detectorNames = {dataId.records["detector"].full_name for dataId in detectorDataIds}
99  self.assertIn(self.data.firstDetectorName, detectorNames)
100  physicalFilterDataIds = registry.queryDataIds(["physical_filter"]).toSequence()
101  filterNames = {dataId['physical_filter'] for dataId in physicalFilterDataIds}
102  self.assertGreaterEqual(filterNames, self.data.physical_filters)
103 
104  # Check that the instrument class can be retrieved
105  registeredInstrument = Instrument.fromName(self.instrument.getName(), registry)
106  self.assertEqual(type(registeredInstrument), type(self.instrument))
107 
108  # Check that re-registration is not an error.
109  self.instrument.register(registry)
110 
table::Key< int > type
Definition: Detector.cc:163

◆ testMakeTranslatorFactory()

def lsst.obs.base.instrument_tests.InstrumentTests.testMakeTranslatorFactory (   self)

Definition at line 111 of file instrument_tests.py.

111  def testMakeTranslatorFactory(self):
112  factory = self.instrument.makeDataIdTranslatorFactory()
113  self.assertIsInstance(factory, TranslatorFactory)
114  str(factory) # just make sure this doesn't raise.

Member Data Documentation

◆ data

lsst.obs.base.instrument_tests.InstrumentTests.data = None
static

Definition at line 62 of file instrument_tests.py.

◆ instrument

lsst.obs.base.instrument_tests.InstrumentTests.instrument = None
static

Definition at line 65 of file instrument_tests.py.


The documentation for this class was generated from the following file: