/
testsuite.py
77 lines (58 loc) · 2.47 KB
/
testsuite.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
"""
A test suite for various parts of whazzup.
"""
import dbqueue, dbimpl, feedlib
import unittest
# ===========================================================================
# QUEUE
class QueueTest(unittest.TestCase):
def test_very_basic(self):
dbimpl.mqueue.send("foo bar")
self.assertEqual(dbqueue.recv_mqueue.get_next_message(), "foo bar")
def test_filling_up_queue(self):
for ix in range(50):
dbimpl.mqueue.send("foo %s" % ix)
for ix in range(50):
msg = dbqueue.recv_mqueue.get_next_message()
if not msg:
# this means that some messages are stuck in the sending queue.
# need to send another message to flush them out.
dbimpl.mqueue.send("flush")
msg = dbqueue.recv_mqueue.get_next_message()
self.assertEqual(msg, "foo %s" % ix)
msg = dbqueue.recv_mqueue.get_next_message()
while msg:
self.assertEqual(msg, "flush")
msg = dbqueue.recv_mqueue.get_next_message()
def test_priority(self):
dbimpl.mqueue.send("low priority")
dbimpl.mqueue.send("high priority", 2)
self.assertEqual(dbqueue.recv_mqueue.get_next_message(),
"high priority")
self.assertEqual(dbqueue.recv_mqueue.get_next_message(),
"low priority")
# ===========================================================================
# DATE PARSING
class DateParsingTest(unittest.TestCase):
# FIXME: this one doesn't work
def _test_format_1(self):
str = "Sun Jan 16 15:55:53 UTC 2011"
date = feedlib.parse_date(str)
print date
def test_format_2(self):
date = feedlib.parse_date("Sun, 16 January 2011 07:13:33")
self.assertEqual(str(date), '2011-01-16 07:13:33')
# FIXME: gets the seconds wrong, incredibly
def _test_format_3(self):
date = feedlib.parse_date('Sat, 22 Oct 2011 08:22:53 +0000')
self.assertEqual(str(date), '2011-10-22 08:22:53')
def test_format_4(self):
date = feedlib.parse_date('2011-10-13T22:09:45.314+02:00')
self.assertEqual(str(date), '2011-10-13 22:09:45')
def test_format_5(self):
date = feedlib.parse_date('2011-10-21T17:30:00Z')
self.assertEqual(str(date), '2011-10-21 17:30:00')
# ===========================================================================
# MAIN
if __name__ == '__main__':
unittest.main()