39 self.assertRaises(NotFound, self.process, '123/345') |
39 self.assertRaises(NotFound, self.process, '123/345') |
40 self.assertRaises(NotFound, self.process, 'not_eid') |
40 self.assertRaises(NotFound, self.process, 'not_eid') |
41 |
41 |
42 def test_rest_path(self): |
42 def test_rest_path(self): |
43 """tests the rest path resolution""" |
43 """tests the rest path resolution""" |
44 ctrl, rset = self.process('EUser') |
44 ctrl, rset = self.process('CWUser') |
45 self.assertEquals(ctrl, 'view') |
45 self.assertEquals(ctrl, 'view') |
46 self.assertEquals(rset.description[0][0], 'EUser') |
46 self.assertEquals(rset.description[0][0], 'CWUser') |
47 self.assertEquals(rset.printable_rql(), |
47 self.assertEquals(rset.printable_rql(), |
48 "Any X,AA,AB,AC,AD ORDERBY AA WHERE X is EUser, X login AA, X firstname AB, X surname AC, X modification_date AD") |
48 "Any X,AA,AB,AC,AD ORDERBY AA WHERE X is CWUser, X login AA, X firstname AB, X surname AC, X modification_date AD") |
49 ctrl, rset = self.process('EUser/login/admin') |
49 ctrl, rset = self.process('CWUser/login/admin') |
50 self.assertEquals(ctrl, 'view') |
50 self.assertEquals(ctrl, 'view') |
51 self.assertEquals(len(rset), 1) |
51 self.assertEquals(len(rset), 1) |
52 self.assertEquals(rset.description[0][0], 'EUser') |
52 self.assertEquals(rset.description[0][0], 'CWUser') |
53 self.assertEquals(rset.printable_rql(), 'Any X WHERE X is EUser, X login "admin"') |
53 self.assertEquals(rset.printable_rql(), 'Any X WHERE X is CWUser, X login "admin"') |
54 ctrl, rset = self.process('euser/admin') |
54 ctrl, rset = self.process('euser/admin') |
55 self.assertEquals(ctrl, 'view') |
55 self.assertEquals(ctrl, 'view') |
56 self.assertEquals(len(rset), 1) |
56 self.assertEquals(len(rset), 1) |
57 self.assertEquals(rset.description[0][0], 'EUser') |
57 self.assertEquals(rset.description[0][0], 'CWUser') |
58 self.assertEquals(rset.printable_rql(), 'Any X WHERE X is EUser, X login "admin"') |
58 self.assertEquals(rset.printable_rql(), 'Any X WHERE X is CWUser, X login "admin"') |
59 ctrl, rset = self.process('euser/eid/%s'%rset[0][0]) |
59 ctrl, rset = self.process('euser/eid/%s'%rset[0][0]) |
60 self.assertEquals(ctrl, 'view') |
60 self.assertEquals(ctrl, 'view') |
61 self.assertEquals(len(rset), 1) |
61 self.assertEquals(len(rset), 1) |
62 self.assertEquals(rset.description[0][0], 'EUser') |
62 self.assertEquals(rset.description[0][0], 'CWUser') |
63 self.assertEquals(rset.printable_rql(), 'Any X WHERE X is EUser, X eid 5') |
63 self.assertEquals(rset.printable_rql(), 'Any X WHERE X is CWUser, X eid 5') |
64 # test non-ascii paths |
64 # test non-ascii paths |
65 ctrl, rset = self.process('EUser/login/%C3%BFsa%C3%BFe') |
65 ctrl, rset = self.process('CWUser/login/%C3%BFsa%C3%BFe') |
66 self.assertEquals(ctrl, 'view') |
66 self.assertEquals(ctrl, 'view') |
67 self.assertEquals(len(rset), 1) |
67 self.assertEquals(len(rset), 1) |
68 self.assertEquals(rset.description[0][0], 'EUser') |
68 self.assertEquals(rset.description[0][0], 'CWUser') |
69 self.assertEquals(rset.printable_rql(), u'Any X WHERE X is EUser, X login "ÿsaÿe"') |
69 self.assertEquals(rset.printable_rql(), u'Any X WHERE X is CWUser, X login "ÿsaÿe"') |
70 # test quoted paths |
70 # test quoted paths |
71 ctrl, rset = self.process('BlogEntry/title/hell%27o') |
71 ctrl, rset = self.process('BlogEntry/title/hell%27o') |
72 self.assertEquals(ctrl, 'view') |
72 self.assertEquals(ctrl, 'view') |
73 self.assertEquals(len(rset), 1) |
73 self.assertEquals(len(rset), 1) |
74 self.assertEquals(rset.description[0][0], 'BlogEntry') |
74 self.assertEquals(rset.description[0][0], 'BlogEntry') |
75 self.assertEquals(rset.printable_rql(), u'Any X WHERE X is BlogEntry, X title "hell\'o"') |
75 self.assertEquals(rset.printable_rql(), u'Any X WHERE X is BlogEntry, X title "hell\'o"') |
76 # errors |
76 # errors |
77 self.assertRaises(NotFound, self.process, 'EUser/eid/30000') |
77 self.assertRaises(NotFound, self.process, 'CWUser/eid/30000') |
78 self.assertRaises(NotFound, self.process, 'Workcases') |
78 self.assertRaises(NotFound, self.process, 'Workcases') |
79 self.assertRaises(NotFound, self.process, 'EUser/inexistant_attribute/joe') |
79 self.assertRaises(NotFound, self.process, 'CWUser/inexistant_attribute/joe') |
80 |
80 |
81 def test_action_path(self): |
81 def test_action_path(self): |
82 """tests the action path resolution""" |
82 """tests the action path resolution""" |
83 self.assertRaises(Redirect, self.process, '1/edit') |
83 self.assertRaises(Redirect, self.process, '1/edit') |
84 self.assertRaises(Redirect, self.process, 'Tag/name/yo/edit') |
84 self.assertRaises(Redirect, self.process, 'Tag/name/yo/edit') |
85 self.assertRaises(Redirect, self.process, 'Tag/yo/edit') |
85 self.assertRaises(Redirect, self.process, 'Tag/yo/edit') |
86 self.assertRaises(NotFound, self.process, 'view/edit') |
86 self.assertRaises(NotFound, self.process, 'view/edit') |
87 self.assertRaises(NotFound, self.process, '1/non_action') |
87 self.assertRaises(NotFound, self.process, '1/non_action') |
88 self.assertRaises(NotFound, self.process, 'EUser/login/admin/non_action') |
88 self.assertRaises(NotFound, self.process, 'CWUser/login/admin/non_action') |
89 |
89 |
90 |
90 |
91 def test_regexp_path(self): |
91 def test_regexp_path(self): |
92 """tests the regexp path resolution""" |
92 """tests the regexp path resolution""" |
93 ctrl, rset = self.process('add/Task') |
93 ctrl, rset = self.process('add/Task') |