1
2 """
3 Test parsing of strings that are phrases with the
4 ptc.StartTimeFromSourceTime flag set to True
5 """
6
7 import unittest, time, datetime
8 import parsedatetime as pdt
9
10 -class test(unittest.TestCase):
11
12 @pdt.tests.assertEqualWithComparator
15
17 self.cal = pdt.Calendar()
18 self.cal.ptc.StartTimeFromSourceTime = True
19 self.yr, self.mth, self.dy, self.hr, self.mn, self.sec, self.wd, self.yd, self.isdst = time.localtime()
20
22 s = datetime.datetime.now()
23
24
25
26
27 (yr, mth, dy, hr, mn, sec, _, _, _) = s.timetuple()
28
29 m = mth
30 mth += 1
31 if mth > 12:
32 mth = 1
33 yr += 1
34
35 s = datetime.datetime(yr, m, dy, 13, 14, 15)
36 t = datetime.datetime(yr, mth, 1, 13, 14, 15) + datetime.timedelta(days=-1)
37
38 start = s.timetuple()
39 target = t.timetuple()
40
41 self.assertExpectedResult(self.cal.parse('eom', start), (target, 2))
42 self.assertExpectedResult(self.cal.parse('meeting eom', start), (target, 2))
43
44 s = datetime.datetime.now()
45
46 (yr, mth, dy, hr, mn, sec, wd, yd, isdst) = s.timetuple()
47
48 s = datetime.datetime(yr, mth, 1, 13, 14, 15)
49 t = datetime.datetime(yr, 12, 31, 13, 14, 15)
50
51 start = s.timetuple()
52 target = t.timetuple()
53
54 self.assertExpectedResult(self.cal.parse('eoy', start), (target, 2))
55 self.assertExpectedResult(self.cal.parse('meeting eoy', start), (target, 2))
56