def test_fetch(self): """Test if it parses a set of log files""" backend = Supybot('http://example.com/', self.tmp_path) messages = [m for m in backend.fetch()] expected = [('benpol', 'comment', '86cd62e954f3c81f2efd336b163b673419e722c4', 1350465381.0), ('benpol', 'comment', 'c3d38be79806e98b50d308f4fdf078ed89aef68c', 1350465389.0), ('benpol', 'comment', '7f68a35c1515a82e2731312eb38b07b7d62f66a0', 1350465395.0), ('MikeMcClurg', 'server', '175bf289ff1340275b358dad90887e031628942d', 1350465410.0), ('Tv_', 'server', '1952a9ee3b87144f608aa2a84271ff7d6871e1c8', 1350465411.0), ('benpol', 'comment', '17730fed09f82ea9d0a770ec6167df5a9ea9060c', 1350465447.0), ('benpol', 'comment', '6d1b61c2839218c170c9bd775edcb02caaf921f5', 1350465460.0), ('Tv_', 'comment', '395fa8fb2e6aafa8f3618746dcc56f2fdfe35eac', 1350465528.0), ('jamespage', 'comment', '056408f3064b80e69490fd65ff0d066431592b0f', 1350552630.0), ('LarsFronius_', 'server', '319701fa6768a935d08ae5d5afb2d058122030d4', 1350552630.0), ('bchrisman', 'server', '291faf2760c39f672e9900d509908e77153e930a', 1350552658.0), ('scuttlemonkey', 'comment', '768843f086ef41b2346eff72c8f2935b0e23148c', 1350552785.0), ('loicd', 'server', 'f4cdf0c9c3219d5931f704438d85a7665ad6d99e', 1350584011.0), ('sagelap1', 'server', 'ac3dd25dbcaf068f061a20263140a34cb354950d', 1350584041.0), ('guyfry', 'comment', 'cdd33f7c0f436b6f5299b969f27932a5454d15bb', 1350588930.0), ('guyfry', 'comment', '4d055dc4d487c3860391a2bf8b08ce48d97b11ca', 1350588930.0)] self.assertEqual(len(messages), len(expected)) for x in range(len(messages)): message = messages[x] self.assertEqual(message['data']['nick'], expected[x][0]) self.assertEqual(message['data']['type'], expected[x][1]) self.assertEqual(message['origin'], 'http://example.com/') self.assertEqual(message['uuid'], expected[x][2]) self.assertEqual(message['updated_on'], expected[x][3]) self.assertEqual(message['category'], 'message') self.assertEqual(message['tag'], 'http://example.com/')
def test_fetch_from_date(self): """Test whether a list of messages is returned since a given date""" from_date = datetime.datetime(2012, 10, 18, 9, 33, 5) backend = Supybot('http://example.com/', self.tmp_path) messages = [m for m in backend.fetch(from_date=from_date)] expected = [('scuttlemonkey', 'comment', '768843f086ef41b2346eff72c8f2935b0e23148c', 1350552785.0), ('loicd', 'server', 'f4cdf0c9c3219d5931f704438d85a7665ad6d99e', 1350584011.0), ('sagelap1', 'server', 'ac3dd25dbcaf068f061a20263140a34cb354950d', 1350584041.0), ('guyfry', 'comment', 'cdd33f7c0f436b6f5299b969f27932a5454d15bb', 1350588930.0), ('guyfry', 'comment', '4d055dc4d487c3860391a2bf8b08ce48d97b11ca', 1350588930.0)] for x in range(len(messages)): message = messages[x] self.assertEqual(message['data']['nick'], expected[x][0]) self.assertEqual(message['data']['type'], expected[x][1]) self.assertEqual(message['origin'], 'http://example.com/') self.assertEqual(message['uuid'], expected[x][2]) self.assertEqual(message['updated_on'], expected[x][3]) self.assertEqual(message['category'], 'message') self.assertEqual(message['tag'], 'http://example.com/')
def test_search_fields(self): """Test whether the search_fields is properly set""" backend = Supybot('http://example.com/', self.tmp_path) messages = [m for m in backend.fetch()] message = messages[0] self.assertEqual(backend.metadata_id(message['data']), message['search_fields']['item_id']) message = messages[1] self.assertEqual(backend.metadata_id(message['data']), message['search_fields']['item_id']) message = messages[2] self.assertEqual(backend.metadata_id(message['data']), message['search_fields']['item_id']) message = messages[3] self.assertEqual(backend.metadata_id(message['data']), message['search_fields']['item_id'])