def time_conv_out(timeTuple): if timeTuple is None: return None if len(timeTuple) != 4: return mxDT.Time(*timeTuple) else: (hour, minute, second, micros) = timeTuple secondsFrac = second + micros / 1000000.0 return mxDT.Time(hour, minute, secondsFrac)
def _get_dates_ds(self): ds = Dataset('dates_and_times') ds.addcolumnfromseq('a', label='Date 1', datatype='date', data=[DateTime.Date(1956,4,23), DateTime.Date(2003,9,30), DateTime.Date(2002,3,1), DateTime.Date(2000,6,21), DateTime.Date(2009,5,27), DateTime.Date(3003,9,11), DateTime.Date(1903,4,2), DateTime.Date(1803,9,9), DateTime.Date(1803,9,9), DateTime.Date(103,9,29)]) ds.addcolumnfromseq('b', label='Time 1', datatype='time', data=[DateTime.Time(1,4,23.1), DateTime.Time(20,9,30.2), DateTime.Time(8,3,1.3), DateTime.Time(18,6,21.44), DateTime.Time(0,0,0.0), DateTime.Time(12,9,11.5), DateTime.Time(19,4,2), DateTime.Time(18,9,9.789876353663554648477647863563), DateTime.Time(18,9,9), DateTime.Time(23,59,59.9999999999999999999999)]) ds.addcolumnfromseq('c', label='Datetime 1', datatype='datetime', data=[DateTime.DateTime(1956,4,23,23,59,59.9999999999999999999999), DateTime.DateTime(2003,9,30,18,9,9), DateTime.DateTime(2002,3,1,18,9,9.789876353663554648477647863563), DateTime.DateTime(2000,6,21,19,4,2), DateTime.DateTime(2009,5,27,12,9,11.5), DateTime.DateTime(3003,9,11,0,0,0.0), DateTime.DateTime(1903,4,2,18,6,21.44), DateTime.DateTime(1803,9,9,8,3,1.3), DateTime.DateTime(1803,9,9,20,9,30.2), DateTime.DateTime(103,9,29,1,4,23.1)]) return ds
def from_time(buf): seconds = round(unpack_time(buf) / pgtype.usec_mul, 2) return DateTime.Time(seconds=seconds)
def runTest(self): self.roundtrip(None) self.both(DateTime.Time(15,9,32.23)) self.both(DateTime.Time(0,0,0.0)) self.both(DateTime.Time(23,59,59.99))