class TestTimeLimitXMLHandler(unittest.TestCase): def setUp(self): unittest.TestCase.setUp(self) self.h = TimeLimitXMLHandler() self.obj = TimeLimit(123) etree.register_namespace('mc', 'http://pymontecarlo.sf.net') source = BytesIO(b'<mc:timeLimit xmlns:mc="http://pymontecarlo.sf.net" time="123.0" />') self.element = etree.parse(source).getroot() def tearDown(self): unittest.TestCase.tearDown(self) def testcan_parse(self): self.assertTrue(self.h.can_parse(self.element)) def testparse(self): obj = self.h.parse(self.element) self.assertEqual(123, obj.time_s) def testcan_convert(self): self.assertTrue(self.h.can_convert(self.obj)) def testconvert(self): element = self.h.convert(self.obj) self.assertAlmostEqual(123.0, float(element.get('time')), 4)