author | Rémi Cardona <remi.cardona@logilab.fr> |
Fri, 09 Oct 2015 17:52:14 +0200 | |
changeset 10646 | 45671fb330f5 |
parent 10411 | 4ee15441f2eb |
parent 10637 | a8b33789b982 |
child 10907 | 9ae707db5265 |
permissions | -rw-r--r-- |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
1 |
# copyright 2003-2014 LOGILAB S.A. (Paris, FRANCE), all rights reserved. |
5421
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
2 |
# contact http://www.logilab.fr/ -- mailto:contact@logilab.fr |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
3 |
# |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
4 |
# This file is part of CubicWeb. |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
5 |
# |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
6 |
# CubicWeb is free software: you can redistribute it and/or modify it under the |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
7 |
# terms of the GNU Lesser General Public License as published by the Free |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
8 |
# Software Foundation, either version 2.1 of the License, or (at your option) |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
9 |
# any later version. |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
10 |
# |
5424
8ecbcbff9777
replace logilab-common by CubicWeb in disclaimer
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
5421
diff
changeset
|
11 |
# CubicWeb is distributed in the hope that it will be useful, but WITHOUT |
5421
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
12 |
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
13 |
# FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
14 |
# details. |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
15 |
# |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
16 |
# You should have received a copy of the GNU Lesser General Public License along |
8167de96c523
proper licensing information (LGPL-2.1). Hope I get it right this time.
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4758
diff
changeset
|
17 |
# with CubicWeb. If not, see <http://www.gnu.org/licenses/>. |
3930
c0ae3148b893
fix test: required to fake parent form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
3771
diff
changeset
|
18 |
from logilab.common.testlib import unittest_main, mock_object |
3722 | 19 |
|
2773
b2530e3e0afb
[testlib] #345052 and #344207: major test lib refactoring/cleanup + update usage
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2661
diff
changeset
|
20 |
from cubicweb.devtools.testlib import CubicWebTC |
8665
e65af61bde7d
[uicfg] uicfg.py moves from web/ to web/views/ (prepares #2406609)
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
7791
diff
changeset
|
21 |
from cubicweb.web.views import uicfg |
1359 | 22 |
from cubicweb.web.formwidgets import AutoCompletionWidget |
10637
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
23 |
from cubicweb.schema import RRQLExpression |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
24 |
|
3722 | 25 |
|
4080 | 26 |
AFFK = uicfg.autoform_field_kwargs |
27 |
AFS = uicfg.autoform_section |
|
1287 | 28 |
|
4080 | 29 |
def rbc(entity, formtype, section): |
4570
ede247bbbf62
follow yams api change: attributes permissions are now defined for
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4252
diff
changeset
|
30 |
if section in ('attributes', 'metadata', 'hidden'): |
ede247bbbf62
follow yams api change: attributes permissions are now defined for
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4252
diff
changeset
|
31 |
permission = 'update' |
ede247bbbf62
follow yams api change: attributes permissions are now defined for
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4252
diff
changeset
|
32 |
else: |
ede247bbbf62
follow yams api change: attributes permissions are now defined for
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
4252
diff
changeset
|
33 |
permission = 'add' |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
34 |
return [(rschema.type, x) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
35 |
for rschema, tschemas, x in AFS.relations_by_section(entity, |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
36 |
formtype, |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
37 |
section, |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
38 |
permission)] |
1287 | 39 |
|
2773
b2530e3e0afb
[testlib] #345052 and #344207: major test lib refactoring/cleanup + update usage
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2661
diff
changeset
|
40 |
class AutomaticEntityFormTC(CubicWebTC): |
1287 | 41 |
|
1359 | 42 |
def test_custom_widget(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
43 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
44 |
AFFK.tag_subject_of(('CWUser', 'login', '*'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
45 |
{'widget': AutoCompletionWidget(autocomplete_initfunc='get_logins')}) |
10241
9d2f53777430
[web/test] fix 3.19 deprecation warning
Julien Cristau <julien.cristau@logilab.fr>
parents:
9990
diff
changeset
|
46 |
form = self.vreg['forms'].select('edition', req, entity=req.user) |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
47 |
field = form.field_by_name('login', 'subject') |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
48 |
self.assertIsInstance(field.widget, AutoCompletionWidget) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
49 |
AFFK.del_rtag('CWUser', 'login', '*', 'subject') |
1533 | 50 |
|
1359 | 51 |
|
2637
07103211e511
R [test] update and fix deprecation warnings
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2058
diff
changeset
|
52 |
def test_cwuser_relations_by_category(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
53 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
54 |
e = self.vreg['etypes'].etype_class('CWUser')(req) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
55 |
# see custom configuration in views.cwuser |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
56 |
self.assertEqual(rbc(e, 'main', 'attributes'), |
10243
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
57 |
[('login', 'subject'), |
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
58 |
('upassword', 'subject'), |
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
59 |
('firstname', 'subject'), |
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
60 |
('surname', 'subject'), |
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
61 |
('in_group', 'subject'), |
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
62 |
]) |
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
63 |
self.assertEqual(rbc(e, 'muledit', 'attributes'), |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
64 |
[('login', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
65 |
('upassword', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
66 |
('in_group', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
67 |
]) |
10243
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
68 |
self.assertCountEqual(rbc(e, 'main', 'metadata'), |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
69 |
[('last_login_time', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
70 |
('cw_source', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
71 |
('creation_date', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
72 |
('modification_date', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
73 |
('created_by', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
74 |
('owned_by', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
75 |
('bookmarked_by', 'object'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
76 |
]) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
77 |
# XXX skip 'tags' relation here and in the hidden category because |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
78 |
# of some test interdependancy when pytest is launched on whole cw |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
79 |
# (appears here while expected in hidden |
10243
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
80 |
self.assertCountEqual([x for x in rbc(e, 'main', 'relations') |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
81 |
if x != ('tags', 'object')], |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
82 |
[('connait', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
83 |
('custom_workflow', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
84 |
('primary_email', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
85 |
('checked_by', 'object'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
86 |
]) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
87 |
self.assertListEqual(rbc(e, 'main', 'inlined'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
88 |
[('use_email', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
89 |
]) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
90 |
# owned_by is defined both as subject and object relations on CWUser |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
91 |
self.assertListEqual(sorted(x for x in rbc(e, 'main', 'hidden') |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
92 |
if x != ('tags', 'object')), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
93 |
sorted([('for_user', 'object'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
94 |
('created_by', 'object'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
95 |
('wf_info_for', 'object'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
96 |
('owned_by', 'object'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
97 |
])) |
1298 | 98 |
|
99 |
def test_inlined_view(self): |
|
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
100 |
self.assertIn('main_inlined', |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
101 |
AFS.etype_get('CWUser', 'use_email', 'subject', 'EmailAddress')) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
102 |
self.assertNotIn('main_inlined', |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
103 |
AFS.etype_get('CWUser', 'primary_email', 'subject', 'EmailAddress')) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
104 |
self.assertIn('main_relations', |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
105 |
AFS.etype_get('CWUser', 'primary_email', 'subject', 'EmailAddress')) |
1533 | 106 |
|
1287 | 107 |
def test_personne_relations_by_category(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
108 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
109 |
e = self.vreg['etypes'].etype_class('Personne')(req) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
110 |
self.assertListEqual(rbc(e, 'main', 'attributes'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
111 |
[('nom', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
112 |
('prenom', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
113 |
('sexe', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
114 |
('promo', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
115 |
('titre', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
116 |
('ass', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
117 |
('web', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
118 |
('tel', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
119 |
('fax', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
120 |
('datenaiss', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
121 |
('test', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
122 |
('description', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
123 |
('salary', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
124 |
]) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
125 |
self.assertListEqual(rbc(e, 'muledit', 'attributes'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
126 |
[('nom', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
127 |
]) |
10243
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
128 |
self.assertCountEqual(rbc(e, 'main', 'metadata'), |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
129 |
[('cw_source', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
130 |
('creation_date', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
131 |
('modification_date', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
132 |
('created_by', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
133 |
('owned_by', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
134 |
]) |
10243
60789eabc3b7
[web/test] don't depend on dict iteration ordering
Julien Cristau <julien.cristau@logilab.fr>
parents:
10242
diff
changeset
|
135 |
self.assertCountEqual(rbc(e, 'main', 'relations'), |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
136 |
[('travaille', 'subject'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
137 |
('manager', 'object'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
138 |
('connait', 'object'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
139 |
]) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
140 |
self.assertListEqual(rbc(e, 'main', 'hidden'), |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
141 |
[]) |
1533 | 142 |
|
1300 | 143 |
def test_edition_form(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
144 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
145 |
rset = req.execute('CWUser X LIMIT 1') |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
146 |
form = self.vreg['forms'].select('edition', req, rset=rset, row=0, col=0) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
147 |
# should be also selectable by specifying entity |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
148 |
self.vreg['forms'].select('edition', req, entity=rset.get_entity(0, 0)) |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
149 |
self.assertFalse(any(f for f in form.fields if f is None)) |
1533 | 150 |
|
10223
fbb370195199
[web/views] Honor 'action' attribute on AutomaticEntityForm, closes #4943392
Rémi Cardona <remi.cardona@logilab.fr>
parents:
9984
diff
changeset
|
151 |
def test_edition_form_with_action(self): |
fbb370195199
[web/views] Honor 'action' attribute on AutomaticEntityForm, closes #4943392
Rémi Cardona <remi.cardona@logilab.fr>
parents:
9984
diff
changeset
|
152 |
with self.admin_access.web_request() as req: |
fbb370195199
[web/views] Honor 'action' attribute on AutomaticEntityForm, closes #4943392
Rémi Cardona <remi.cardona@logilab.fr>
parents:
9984
diff
changeset
|
153 |
rset = req.execute('CWUser X LIMIT 1') |
fbb370195199
[web/views] Honor 'action' attribute on AutomaticEntityForm, closes #4943392
Rémi Cardona <remi.cardona@logilab.fr>
parents:
9984
diff
changeset
|
154 |
form = self.vreg['forms'].select('edition', req, rset=rset, row=0, |
fbb370195199
[web/views] Honor 'action' attribute on AutomaticEntityForm, closes #4943392
Rémi Cardona <remi.cardona@logilab.fr>
parents:
9984
diff
changeset
|
155 |
col=0, action='my_custom_action') |
fbb370195199
[web/views] Honor 'action' attribute on AutomaticEntityForm, closes #4943392
Rémi Cardona <remi.cardona@logilab.fr>
parents:
9984
diff
changeset
|
156 |
self.assertEqual(form.form_action(), 'my_custom_action') |
fbb370195199
[web/views] Honor 'action' attribute on AutomaticEntityForm, closes #4943392
Rémi Cardona <remi.cardona@logilab.fr>
parents:
9984
diff
changeset
|
157 |
|
9976
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
158 |
def test_attribute_add_permissions(self): |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
159 |
# https://www.cubicweb.org/ticket/4342844 |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
160 |
with self.admin_access.repo_cnx() as cnx: |
10242
3efd572a137a
[web/test] pass login as unicode string
Julien Cristau <julien.cristau@logilab.fr>
parents:
10241
diff
changeset
|
161 |
self.create_user(cnx, u'toto') |
9976
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
162 |
cnx.commit() |
10242
3efd572a137a
[web/test] pass login as unicode string
Julien Cristau <julien.cristau@logilab.fr>
parents:
10241
diff
changeset
|
163 |
with self.new_access(u'toto').web_request() as req: |
9976
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
164 |
e = self.vreg['etypes'].etype_class('Personne')(req) |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
165 |
cform = self.vreg['forms'].select('edition', req, entity=e) |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
166 |
self.assertIn('sexe', |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
167 |
[rschema.type |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
168 |
for rschema, _ in cform.editable_attributes()]) |
10242
3efd572a137a
[web/test] pass login as unicode string
Julien Cristau <julien.cristau@logilab.fr>
parents:
10241
diff
changeset
|
169 |
with self.new_access(u'toto').repo_cnx() as cnx: |
9976
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
170 |
person_eid = cnx.create_entity('Personne', nom=u'Robert').eid |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
171 |
cnx.commit() |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
172 |
person = req.entity_from_eid(person_eid) |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
173 |
mform = self.vreg['forms'].select('edition', req, entity=person) |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
174 |
self.assertNotIn('sexe', |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
175 |
[rschema.type |
457efde98629
[views] Display attributes in entity creation form based on "add" permission
Denis Laxalde <denis.laxalde@logilab.fr>
parents:
9842
diff
changeset
|
176 |
for rschema, _ in mform.editable_attributes()]) |
1533 | 177 |
|
10634
06a43f727601
[web/views] avoid propagation of NoSelectableObject in some case of inlined relations / permissions
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10386
diff
changeset
|
178 |
def test_inlined_relations(self): |
06a43f727601
[web/views] avoid propagation of NoSelectableObject in some case of inlined relations / permissions
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10386
diff
changeset
|
179 |
with self.admin_access.web_request() as req: |
06a43f727601
[web/views] avoid propagation of NoSelectableObject in some case of inlined relations / permissions
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10386
diff
changeset
|
180 |
with self.temporary_permissions(EmailAddress={'add': ()}): |
06a43f727601
[web/views] avoid propagation of NoSelectableObject in some case of inlined relations / permissions
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10386
diff
changeset
|
181 |
autoform = self.vreg['forms'].select('edition', req, entity=req.user) |
06a43f727601
[web/views] avoid propagation of NoSelectableObject in some case of inlined relations / permissions
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10386
diff
changeset
|
182 |
self.assertEqual(list(autoform.inlined_form_views()), []) |
06a43f727601
[web/views] avoid propagation of NoSelectableObject in some case of inlined relations / permissions
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10386
diff
changeset
|
183 |
|
10637
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
184 |
def test_check_inlined_rdef_permissions(self): |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
185 |
# try to check permissions when creating an entity ('user' below is a |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
186 |
# fresh entity without an eid) |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
187 |
with self.admin_access.web_request() as req: |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
188 |
ttype = 'EmailAddress' |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
189 |
rschema = self.schema['use_email'] |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
190 |
rdef = rschema.rdefs[('CWUser', ttype)] |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
191 |
tschema = self.schema[ttype] |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
192 |
role = 'subject' |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
193 |
with self.temporary_permissions((rdef, {'add': ()})): |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
194 |
user = self.vreg['etypes'].etype_class('CWUser')(req) |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
195 |
autoform = self.vreg['forms'].select('edition', req, entity=user) |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
196 |
self.assertFalse(autoform.check_inlined_rdef_permissions(rschema, role, |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
197 |
tschema, ttype)) |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
198 |
# we actually don't care about the actual expression, |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
199 |
# may_have_permission only checks the presence of such expressions |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
200 |
expr = RRQLExpression('S use_email O') |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
201 |
with self.temporary_permissions((rdef, {'add': (expr,)})): |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
202 |
user = self.vreg['etypes'].etype_class('CWUser')(req) |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
203 |
autoform = self.vreg['forms'].select('edition', req, entity=user) |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
204 |
self.assertTrue(autoform.check_inlined_rdef_permissions(rschema, role, |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
205 |
tschema, ttype)) |
a8b33789b982
[autoform] fix appearance of link to add inlined creation form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
10634
diff
changeset
|
206 |
|
1533 | 207 |
|
2773
b2530e3e0afb
[testlib] #345052 and #344207: major test lib refactoring/cleanup + update usage
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2661
diff
changeset
|
208 |
class FormViewsTC(CubicWebTC): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
209 |
|
1300 | 210 |
def test_delete_conf_formview(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
211 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
212 |
rset = req.execute('CWGroup X') |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
213 |
self.view('deleteconf', rset, template=None, req=req).source |
1533 | 214 |
|
1300 | 215 |
def test_automatic_edition_formview(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
216 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
217 |
rset = req.execute('CWUser X') |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
218 |
self.view('edition', rset, row=0, template=None, req=req).source |
1533 | 219 |
|
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
220 |
def test_automatic_edition_copyformview(self): |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
221 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
222 |
rset = req.execute('CWUser X') |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
223 |
self.view('copy', rset, row=0, template=None, req=req).source |
1533 | 224 |
|
1300 | 225 |
def test_automatic_creation_formview(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
226 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
227 |
self.view('creation', None, etype='CWUser', template=None, req=req).source |
1533 | 228 |
|
1300 | 229 |
def test_automatic_muledit_formview(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
230 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
231 |
rset = req.execute('CWUser X') |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
232 |
self.view('muledit', rset, template=None, req=req).source |
1533 | 233 |
|
1300 | 234 |
def test_automatic_reledit_formview(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
235 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
236 |
rset = req.execute('CWUser X') |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
237 |
self.view('reledit', rset, row=0, rtype='login', template=None, req=req).source |
1533 | 238 |
|
1300 | 239 |
def test_automatic_inline_edit_formview(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
240 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
241 |
geid = req.execute('CWGroup X LIMIT 1')[0][0] |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
242 |
rset = req.execute('CWUser X LIMIT 1') |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
243 |
self.view('inline-edition', rset, row=0, col=0, rtype='in_group', |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
244 |
peid=geid, role='object', i18nctx='', pform=MOCKPFORM, |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
245 |
template=None, req=req).source |
1533 | 246 |
|
1300 | 247 |
def test_automatic_inline_creation_formview(self): |
9842
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
248 |
with self.admin_access.web_request() as req: |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
249 |
geid = req.execute('CWGroup X LIMIT 1')[0][0] |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
250 |
self.view('inline-creation', None, etype='CWUser', rtype='in_group', |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
251 |
peid=geid, petype='CWGroup', i18nctx='', role='object', pform=MOCKPFORM, |
78d1beebdebc
[webtests/views_editforms] use the new connection api
Aurelien Campeas <aurelien.campeas@logilab.fr>
parents:
8665
diff
changeset
|
252 |
template=None, req=req) |
1300 | 253 |
|
3930
c0ae3148b893
fix test: required to fake parent form
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
3771
diff
changeset
|
254 |
MOCKPFORM = mock_object(form_previous_values={}, form_valerror=None) |
1533 | 255 |
|
1287 | 256 |
if __name__ == '__main__': |
257 |
unittest_main() |
|
2637
07103211e511
R [test] update and fix deprecation warnings
Sylvain Thénault <sylvain.thenault@logilab.fr>
parents:
2058
diff
changeset
|
258 |