def test_DatetimeHelper(self): # Helper object for read/write operations with datetime values helper = DatetimeHelper() dt = datetime(2010, 1, 1, 10, 15) self.assertEqual(dt.isoformat(), '2010-01-01T10:15:00') self.assertEqual(helper.dt_to_iso(dt), '2010-01-01T10:15:00') dt = datetime(2010, 1, 1, 10, 15, 10, 5) self.assertEqual(dt.isoformat(), '2010-01-01T10:15:10.000005') self.assertEqual(helper.dt_to_iso(dt), '2010-01-01T10:15:10') self.assertEqual(helper.dt_from_iso('2010-01-01T10:15:00'), datetime(2010, 1, 1, 10, 15)) self.assertEqual(helper.dt_from_iso(u'2010-01-01T10:15:00'), datetime(2010, 1, 1, 10, 15)) self.assertEqual(helper.r_value(u'äöü'), u'äöü') self.assertEqual(helper.r_value(b'\xc3\xa4\xc3\xb6\xc3\xbc'), u'äöü') self.assertEqual(helper.r_value('2010-01-01T10:15:00'), datetime(2010, 1, 1, 10, 15)) self.assertEqual(helper.w_value(b'abc'), u'abc') self.assertEqual(helper.w_value(u'abc'), u'abc') self.assertEqual(helper.w_value(u'äöü'), u'äöü') self.assertEqual(helper.w_value(dt), u'2010-01-01T10:15:10') self.assertEqual(helper.w_value(0), u'0') self.assertEqual(helper.w_value(0.0), u'0.0') self.assertEqual(helper.w_value(None), u'None') self.assertEqual(helper.w_value(True), u'True') self.assertEqual(helper.w_value(False), u'False')
def _xml_repr(self): dth = DatetimeHelper() root = etree.Element('properties') data = object.__getattribute__(self, '_data') for key, value in data.items(): sub = etree.SubElement(root, key) if type(value) in [types.ListType, types.TupleType]: for item in value: item_elem = etree.SubElement(sub, 'item') item_elem.text = dth.w_value(item) elif type(value) is types.DictType or isinstance(value, odict): for key, val in value.items(): dict_entry_elem = etree.SubElement(sub, 'elem') key_elem = etree.SubElement(dict_entry_elem, 'key') value_elem = etree.SubElement(dict_entry_elem, 'value') key_elem.text = dth.w_value(key) value_elem.text = dth.w_value(val) else: sub.text = dth.w_value(value) return etree.tostring(root, pretty_print=True)
def _xml_repr(self): dth = DatetimeHelper() root = etree.Element('properties') data = o_getattr(self, '_data') for key, value in data.items(): sub = etree.SubElement(root, key) if type(value) in ITER_TYPES: for item in value: item_elem = etree.SubElement(sub, 'item') item_elem.text = dth.w_value(item) elif isinstance(value, dict) or isinstance(value, odict): for key, val in value.items(): dict_entry_elem = etree.SubElement(sub, 'elem') key_elem = etree.SubElement(dict_entry_elem, 'key') value_elem = etree.SubElement(dict_entry_elem, 'value') key_elem.text = dth.w_value(key) value_elem.text = dth.w_value(val) else: sub.text = dth.w_value(value) return etree.tostring(root, pretty_print=True)
def test_DatetimeHelper(self): # Helper object for read/write operations with datetime values helper = DatetimeHelper() dt = datetime(2010, 1, 1, 10, 15) self.assertEqual(dt.isoformat(), '2010-01-01T10:15:00') self.assertEqual(helper.dt_to_iso(dt), '2010-01-01T10:15:00') dt = datetime(2010, 1, 1, 10, 15, 10, 5) self.assertEqual(dt.isoformat(), '2010-01-01T10:15:10.000005') self.assertEqual(helper.dt_to_iso(dt), '2010-01-01T10:15:10') self.assertEqual( helper.dt_from_iso('2010-01-01T10:15:00'), datetime(2010, 1, 1, 10, 15) ) self.assertEqual( helper.dt_from_iso(u'2010-01-01T10:15:00'), datetime(2010, 1, 1, 10, 15) ) self.assertEqual(helper.r_value(u'äöü'), u'äöü') self.assertEqual(helper.r_value(b'\xc3\xa4\xc3\xb6\xc3\xbc'), u'äöü') self.assertEqual( helper.r_value('2010-01-01T10:15:00'), datetime(2010, 1, 1, 10, 15) ) self.assertEqual(helper.w_value(b'abc'), u'abc') self.assertEqual(helper.w_value(u'abc'), u'abc') self.assertEqual(helper.w_value(u'äöü'), u'äöü') self.assertEqual(helper.w_value(dt), u'2010-01-01T10:15:10') self.assertEqual(helper.w_value(0), u'0') self.assertEqual(helper.w_value(0.0), u'0.0') self.assertEqual(helper.w_value(None), u'None') self.assertEqual(helper.w_value(True), u'True') self.assertEqual(helper.w_value(False), u'False')