Example #1
0
 def test_as_datetime(self):
     fd = FlexiDate(2000)
     out = fd.as_datetime()
     assert out == datetime.datetime(2000, 1, 1), out
     fd = FlexiDate(1760, 1, 2)
     out = fd.as_datetime()
     assert out == datetime.datetime(1760,1,2), out
Example #2
0
    def test_init(self):
        fd = FlexiDate()
        assert fd.year == '', fd
        assert fd.month == '', fd

        fd = FlexiDate(2000, 1,1)
        assert fd.month == '01', fd
        assert fd.day== '01', fd
Example #3
0
 def test_as_float(self):
     fd = FlexiDate(2000)
     assert fd.as_float() == float(2000), fd.as_float()
     fd = FlexiDate(1760, 1, 2)
     exp = 1760 + 1/12.0 + 2/365.0
     assert fd.as_float() == exp, fd.as_float()
     fd = FlexiDate(-1000)
     assert fd.as_float() == float(-1000)
Example #4
0
    def test_from_str(self):
        def dotest(fd):
            out = FlexiDate.from_str(str(fd))
            assert str(out) == str(fd)

        fd = FlexiDate(2000, 1, 23)
        dotest(fd)
        fd = FlexiDate(1760, qualifier='fl.')
        dotest(fd)
        fd = FlexiDate(-1760, 1, 3, qualifier='fl.')
        dotest(fd)
Example #5
0
    def test_str(self):
        fd = FlexiDate(2000, 1, 23)
        assert str(fd) == '2000-01-23', '"%s"' % fd
        fd = FlexiDate(-2000, 1, 23)
        assert str(fd) == '-2000-01-23'
        fd = FlexiDate(2000)
        assert str(fd) == '2000'
        fd = FlexiDate(1760, qualifier='fl.')
        assert str(fd) == '1760 [fl.]', fd

        fd = FlexiDate(qualifier='anything')
        assert str(fd) == ' [anything]'
Example #6
0
    def test_init(self):
        fd = FlexiDate()
        assert fd.year == '', fd
        assert fd.month == '', fd

        fd = FlexiDate(2000, 1, 1)
        assert fd.month == '01', fd
        assert fd.day == '01', fd

        fd = FlexiDate(2004, 3, 2, 10)
        assert fd.month == '03', fd
        assert fd.day == '02', fd
        assert fd.hour == '10', fd

        fd = FlexiDate(2004, 3, 2, 10, 11)
        assert fd.month == '03', fd
        assert fd.day == '02', fd
        assert fd.hour == '10', fd
        assert fd.minute == '11', fd

        fd = FlexiDate(2004, 3, 2, 10, 11, 12)
        assert fd.month == '03', fd
        assert fd.day == '02', fd
        assert fd.hour == '10', fd
        assert fd.minute == '11', fd
        assert fd.second == '12', fd

        fd = FlexiDate(2004, 3, 2, 10, 11, 12, 123456)
        assert fd.month == '03', fd
        assert fd.day == '02', fd
        assert fd.hour == '10', fd
        assert fd.minute == '11', fd
        assert fd.second == '12', fd
        assert fd.microsecond == '123456', fd
Example #7
0
    def test_parse(self):
        d1 = datetime.date(2000, 1, 23)
        fd = parse(d1)
        assert fd.year == '2000'

        d1 = datetime.datetime(2002, 1, 23)
        fd = parse(d1)
        assert fd.year == '2002'

        fd = parse('March 1762')
        assert str(fd) == '1762-03'

        fd = parse(1966)
        assert str(fd) == '1966'

        fd = parse('22/07/2010')
        assert fd.month == '07', fd.month

        d2 = FlexiDate(1760, 1, 2)
        fd = parse(d2)
        assert fd.year == '1760'
Example #8
0
 def test_isoformat(self):
     fd = FlexiDate(2000, 1, 24)
     assert str(fd.isoformat()) == '2000-01-24'
Example #9
0
 def test_cvt(self):
     fd = FlexiDate(2016, 3, 16)
     assert fd._cvt(None, 4, True) == '!!!!'
Example #10
0
 def test_repr(self):
     fd = FlexiDate(2016, 3, 15)
     assert repr(fd) == "<class 'flexidate.FlexiDate'> 2016-03-15"