MCPcopy Create free account
hub / github.com/LabPy/lantz / test_units

Method test_units

lantz/testsuite/test_feat.py:273–331  ·  view source on GitHub ↗
(self)

Source from the content-addressed store, hash-verified

271 'eggs was set to 10'])
272
273 def test_units(self):
274
275 hdl = MemHandler()
276
277 class Spam(Driver):
278 _logger = get_logger('test.feat', False)
279 _logger.addHandler(hdl)
280 _logger.setLevel(logging.DEBUG)
281
282 _eggs = 8
283
284 @Feat(units='s')
285 def eggs(self_):
286 return self_._eggs
287
288 @eggs.setter
289 def eggs(self_, value):
290 self.assertEqual(type(value), float)
291 self.assertEqual(value, float(value))
292 self_._eggs = value
293
294 _eggs_str = '8'
295
296 @Feat(units='s')
297 def eggs_str(self_):
298 return self_._eggs_str
299
300 @eggs_str.setter
301 def eggs_str(self_, value):
302 self.assertEqual(type(value), float)
303 self.assertEqual(value, float(value))
304 self_._eggs_str = str(value)
305
306 _eggs_adim = '8'
307
308 @Feat(units=float)
309 def eggs_adim(self_):
310 return self_._eggs_adim
311
312 @eggs_adim.setter
313 def eggs_adim(self_, value):
314 self.assertEqual(type(value), float)
315 self.assertEqual(value, float(value))
316 self_._eggs_adim = str(value)
317
318 obj = Spam()
319 self.assertQuantityEqual(obj.eggs, Q_(8, 's'))
320 self.assertEqual(setattr(obj, "eggs", Q_(3, 'ms')), None)
321 self.assertQuantityEqual(obj.eggs, Q_(3 / 1000, 's'))
322 self.assertEqual(setattr(obj, "eggs", 3), None)
323
324 self.assertQuantityEqual(obj.eggs_str, Q_(8, 's'))
325 self.assertEqual(setattr(obj, "eggs_str", Q_(3, 'ms')), None)
326 self.assertQuantityEqual(obj.eggs_str, Q_(3 / 1000, 's'))
327 self.assertEqual(setattr(obj, "eggs_str", 3), None)
328
329 self.assertQuantityEqual(obj.eggs_adim, 8)
330 self.assertEqual(setattr(obj, "eggs_adim",3), None)

Callers

nothing calls this directly

Calls 3

assertQuantityEqualMethod · 0.95
MemHandlerClass · 0.70
SpamClass · 0.70

Tested by

no test coverage detected