示例#1
0
    def test_generators(self):
        pd1 =gregorian.partial_date(1, date_time.Jan)
        d = pd1.get_date(2000)
        self.failUnless( pd1.to_string() == "0" )
        self.failUnless( gregorian.date(2000,1,1) == d)
  
        pd2 = gregorian.partial_date(1, date_time.Feb)

        self.failUnless( pd1 == pd1)
        self.failUnless( not(pd1 == pd2) )
        self.failUnless( not(pd2 == pd1) )
        self.failUnless( not(pd1 < pd1) )
        self.failUnless( pd1 < pd2)
        self.failUnless( not(pd2 < pd1) )
        
        lastkday = gregorian.last_day_of_the_week_in_month
        lsif = lastkday( date_time.Sunday, date_time.Feb)
        self.failUnless( gregorian.date(2002,  date_time.Feb,24) 
                         == lsif.get_date(2002))
        self.failUnless( lsif.to_string() == "M2.5.0" )
  
        firstkday = gregorian.first_day_of_the_week_in_month
        fsif = firstkday(date_time.Sunday, date_time.Feb)
        self.failUnless( gregorian.date(2002, date_time.Feb,3) 
                         == fsif.get_date(2002))
        self.failUnless( fsif.to_string() == "M2.1.0" )
        
        firstkdayafter = gregorian.first_day_of_the_week_after
        fkaf = firstkdayafter(date_time.Monday)
        self.failUnless( gregorian.date(2002, date_time.Feb,4) 
                         == fkaf.get_date( gregorian.date(2002,date_time.Feb,1)))
        self.failUnless( '2002-Feb-04' == to_simple_string( fkaf.get_date( gregorian.date(2002,date_time.Feb,1))))

        firstkdaybefore = gregorian.first_day_of_the_week_before
        fkbf = firstkdaybefore(date_time.Monday)
        self.failUnless( '2002-Feb-11' == to_simple_string(fkaf.get_date(gregorian.date(2002,date_time.Feb,10))))
        self.failUnless( gregorian.date(2002,date_time.Feb,4) 
                         == fkbf.get_date(gregorian.date(2002,date_time.Feb,10)))
        
        nthkdayofmonth = gregorian.nth_day_of_the_week_in_month;
        nkd1 = nthkdayofmonth(nthkdayofmonth.third, date_time.Sunday, date_time.Jul)

        self.failUnless( gregorian.date(1969, date_time.Jul, 20) == nkd1.get_date(1969))
        self.failUnless( nkd1.to_string() == "M7.3.0" )

        saturday = gregorian.date(2003,date_time.Feb,8)
        sund = gregorian.greg_weekday(date_time.Sunday)
        self.failUnless( gregorian.days_until_weekday(saturday, sund) == gregorian.days(1))
        self.failUnless( gregorian.days_before_weekday(saturday, sund) == gregorian.days(6))
        self.failUnless( gregorian.next_weekday(saturday, sund)== gregorian.date(2003,date_time.Feb,9))
        self.failUnless( gregorian.previous_weekday(saturday, sund)== gregorian.date(2003,date_time.Feb,2))
示例#2
0
print 'weekstart: ', to_simple_string(weekstart)

weekend = weekstart + gregorian.weeks(1)
print 'weekend: ', to_simple_string(weekend)

today = gregorian.day_clock.local_day()
d2 = weekstart + gregorian.days(5)
if d2 >= today:  #comparison operator
    pass

thisWeek = gregorian.date_period(today, d2)
if thisWeek.contains(today):
    pass

#date generator functions
d5 = gregorian.next_weekday(today, date_time.Sunday)
#calculate Sunday following d4
print 'd5: ', to_simple_string(d5)

#US labor day is first Monday in Sept
first = gregorian.nth_day_of_the_week_in_month.first
labor_day = gregorian.nth_day_of_the_week_in_month(first, date_time.Monday,
                                                   date_time.Sep)
#calculate a specific date for 2004 from functor
print 'labor day 2004: ', to_simple_string(labor_day.get_date(2004))

#Time programming:
d = gregorian.date(2002, date_time.Feb, 1)  #an arbitrary date
t1 = posix_time.ptime(d,
                      posix_time.hours(5) + posix_time.millisec(100))
