20 # parse_message_id should work with or without surrounding <> |
20 # parse_message_id should work with or without surrounding <> |
21 self.failUnlessEqual(values, parse_message_id(msgid1[1:-1], 'testapp')) |
21 self.failUnlessEqual(values, parse_message_id(msgid1[1:-1], 'testapp')) |
22 self.failUnlessEqual(values['eid'], '21') |
22 self.failUnlessEqual(values['eid'], '21') |
23 self.failUnless('timestamp' in values) |
23 self.failUnless('timestamp' in values) |
24 self.failUnlessEqual(parse_message_id(msgid1[1:-1], 'anotherapp'), None) |
24 self.failUnlessEqual(parse_message_id(msgid1[1:-1], 'anotherapp'), None) |
25 |
25 |
26 def test_notimestamp(self): |
26 def test_notimestamp(self): |
27 msgid1 = construct_message_id('testapp', 21, False) |
27 msgid1 = construct_message_id('testapp', 21, False) |
28 msgid2 = construct_message_id('testapp', 21, False) |
28 msgid2 = construct_message_id('testapp', 21, False) |
29 values = parse_message_id(msgid1, 'testapp') |
29 values = parse_message_id(msgid1, 'testapp') |
30 self.failUnlessEqual(values, {'eid': '21'}) |
30 self.failUnlessEqual(values, {'eid': '21'}) |
37 |
37 |
38 def test_nonregr_empty_message_id(self): |
38 def test_nonregr_empty_message_id(self): |
39 for eid in (1, 12, 123, 1234): |
39 for eid in (1, 12, 123, 1234): |
40 msgid1 = construct_message_id('testapp', eid, 12) |
40 msgid1 = construct_message_id('testapp', eid, 12) |
41 self.assertNotEquals(msgid1, '<@testapp.%s>' % gethostname()) |
41 self.assertNotEquals(msgid1, '<@testapp.%s>' % gethostname()) |
42 |
42 |
43 |
43 |
44 class RecipientsFinderTC(EnvBasedTC): |
44 class RecipientsFinderTC(EnvBasedTC): |
45 def test(self): |
45 def test(self): |
46 urset = self.execute('CWUser X WHERE X login "admin"') |
46 urset = self.execute('CWUser X WHERE X login "admin"') |
47 self.execute('INSERT EmailAddress X: X address "admin@logilab.fr", U primary_email X ' |
47 self.execute('INSERT EmailAddress X: X address "admin@logilab.fr", U primary_email X ' |
55 self.set_option('default-recipients-mode', 'users') |
55 self.set_option('default-recipients-mode', 'users') |
56 self.assertEquals(finder.recipients(), [(u'admin@logilab.fr', 'fr')]) |
56 self.assertEquals(finder.recipients(), [(u'admin@logilab.fr', 'fr')]) |
57 self.set_option('default-recipients-mode', 'default-dest-addrs') |
57 self.set_option('default-recipients-mode', 'default-dest-addrs') |
58 self.set_option('default-dest-addrs', 'abcd@logilab.fr, efgh@logilab.fr') |
58 self.set_option('default-dest-addrs', 'abcd@logilab.fr, efgh@logilab.fr') |
59 self.assertEquals(finder.recipients(), [('abcd@logilab.fr', 'en'), ('efgh@logilab.fr', 'en')]) |
59 self.assertEquals(finder.recipients(), [('abcd@logilab.fr', 'en'), ('efgh@logilab.fr', 'en')]) |
60 |
60 |
61 |
61 |
62 class StatusChangeViewsTC(EnvBasedTC): |
62 class StatusChangeViewsTC(EnvBasedTC): |
63 |
63 |
64 def test_status_change_view(self): |
64 def test_status_change_view(self): |
65 req = self.session() |
65 req = self.session() |
66 u = self.create_user('toto', req=req) |
66 u = self.create_user('toto', req=req) |
67 assert u.req |
67 assert u.req |
68 self.execute('SET X in_state S WHERE X eid %s, S name "deactivated"' % u.eid) |
68 self.execute('SET X in_state S WHERE X eid %s, S name "deactivated"' % u.eid) |
69 v = self.vreg.select_view('notif_status_change', req, u.rset, row=0) |
69 v = self.vreg.select_view('notif_status_change', req, u.rset, row=0) |
70 content = v.dispatch(row=0, comment='yeah', |
70 content = v.render(row=0, comment='yeah', |
71 previous_state='activated', |
71 previous_state='activated', |
72 current_state='deactivated') |
72 current_state='deactivated') |
73 # remove date |
73 # remove date |
74 self.assertEquals(content, |
74 self.assertEquals(content, |
75 ''' |
75 ''' |
76 admin changed status from <activated> to <deactivated> for entity |
76 admin changed status from <activated> to <deactivated> for entity |
77 'toto' |
77 'toto' |