예제 #1
0
파일: tests.py 프로젝트: ccnmtl/python-edtf
    def test_attributes(self):
        e = EDTFDate('2012-09-17')
        self.assertEqual(e.year, '2012')
        self.assertEqual(e.month, 9)
        self.assertEqual(e.month_string, '09')
        self.assertEqual(e.day, 17)
        self.assertEqual(e.day_string, '17')

        e = EDTFDate('2xuu-uu-uu')
        self.assertEqual(e.year, '2xuu')
        self.assertEqual(e.month, 'uu')
        self.assertEqual(e.month_string, 'uu')
        self.assertEqual(e.day, 'uu')
        self.assertEqual(e.day_string, 'uu')

        e = EDTFDate('2xuu')
        self.assertEqual(e.year, '2xuu')
        self.assertEqual(e.month, None)
        self.assertEqual(e.month_string, 'xx')
        self.assertEqual(e.day, None)
        self.assertEqual(e.day_string, 'xx')

        e = EDTFDate('2012-09-17')
        e.year = '2040'
        self.assertEqual(unicode(e), '2040-09-17')
        e.month = '04'
        self.assertEqual(unicode(e), '2040-04-17')
        e.day = '26'
        self.assertEqual(unicode(e), '2040-04-26')

        e.year = 1924
        e.month = 3
        e.day = 2
        self.assertEqual(unicode(e), '1924-03-02')
예제 #2
0
파일: tests.py 프로젝트: ccnmtl/python-edtf
    def test_nullify(self):
        # set components to None
        e = EDTFDate('201x-09-17')

        e.day = None
        self.assertEqual(unicode(e), '201x-09')
        self.assertEqual(e.precision, 'month')

        e.month = None
        self.assertEqual(unicode(e), '201x')
        self.assertEqual(e.precision, 'decade')

        # again with empty strings
        e = EDTFDate('201x-09-17')

        e.day = ""
        self.assertEqual(unicode(e), '201x-09')
        self.assertEqual(e.precision, 'month')

        e.month = ""
        self.assertEqual(unicode(e), '201x')
        self.assertEqual(e.precision, 'decade')

        # clear month without clearing day
        e = EDTFDate('201x-09-17')
        e.month = ""
        self.assertEqual(unicode(e), '201x')
        self.assertEqual(e.precision, 'decade')
        e.month = 12
        self.assertEqual(unicode(e), '201x-12')
        self.assertEqual(e.precision, 'month')

        e.year = ""
        self.assertEqual(unicode(e), '')
예제 #3
0
파일: tests.py 프로젝트: ccnmtl/python-edtf
    def test_season(self):
        e = EDTFDate('2001-21')
        self.assertEqual(e.precision, "season")
        self.assertEqual(e.season, "spring")
        self.assertEqual(e.month, 21)

        e = EDTFDate('2001-22')
        self.assertEqual(e.precision, "season")
        self.assertEqual(e.season, "summer")
        self.assertEqual(e.month, 22)

        e = EDTFDate('2001-23')
        self.assertEqual(e.precision, "season")
        self.assertEqual(e.season, "autumn")
        self.assertEqual(e.month, 23)

        e = EDTFDate('2001-24')
        self.assertEqual(e.precision, "season")
        self.assertEqual(e.season, "winter")
        self.assertEqual(e.month, 24)

        e.season = "summer"
        self.assertEqual(e.precision, "season")
        self.assertEqual(e.season, "summer")
        self.assertEqual(e.month, 22)

        e.season = "fall"
        self.assertEqual(e.precision, "season")
        self.assertEqual(e.season, "autumn")
        self.assertEqual(e.month, 23)

        e.month = 11
        self.assertEqual(e.precision, "month")
        self.assertEqual(e.season, None)
        self.assertEqual(e.month, 11)

        e.month = 21
        self.assertEqual(e.season, "spring")
        self.assertEqual(e.precision, "season")
예제 #4
0
파일: tests.py 프로젝트: ccnmtl/python-edtf
    def test_unspecified(self):
        e = EDTFDate('199u')
        self.assertEqual(unicode(e), '199u')
        self.assertEqual(e.precision, "year")

        e = EDTFDate('19uu')
        self.assertEqual(unicode(e), '19uu')
        self.assertEqual(e.precision, "year")

        e = EDTFDate('1999-uu')
        self.assertEqual(unicode(e), '1999-uu')
        self.assertEqual(e.precision, "month")

        e = EDTFDate('1999-01-uu')
        self.assertEqual(unicode(e), '1999-01-uu')
        self.assertEqual(e.precision, "day")

        e = EDTFDate('1999-uu-uu')
        self.assertEqual(unicode(e), '1999-uu-uu')
        self.assertEqual(e.precision, "day")

        e = EDTFDate('1999-12-16')
        self.assertEqual(unicode(e), '1999-12-16')
        e.month = 'uu'
        self.assertEqual(unicode(e), '1999-uu-16')
        self.assertEqual(e.precision, "day")

        e = EDTFDate('156u-12-25')
        self.assertEqual(unicode(e), '156u-12-25')
        self.assertEqual(e.precision, "day")

        e = EDTFDate('15uu-12-25')
        self.assertEqual(unicode(e), '15uu-12-25')
        self.assertEqual(e.precision, "day")

        e = EDTFDate('15uu-12-uu')
        self.assertEqual(unicode(e), '15uu-12-uu')
        self.assertEqual(e.precision, "day")

        e = EDTFDate('1560-uu-25')
        self.assertEqual(unicode(e), '1560-uu-25')
        self.assertEqual(e.precision, "day")