#date + time of day offset
示例#3
0
print "weekstart: ", to_simple_string(weekstart)

weekend = weekstart + gregorian.weeks(1)
print "weekend: ", to_simple_string(weekend)

today = gregorian.day_clock.local_day()
d2 = weekstart + gregorian.days(5)
if d2 >= today:  # comparison operator
    pass

thisWeek = gregorian.date_period(today, d2)
if thisWeek.contains(today):
    pass

# date generator functions
d5 = gregorian.next_weekday(today, date_time.Sunday)
# calculate Sunday following d4
print "d5: ", to_simple_string(d5)

# US labor day is first Monday in Sept
first = gregorian.nth_day_of_the_week_in_month.first
labor_day = gregorian.nth_day_of_the_week_in_month(first, date_time.Monday, date_time.Sep)
# calculate a specific date for 2004 from functor
print "labor day 2004: ", to_simple_string(labor_day.get_date(2004))

# Time programming:
d = gregorian.date(2002, date_time.Feb, 1)  # an arbitrary date
t1 = posix_time.ptime(d, posix_time.hours(5) + posix_time.millisec(100))
# date + time of day offset
print "t1: ", to_simple_string(t1)
示例#4
0
    def test_generators(self):
        pd1 = gregorian.partial_date(1, date_time.Jan)
        d = pd1.get_date(2000)
        self.failUnless(pd1.to_string() == "0")
        self.failUnless(gregorian.date(2000, 1, 1) == d)

        pd2 = gregorian.partial_date(1, date_time.Feb)

        self.failUnless(pd1 == pd1)
        self.failUnless(not (pd1 == pd2))
        self.failUnless(not (pd2 == pd1))
        self.failUnless(not (pd1 < pd1))
        self.failUnless(pd1 < pd2)
        self.failUnless(not (pd2 < pd1))

        lastkday = gregorian.last_day_of_the_week_in_month
        lsif = lastkday(date_time.Sunday, date_time.Feb)
        self.failUnless(
            gregorian.date(2002, date_time.Feb, 24) == lsif.get_date(2002))
        self.failUnless(lsif.to_string() == "M2.5.0")

        firstkday = gregorian.first_day_of_the_week_in_month
        fsif = firstkday(date_time.Sunday, date_time.Feb)
        self.failUnless(
            gregorian.date(2002, date_time.Feb, 3) == fsif.get_date(2002))
        self.failUnless(fsif.to_string() == "M2.1.0")

        firstkdayafter = gregorian.first_day_of_the_week_after
        fkaf = firstkdayafter(date_time.Monday)
        self.failUnless(
            gregorian.date(2002, date_time.Feb, 4) == fkaf.get_date(
                gregorian.date(2002, date_time.Feb, 1)))
        self.failUnless('2002-Feb-04' == to_simple_string(
            fkaf.get_date(gregorian.date(2002, date_time.Feb, 1))))

        firstkdaybefore = gregorian.first_day_of_the_week_before
        fkbf = firstkdaybefore(date_time.Monday)
        self.failUnless('2002-Feb-11' == to_simple_string(
            fkaf.get_date(gregorian.date(2002, date_time.Feb, 10))))
        self.failUnless(
            gregorian.date(2002, date_time.Feb, 4) == fkbf.get_date(
                gregorian.date(2002, date_time.Feb, 10)))

        nthkdayofmonth = gregorian.nth_day_of_the_week_in_month
        nkd1 = nthkdayofmonth(nthkdayofmonth.third, date_time.Sunday,
                              date_time.Jul)

        self.failUnless(
            gregorian.date(1969, date_time.Jul, 20) == nkd1.get_date(1969))
        self.failUnless(nkd1.to_string() == "M7.3.0")

        saturday = gregorian.date(2003, date_time.Feb, 8)
        sund = gregorian.greg_weekday(date_time.Sunday)
        self.failUnless(
            gregorian.days_until_weekday(saturday, sund) == gregorian.days(1))
        self.failUnless(
            gregorian.days_before_weekday(saturday, sund) == gregorian.days(6))
        self.failUnless(
            gregorian.next_weekday(saturday, sund) == gregorian.date(
                2003, date_time.Feb, 9))
        self.failUnless(
            gregorian.previous_weekday(saturday, sund) == gregorian.date(
                2003, date_time.Feb, 2))