def test_sanitize(self): record = {'name': 'Tenar', 'nickname': u'\ufeffThe White Lady of Gont'} sanitized = djqscsv._sanitize_unicode_record({}, record) self.assertEqual(sanitized, { 'name': 'Tenar', 'nickname': '\xef\xbb\xbfThe White Lady of Gont' })
def test_sanitize_date(self): record = {'name': 'Tenar', 'created': datetime.datetime(1, 1, 1)} sanitized = djqscsv._sanitize_unicode_record({}, record) self.assertEqual(sanitized, { 'name': 'Tenar', 'created': '0001-01-01T00:00:00' })
def test_sanitize_date(self): record = {'name': 'Tenar', 'created': datetime.datetime(1, 1, 1)} sanitized = djqscsv._sanitize_unicode_record(record) self.assertEqual(sanitized, {'name': 'Tenar', 'created': '0001-01-01T00:00:00'})
def test_sanitize(self): record = {'name': 'Tenar', 'nickname': u'\ufeffThe White Lady of Gont'} sanitized = djqscsv._sanitize_unicode_record(record) self.assertEqual(sanitized, {'name': 'Tenar', 'nickname': '\xef\xbb\xbfThe White Lady of Gont'})
def test_sanitize_date_with_formatter(self): record = {'name': 'Tenar', 'created': datetime.datetime(1973, 5, 13)} serializer = {'created': lambda d: d.strftime('%Y-%m-%d')} sanitized = djqscsv._sanitize_unicode_record(serializer, record) self.assertEqual(sanitized, {'name': 'Tenar', 'created': '1973-05-13'})
def test_sanitize_date_with_non_string_formatter(self): """ This test is only to make sure an edge case provides a sane default and works as expected. It is not recommended to follow this practice. """ record = {'name': 'Tenar'} serializer = {'name': lambda d: len(d)} sanitized = djqscsv._sanitize_unicode_record(serializer, record) self.assertEqual(sanitized, {'name': '5'})
def test_sanitize_date_with_bad_formatter(self): record = {'name': 'Tenar', 'created': datetime.datetime(1973, 5, 13)} with self.assertRaises(AttributeError): djqscsv._sanitize_unicode_record(attrgetter('day'), record)