7 return [(rschema.type, x) for rschema, tschemas, x in AEF.erelations_by_category(entity, category)] |
7 return [(rschema.type, x) for rschema, tschemas, x in AEF.erelations_by_category(entity, category)] |
8 |
8 |
9 class AutomaticEntityFormTC(EnvBasedTC): |
9 class AutomaticEntityFormTC(EnvBasedTC): |
10 |
10 |
11 def test_custom_widget(self): |
11 def test_custom_widget(self): |
12 AEF.rwidgets.set_rtag(AutoCompletionWidget, 'login', 'subject', 'EUser') |
12 AEF.rwidgets.set_rtag(AutoCompletionWidget, 'login', 'subject', 'CWUser') |
13 form = self.vreg.select_object('forms', 'edition', self.request(), None, |
13 form = self.vreg.select_object('forms', 'edition', self.request(), None, |
14 entity=self.user()) |
14 entity=self.user()) |
15 field = form.field_by_name('login') |
15 field = form.field_by_name('login') |
16 self.assertIsInstance(field.widget, AutoCompletionWidget) |
16 self.assertIsInstance(field.widget, AutoCompletionWidget) |
17 AEF.rwidgets.del_rtag('login', 'subject', 'EUser') |
17 AEF.rwidgets.del_rtag('login', 'subject', 'CWUser') |
18 |
18 |
19 |
19 |
20 def test_euser_relations_by_category(self): |
20 def test_euser_relations_by_category(self): |
21 #for (rtype, role, stype, otype), tag in AEF.rcategories._tagdefs.items(): |
21 #for (rtype, role, stype, otype), tag in AEF.rcategories._tagdefs.items(): |
22 # if rtype == 'tags': |
22 # if rtype == 'tags': |
23 # print rtype, role, stype, otype, ':', tag |
23 # print rtype, role, stype, otype, ':', tag |
24 e = self.etype_instance('EUser') |
24 e = self.etype_instance('CWUser') |
25 # see custom configuration in views.euser |
25 # see custom configuration in views.euser |
26 self.assertEquals(rbc(e, 'primary'), |
26 self.assertEquals(rbc(e, 'primary'), |
27 [('login', 'subject'), |
27 [('login', 'subject'), |
28 ('upassword', 'subject'), |
28 ('upassword', 'subject'), |
29 ('in_group', 'subject'), |
29 ('in_group', 'subject'), |
46 [('primary_email', 'subject'), |
46 [('primary_email', 'subject'), |
47 ('use_email', 'subject'), |
47 ('use_email', 'subject'), |
48 ('connait', 'subject'), |
48 ('connait', 'subject'), |
49 ('checked_by', 'object'), |
49 ('checked_by', 'object'), |
50 ]) |
50 ]) |
51 # owned_by is defined both as subject and object relations on EUser |
51 # owned_by is defined both as subject and object relations on CWUser |
52 self.assertListEquals(rbc(e, 'generated'), |
52 self.assertListEquals(rbc(e, 'generated'), |
53 [('has_text', 'subject'), |
53 [('has_text', 'subject'), |
54 ('identity', 'subject'), |
54 ('identity', 'subject'), |
55 ('is', 'subject'), |
55 ('is', 'subject'), |
56 ('is_instance_of', 'subject'), |
56 ('is_instance_of', 'subject'), |
61 ('owned_by', 'object'), |
61 ('owned_by', 'object'), |
62 ('identity', 'object'), |
62 ('identity', 'object'), |
63 ]) |
63 ]) |
64 |
64 |
65 def test_inlined_view(self): |
65 def test_inlined_view(self): |
66 self.failUnless(AEF.rinlined.etype_rtag('EUser', 'use_email', 'subject')) |
66 self.failUnless(AEF.rinlined.etype_rtag('CWUser', 'use_email', 'subject')) |
67 self.failIf(AEF.rinlined.etype_rtag('EUser', 'primary_email', 'subject')) |
67 self.failIf(AEF.rinlined.etype_rtag('CWUser', 'primary_email', 'subject')) |
68 |
68 |
69 def test_personne_relations_by_category(self): |
69 def test_personne_relations_by_category(self): |
70 e = self.etype_instance('Personne') |
70 e = self.etype_instance('Personne') |
71 self.assertListEquals(rbc(e, 'primary'), |
71 self.assertListEquals(rbc(e, 'primary'), |
72 [('nom', 'subject'), |
72 [('nom', 'subject'), |
103 ('is_instance_of', 'subject'), |
103 ('is_instance_of', 'subject'), |
104 ('identity', 'object'), |
104 ('identity', 'object'), |
105 ]) |
105 ]) |
106 |
106 |
107 def test_edition_form(self): |
107 def test_edition_form(self): |
108 rset = self.execute('EUser X LIMIT 1') |
108 rset = self.execute('CWUser X LIMIT 1') |
109 form = self.vreg.select_object('forms', 'edition', rset.req, rset, |
109 form = self.vreg.select_object('forms', 'edition', rset.req, rset, |
110 row=0, col=0) |
110 row=0, col=0) |
111 # should be also selectable by specifying entity |
111 # should be also selectable by specifying entity |
112 self.vreg.select_object('forms', 'edition', self.request(), None, |
112 self.vreg.select_object('forms', 'edition', self.request(), None, |
113 entity=rset.get_entity(0, 0)) |
113 entity=rset.get_entity(0, 0)) |
114 self.failIf(any(f for f in form.fields if f is None)) |
114 self.failIf(any(f for f in form.fields if f is None)) |
115 |
115 |
116 |
116 |
117 class FormViewsTC(WebTest): |
117 class FormViewsTC(WebTest): |
118 def test_delete_conf_formview(self): |
118 def test_delete_conf_formview(self): |
119 rset = self.execute('EGroup X') |
119 rset = self.execute('CWGroup X') |
120 self.view('deleteconf', rset, template=None).source |
120 self.view('deleteconf', rset, template=None).source |
121 |
121 |
122 def test_automatic_edition_formview(self): |
122 def test_automatic_edition_formview(self): |
123 rset = self.execute('EUser X') |
123 rset = self.execute('CWUser X') |
124 self.view('edition', rset, row=0, template=None).source |
124 self.view('edition', rset, row=0, template=None).source |
125 |
125 |
126 def test_automatic_edition_formview(self): |
126 def test_automatic_edition_formview(self): |
127 rset = self.execute('EUser X') |
127 rset = self.execute('CWUser X') |
128 self.view('copy', rset, row=0, template=None).source |
128 self.view('copy', rset, row=0, template=None).source |
129 |
129 |
130 def test_automatic_creation_formview(self): |
130 def test_automatic_creation_formview(self): |
131 self.view('creation', None, etype='EUser', template=None).source |
131 self.view('creation', None, etype='CWUser', template=None).source |
132 |
132 |
133 def test_automatic_muledit_formview(self): |
133 def test_automatic_muledit_formview(self): |
134 rset = self.execute('EUser X') |
134 rset = self.execute('CWUser X') |
135 self.view('muledit', rset, template=None).source |
135 self.view('muledit', rset, template=None).source |
136 |
136 |
137 def test_automatic_reledit_formview(self): |
137 def test_automatic_reledit_formview(self): |
138 rset = self.execute('EUser X') |
138 rset = self.execute('CWUser X') |
139 self.view('reledit', rset, row=0, rtype='login', template=None).source |
139 self.view('reledit', rset, row=0, rtype='login', template=None).source |
140 |
140 |
141 def test_automatic_inline_edit_formview(self): |
141 def test_automatic_inline_edit_formview(self): |
142 geid = self.execute('EGroup X LIMIT 1')[0][0] |
142 geid = self.execute('CWGroup X LIMIT 1')[0][0] |
143 rset = self.execute('EUser X LIMIT 1') |
143 rset = self.execute('CWUser X LIMIT 1') |
144 self.view('inline-edition', rset, row=0, rtype='in_group', peid=geid, template=None).source |
144 self.view('inline-edition', rset, row=0, rtype='in_group', peid=geid, template=None).source |
145 |
145 |
146 def test_automatic_inline_creation_formview(self): |
146 def test_automatic_inline_creation_formview(self): |
147 geid = self.execute('EGroup X LIMIT 1')[0][0] |
147 geid = self.execute('CWGroup X LIMIT 1')[0][0] |
148 self.view('inline-creation', None, etype='EUser', rtype='in_group', peid=geid, template=None).source |
148 self.view('inline-creation', None, etype='CWUser', rtype='in_group', peid=geid, template=None).source |
149 |
149 |
150 |
150 |
151 if __name__ == '__main__': |
151 if __name__ == '__main__': |
152 unittest_main() |
152 unittest_main() |