# -*- coding: utf-8 -*- import datetime import unittest from bvggrabber.utils.format import dateformat, fullformat, int2bin, timeformat class TestFormats(unittest.TestCase): def test_int2bin(self): nums = [(0b1101110, 7, '1101110'), (0b0010001, 7, '0010001'), (0b111111, 6, '111111'), (0b00000001, 8, '00000001'), (0b00111, 5, '00111'), (0b00111, 8, '00000111'), (0b1100011, 7, '1100011')] for b, l, s in nums: self.assertEqual(int2bin(b, l), s) self.assertRaises(ValueError, int2bin, 12, 'abc') def test_datetime_formats(self): f = [(datetime.datetime(2013, 1, 2, 3, 4, 0), "2013-01-02 03:04:00", "03:04", "02.01.2013"), (datetime.datetime(2013, 5, 2), "2013-05-02 00:00:00", "00:00", "02.05.2013"), (datetime.datetime(2013, 2, 2, 3, 4, 30), "2013-02-02 03:04:30", "03:04", "02.02.2013")] for dt, sf, st, sd in f: self.assertEqual(fullformat(dt), sf) self.assertEqual(dateformat(dt), sd) self.assertEqual(timeformat(dt), st)