def resolve_time_against_constraint(timex, constraint): t = Time(timex.hour, timex.minute, timex.second) if constraint.start.get_time() <= t.get_time( ) < constraint.end.get_time(): return [timex.timex_value()] return []
def resolve_timerage(timex: Timex, constraints: [TimeRange]): candidate = TimexHelpers.timerange_from_timex(timex) result = [] for contraint in constraints: if candidate.is_overlapping(contraint): start = max(candidate.start.get_time(), contraint.start.get_time()) time = Time.from_seconds(start) resolved = copy.copy(timex) resolved.part_of_day = None resolved.seconds = None resolved.minutes = None resolved.hours = None resolved.second = time.second resolved.minute = time.minute resolved.hour = time.hour result.append(resolved.timex_value()) return result
def test_datatypes_helpers_timefromtimex(): timex = Timex(timex='T00:05:00') time = TimexHelpers.time_from_timex(timex) assert time.get_time() == Time(0, 5, 0).get_time()
def test_datatypes_time_constructor(): time = Time(23, 45, 32) assert time.hour is 23 assert time.minute is 45 assert time.second is 32
def test_datatypes_time_gettime(): time = Time(23, 45, 32) assert time.get_time() == 85532000
def test_datatypes_timex_fromtime(): assert Timex.from_time(Time(23, 59, 30)).timex_value() == 'T23:59:30'