Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Labels
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Commits
Open sidebar
Romain Courteaud
erp5
Commits
8d8066c9
Commit
8d8066c9
authored
May 27, 2021
by
Jérome Perrin
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
core_test: address pylint messages and other small cleanups
parent
a148fcc9
Changes
55
Show whitespace changes
Inline
Side-by-side
Showing
55 changed files
with
1754 additions
and
2002 deletions
+1754
-2002
bt5/erp5_core_test/MixinTemplateItem/portal_components/mixin.erp5.TestWorkflowMixin.xml
...teItem/portal_components/mixin.erp5.TestWorkflowMixin.xml
+20
-16
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testBase.py
.../TestTemplateItem/portal_components/test.erp5.testBase.py
+1
-1
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testBase.xml
...TestTemplateItem/portal_components/test.erp5.testBase.xml
+25
-8
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testBusinessTemplate.py
...eItem/portal_components/test.erp5.testBusinessTemplate.py
+87
-119
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testBusinessTemplate.xml
...Item/portal_components/test.erp5.testBusinessTemplate.xml
+1
-45
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCache.py
...TestTemplateItem/portal_components/test.erp5.testCache.py
+1
-2
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCache.xml
...estTemplateItem/portal_components/test.erp5.testCache.xml
+25
-6
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCacheTool.py
...TemplateItem/portal_components/test.erp5.testCacheTool.py
+1
-1
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCacheTool.xml
...emplateItem/portal_components/test.erp5.testCacheTool.xml
+25
-6
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCachedSkinsTool.py
...teItem/portal_components/test.erp5.testCachedSkinsTool.py
+1
-1
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCachedSkinsTool.xml
...eItem/portal_components/test.erp5.testCachedSkinsTool.xml
+31
-6
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testConstraint.py
...emplateItem/portal_components/test.erp5.testConstraint.py
+46
-53
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testConstraint.xml
...mplateItem/portal_components/test.erp5.testConstraint.xml
+25
-23
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Category.py
...plateItem/portal_components/test.erp5.testERP5Category.py
+1
-8
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Category.xml
...lateItem/portal_components/test.erp5.testERP5Category.xml
+31
-6
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Core.py
...tTemplateItem/portal_components/test.erp5.testERP5Core.py
+2
-3
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Core.xml
...TemplateItem/portal_components/test.erp5.testERP5Core.xml
+25
-7
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Workflow.py
...plateItem/portal_components/test.erp5.testERP5Workflow.py
+1
-2
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Workflow.xml
...lateItem/portal_components/test.erp5.testERP5Workflow.xml
+24
-3
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testFolder.py
...estTemplateItem/portal_components/test.erp5.testFolder.py
+229
-229
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testFolder.xml
...stTemplateItem/portal_components/test.erp5.testFolder.xml
+31
-193
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testFolderMigration.py
...teItem/portal_components/test.erp5.testFolderMigration.py
+472
-472
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testFolderMigration.xml
...eItem/portal_components/test.erp5.testFolderMigration.xml
+31
-321
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testGeographicalAddress.py
...em/portal_components/test.erp5.testGeographicalAddress.py
+7
-48
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testGeographicalAddress.xml
...m/portal_components/test.erp5.testGeographicalAddress.xml
+31
-7
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testIdToolUpgrade.py
...lateItem/portal_components/test.erp5.testIdToolUpgrade.py
+8
-8
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testIdToolUpgrade.xml
...ateItem/portal_components/test.erp5.testIdToolUpgrade.xml
+31
-10
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testInteractionWorkflow.py
...em/portal_components/test.erp5.testInteractionWorkflow.py
+5
-8
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testInteractionWorkflow.xml
...m/portal_components/test.erp5.testInteractionWorkflow.xml
+31
-9
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testIntrospectionTool.py
...Item/portal_components/test.erp5.testIntrospectionTool.py
+1
-25
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testIntrospectionTool.xml
...tem/portal_components/test.erp5.testIntrospectionTool.xml
+31
-6
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testLocalizer.py
...TemplateItem/portal_components/test.erp5.testLocalizer.py
+1
-2
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testLocalizer.xml
...emplateItem/portal_components/test.erp5.testLocalizer.xml
+31
-7
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testMemcachedTool.py
...lateItem/portal_components/test.erp5.testMemcachedTool.py
+2
-4
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testMemcachedTool.xml
...ateItem/portal_components/test.erp5.testMemcachedTool.xml
+25
-7
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testNotificationMessageModule.py
...tal_components/test.erp5.testNotificationMessageModule.py
+5
-8
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testNotificationMessageModule.xml
...al_components/test.erp5.testNotificationMessageModule.xml
+31
-9
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testNotificationTool.py
...eItem/portal_components/test.erp5.testNotificationTool.py
+20
-20
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testNotificationTool.xml
...Item/portal_components/test.erp5.testNotificationTool.xml
+31
-12
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testSessionTool.py
...mplateItem/portal_components/test.erp5.testSessionTool.py
+0
-22
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testSessionTool.xml
...plateItem/portal_components/test.erp5.testSessionTool.xml
+25
-6
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTimeout.py
...stTemplateItem/portal_components/test.erp5.testTimeout.py
+1
-1
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTimeout.xml
...tTemplateItem/portal_components/test.erp5.testTimeout.xml
+31
-6
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTimerService.py
...plateItem/portal_components/test.erp5.testTimerService.py
+7
-28
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTimerService.xml
...lateItem/portal_components/test.erp5.testTimerService.xml
+31
-9
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTransactionalVariable.py
.../portal_components/test.erp5.testTransactionalVariable.py
+59
-59
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTransactionalVariable.xml
...portal_components/test.erp5.testTransactionalVariable.xml
+31
-53
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTrashTool.py
...TemplateItem/portal_components/test.erp5.testTrashTool.py
+10
-21
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTrashTool.xml
...emplateItem/portal_components/test.erp5.testTrashTool.xml
+31
-13
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testWorkflowHistoryList.py
...em/portal_components/test.erp5.testWorkflowHistoryList.py
+16
-17
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testWorkflowHistoryList.xml
...m/portal_components/test.erp5.testWorkflowHistoryList.xml
+25
-18
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testXMLPickle.py
...TemplateItem/portal_components/test.erp5.testXMLPickle.py
+1
-1
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testXMLPickle.xml
...emplateItem/portal_components/test.erp5.testXMLPickle.xml
+25
-6
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testZODBHistory.py
...mplateItem/portal_components/test.erp5.testZODBHistory.py
+3
-14
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testZODBHistory.xml
...plateItem/portal_components/test.erp5.testZODBHistory.xml
+31
-7
No files found.
bt5/erp5_core_test/MixinTemplateItem/portal_components/mixin.erp5.TestWorkflowMixin.xml
View file @
8d8066c9
...
...
@@ -100,11 +100,13 @@
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.
patches.WorkflowTool
"
/>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.
Workflow
"
/>
</pickle>
<pickle>
<tuple>
<none/>
<dictionary>
<item>
<key>
<string>
_log
</string>
</key>
<value>
<list>
<dictionary>
<item>
...
...
@@ -117,7 +119,9 @@
</item>
</dictionary>
</list>
</tuple>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testBase.py
View file @
8d8066c9
...
...
@@ -79,7 +79,7 @@ class TestBase(ERP5TypeTestCase, ZopeTestCase.Functional):
"""
return
(
'erp5_base'
,)
def
login
(
self
):
def
login
(
self
):
# pylint:disable=arguments-differ
uf
=
self
.
getPortal
().
acl_users
uf
.
_doAddUser
(
self
.
username
,
''
,
[
'Manager'
],
[])
user
=
uf
.
getUserById
(
self
.
username
).
__of__
(
uf
)
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testBase.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testBase
</string>
</value>
...
...
@@ -43,11 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 82, 2: Arguments number differs from overridden \'login\' method (arguments-differ)
</string>
<string>
W:951, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:1034, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -57,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -76,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -85,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testBusinessTemplate.py
View file @
8d8066c9
...
...
@@ -42,7 +42,6 @@ from Products.ERP5Type.tests.utils import LogInterceptor
from
Products.ERP5Type.Workflow
import
addWorkflowByType
import
shutil
import
os
import
gc
import
random
import
string
import
tempfile
...
...
@@ -65,7 +64,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
)
## Ignore errors from PortalTransforms (e.g. missing binaries)
def
_catch_log_errors
(
self
):
def
_catch_log_errors
(
self
):
# pylint:disable=arguments-differ
LogInterceptor
.
_catch_log_errors
(
self
)
level
=
self
.
level
def
_tr_init
(
*
args
,
**
kw
):
...
...
@@ -82,7 +81,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
assert
self
.
output
==
'BROKEN'
Transform
.
manage_beforeDelete
=
manage_beforeDelete
def
_ignore_log_errors
(
self
):
def
_ignore_log_errors
(
self
):
# pylint:disable=arguments-differ
Transform
.
_tr_init
=
Transform_tr_init
Transform
.
manage_beforeDelete
=
Transform_manage_beforeDelete
LogInterceptor
.
_ignore_log_errors
(
self
)
...
...
@@ -127,10 +126,6 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
for
d
in
getattr
(
self
,
"rmdir_list"
,
()):
shutil
.
rmtree
(
d
)
pw
=
self
.
getWorkflowTool
()
props
=
{}
for
type_object
in
self
.
getTypesTool
().
listTypeInfo
():
workflow_list
=
type_object
.
getTypeWorkflowList
()
if
'geek_workflow'
in
workflow_list
:
...
...
@@ -421,8 +416,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""
trash
=
self
.
getTrashTool
()
trash_ids
=
list
(
trash
.
objectIds
())
for
id
in
trash_ids
:
trash
.
deleteContent
(
id
)
for
id
_
in
trash_ids
:
trash
.
deleteContent
(
id
_
)
self
.
assertFalse
(
len
(
trash
.
objectIds
())
>
0
)
def
stepCheckTrashBin
(
self
,
sequence
=
None
,
**
kw
):
...
...
@@ -600,21 +595,21 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
Create Module with objects
"""
portal
=
self
.
getPortal
()
id
=
'geek_module'
id
_
=
'geek_module'
n
=
0
while
id
in
portal
.
objectIds
():
while
id
_
in
portal
.
objectIds
():
n
=
n
+
1
id
=
"%s_%s"
%
(
'geek_module'
,
n
)
module
=
portal
.
newContent
(
id
=
id
,
portal_type
=
'Geek Module'
)
id
_
=
"%s_%s"
%
(
'geek_module'
,
n
)
module
=
portal
.
newContent
(
id
=
id
_
,
portal_type
=
'Geek Module'
)
self
.
assertTrue
(
module
is
not
None
)
# add a specific permission to module which do not use acquisition
module
.
manage_permission
(
'Copy or Move'
,
[
'Assignor'
],
False
)
sequence
.
edit
(
module_id
=
module
.
getId
())
module_object_list
=
[]
for
i
in
xrange
(
10
):
obj
ect
=
module
.
newContent
(
portal_type
=
'Geek Object'
)
self
.
assert
True
(
object
is
not
None
)
module_object_list
.
append
(
obj
ect
)
for
_
in
xrange
(
10
):
obj
=
module
.
newContent
(
portal_type
=
'Geek Object'
)
self
.
assert
IsNotNone
(
obj
)
module_object_list
.
append
(
obj
)
sequence
.
edit
(
module_object_id_list
=
module_object_list
)
def
stepAddModuleToBusinessTemplate
(
self
,
sequence
=
None
,
**
kw
):
...
...
@@ -623,7 +618,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""
bt
=
sequence
.
get
(
'current_bt'
,
None
)
module_id
=
sequence
.
get
(
'module_id'
,
None
)
self
.
assert
True
(
module_id
is
not
None
)
self
.
assert
IsNotNone
(
module_id
)
bt
.
edit
(
template_module_id_list
=
[
module_id
])
def
stepCreateModuleObjects
(
self
,
sequence
=
None
,
**
kw
):
...
...
@@ -633,12 +628,12 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
portal
=
self
.
getPortal
()
module_id
=
sequence
.
get
(
'module_id'
)
module
=
portal
.
_getOb
(
module_id
,
None
)
self
.
assert
True
(
module
is
not
Non
e
)
self
.
assert
IsNotNone
(
modul
e
)
module_object_list
=
[]
for
i
in
xrange
(
10
):
obj
ect
=
module
.
newContent
(
portal_type
=
'Geek Object'
)
self
.
assert
True
(
object
is
not
None
)
module_object_list
.
append
(
obj
ect
.
getId
())
for
_
in
xrange
(
10
):
obj
=
module
.
newContent
(
portal_type
=
'Geek Object'
)
self
.
assert
IsNotNone
(
obj
)
module_object_list
.
append
(
obj
.
getId
())
sequence
.
edit
(
module_object_id_list
=
module_object_list
)
def
stepRemoveModule
(
self
,
sequence
=
None
,
**
kw
):
...
...
@@ -648,7 +643,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
portal
=
self
.
getPortal
()
module_id
=
sequence
.
get
(
"module_id"
)
portal
.
manage_delObjects
([
module_id
])
self
.
assert
False
(
portal
.
_getOb
(
module_id
,
None
)
is
not
None
)
self
.
assert
IsNone
(
portal
.
_getOb
(
module_id
,
None
)
)
def
stepCheckModuleExists
(
self
,
sequence
=
None
,
**
kw
):
"""
...
...
@@ -657,7 +652,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
portal
=
self
.
getPortal
()
module_id
=
sequence
.
get
(
"module_id"
)
new_module
=
portal
.
_getOb
(
module_id
,
None
)
self
.
assert
False
(
new_module
is
Non
e
)
self
.
assert
IsNotNone
(
new_modul
e
)
def
stepCheckModulePermissions
(
self
,
sequence
=
None
,
**
kw
):
"""
...
...
@@ -687,11 +682,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
portal
=
self
.
getPortal
()
module_id
=
sequence
.
get
(
'module_id'
)
module
=
portal
.
_getOb
(
module_id
)
self
.
assert
True
(
module
is
not
Non
e
)
self
.
assert
IsNotNone
(
modul
e
)
object_id_list
=
sequence
.
get
(
'module_object_id_list'
)
for
object_id
in
object_id_list
:
object
=
module
.
_getOb
(
object_id
,
None
)
self
.
assertTrue
(
object
is
not
None
)
self
.
assertIsNotNone
(
module
.
_getOb
(
object_id
,
None
))
def
stepCheckModuleObjectsRemoved
(
self
,
sequence
=
None
,
**
kw
):
"""
...
...
@@ -703,8 +697,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self
.
assertTrue
(
module
is
not
None
)
object_id_list
=
sequence
.
get
(
'module_object_id_list'
)
for
object_id
in
object_id_list
:
object
=
module
.
_getOb
(
object_id
,
None
)
self
.
assertTrue
(
object
is
None
)
self
.
assertIsNone
(
module
.
_getOb
(
object_id
,
None
))
def
stepCheckModuleRemoved
(
self
,
sequence
=
None
,
**
kw
):
"""
...
...
@@ -712,7 +705,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""
portal
=
self
.
getPortal
()
module_id
=
sequence
.
get
(
"module_id"
)
self
.
assert
False
(
portal
.
_getOb
(
module_id
,
None
)
is
not
None
)
self
.
assert
IsNone
(
portal
.
_getOb
(
module_id
,
None
)
)
# skins folder
def
stepCreateSkinFolder
(
self
,
sequence
=
None
,
**
kw
):
...
...
@@ -722,7 +715,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
ps
=
self
.
getSkinsTool
()
ps
.
manage_addProduct
[
'OFSP'
].
manage_addFolder
(
'erp5_geek'
)
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
True
(
skin_folder
is
not
None
)
self
.
assert
IsNotNone
(
skin_folder
)
sequence
.
edit
(
skin_folder_id
=
skin_folder
.
getId
())
# add skin in layers
for
skin_name
,
selection
in
ps
.
getSkinPaths
():
...
...
@@ -738,7 +731,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
ps
=
self
.
getSkinsTool
()
ps
.
manage_addProduct
[
'OFSP'
].
manage_addFolder
(
'erp5_nerd'
)
skin_folder
=
ps
.
_getOb
(
'erp5_nerd'
,
None
)
self
.
assert
True
(
skin_folder
is
not
None
)
self
.
assert
IsNotNone
(
skin_folder
)
sequence
.
edit
(
another_skin_folder_id
=
skin_folder
.
getId
())
# add skin in layers
for
skin_name
,
selection
in
ps
.
getSkinPaths
():
...
...
@@ -754,7 +747,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
ps
=
self
.
getSkinsTool
()
ps
.
manage_addProduct
[
'OFSP'
].
manage_addFolder
(
'erp5_static'
)
skin_folder
=
ps
.
_getOb
(
'erp5_static'
,
None
)
self
.
assert
True
(
skin_folder
is
not
None
)
self
.
assert
IsNotNone
(
skin_folder
)
sequence
.
edit
(
static_skin_folder_id
=
skin_folder
.
getId
())
# add skin in layers
for
skin_name
,
selection
in
ps
.
getSkinPaths
():
...
...
@@ -767,10 +760,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
def
stepCreateSkinSubFolder
(
self
,
sequence
=
None
,
**
kw
):
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
True
(
skin_folder
is
not
None
)
self
.
assert
IsNotNone
(
skin_folder
)
skin_folder
.
manage_addFolder
(
'erp5_subgeek'
)
skin_subfolder
=
skin_folder
.
_getOb
(
'erp5_subgeek'
,
None
)
self
.
assert
True
(
skin_subfolder
is
not
None
)
self
.
assert
IsNotNone
(
skin_subfolder
)
sequence
.
edit
(
skin_subfolder_id
=
skin_subfolder
.
getId
())
def
stepCheckSkinSubFolderExists
(
self
,
sequence
=
None
,
**
kw
):
...
...
@@ -780,21 +773,21 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
ps
=
self
.
getSkinsTool
()
skin_id
=
sequence
.
get
(
'skin_folder_id'
)
skin_folder
=
ps
.
_getOb
(
skin_id
,
None
)
self
.
assert
True
(
skin_folder
is
not
None
)
self
.
assert
IsNotNone
(
skin_folder
)
subskin_id
=
sequence
.
get
(
'skin_subfolder_id'
)
skin_subfolder
=
skin_folder
.
_getOb
(
subskin_id
,
None
)
self
.
assert
True
(
skin_subfolder
is
not
None
)
self
.
assert
IsNotNone
(
skin_subfolder
)
def
stepCreateNewForm
(
self
,
sequence
=
None
):
"""Create a new ERP5 Form in a skin folder."""
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
'Geek_view'
addERP5Form
=
skin_folder
.
manage_addProduct
[
'ERP5Form'
].
addERP5Form
addERP5Form
(
form_id
,
'View'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assert
NotEquals
(
form
,
None
)
self
.
assert
IsNotNone
(
form
)
self
.
assertEqual
(
sorted
(
form
.
get_groups
(
include_empty
=
1
)),
sorted
([
'left'
,
'right'
,
'center'
,
'bottom'
,
'hidden'
]))
addField
=
form
.
manage_addProduct
[
'Formulator'
].
manage_addField
...
...
@@ -813,12 +806,12 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Create a new ERP5 Form in a skin folder."""
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_nerd'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
'Geek_view'
addERP5Form
=
skin_folder
.
manage_addProduct
[
'ERP5Form'
].
addERP5Form
addERP5Form
(
form_id
,
'View'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assert
NotEquals
(
form
,
None
)
self
.
assert
IsNotNone
(
form
)
self
.
assertEqual
(
sorted
(
form
.
get_groups
(
include_empty
=
1
)),
sorted
([
'left'
,
'right'
,
'center'
,
'bottom'
,
'hidden'
]))
addField
=
form
.
manage_addProduct
[
'Formulator'
].
manage_addField
...
...
@@ -837,22 +830,22 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Remove an ERP5 Form."""
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
sequence
.
get
(
'form_id'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assert
NotEquals
(
form
,
None
)
self
.
assert
IsNotNone
(
form
)
skin_folder
.
manage_delObjects
([
form_id
])
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assert
Equal
(
form
,
None
)
self
.
assert
IsNone
(
form
)
def
stepAddFormField
(
self
,
sequence
=
None
):
"""Add a field to an ERP5 Form."""
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
sequence
.
get
(
'form_id'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assert
NotEquals
(
form
,
None
)
self
.
assert
IsNotNone
(
form
)
self
.
assertEqual
(
sorted
(
form
.
get_groups
(
include_empty
=
1
)),
sorted
([
'left'
,
'right'
,
'center'
,
'bottom'
,
'hidden'
]))
addField
=
form
.
manage_addProduct
[
'Formulator'
].
manage_addField
...
...
@@ -871,12 +864,12 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
def
stepModifyFormTitle
(
self
,
sequence
=
None
):
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
sequence
.
get
(
'form_id'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
form_title
=
'First Form Title'
form
.
title
=
form_title
self
.
assert
NotEquals
(
form
,
None
)
self
.
assert
IsNotNone
(
form
)
self
.
assertEqual
(
sorted
(
form
.
get_groups
(
include_empty
=
1
)),
sorted
([
'left'
,
'right'
,
'center'
,
'bottom'
,
'hidden'
]))
group_dict
=
{}
...
...
@@ -891,7 +884,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
def
stepRevertFormTitle
(
self
,
sequence
=
None
):
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
sequence
.
get
(
'form_id'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
form_title
=
'Second Form Title'
...
...
@@ -900,7 +893,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
def
stepCheckFormTitle
(
self
,
sequence
=
None
):
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
sequence
.
get
(
'form_id'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assertEqual
(
'First Form Title'
,
form
.
title
)
...
...
@@ -909,7 +902,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Check the form is exist in erp5_geek."""
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
sequence
.
get
(
'form_id'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assertEqual
(
form
,
None
)
...
...
@@ -918,19 +911,19 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Check the form is not exist in erp5_nerd."""
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_nerd'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
sequence
.
get
(
'form_id'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assert
NotEquals
(
form
,
None
)
self
.
assert
IsNotNone
(
form
)
def
stepRemoveFormField
(
self
,
sequence
=
None
):
"""Remove a field from an ERP5 Form."""
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
sequence
.
get
(
'form_id'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assert
NotEquals
(
form
,
None
)
self
.
assert
IsNotNone
(
form
)
field_id
=
sequence
.
get
(
'field_id'
)
field
=
form
.
get_field
(
field_id
)
self
.
assertNotEquals
(
field
,
None
)
...
...
@@ -941,10 +934,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Check the groups of an ERP5 Form."""
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_geek'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
sequence
.
get
(
'form_id'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assert
NotEquals
(
form
,
None
)
self
.
assert
IsNotNone
(
form
)
group_dict
=
sequence
.
get
(
'group_dict'
)
self
.
assertEqual
(
sorted
(
form
.
get_groups
(
include_empty
=
1
)),
sorted
(
group_dict
.
iterkeys
()))
...
...
@@ -958,10 +951,10 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""Check that field title is not removed form erp5_nerd."""
ps
=
self
.
getSkinsTool
()
skin_folder
=
ps
.
_getOb
(
'erp5_nerd'
,
None
)
self
.
assert
NotEquals
(
skin_folder
,
None
)
self
.
assert
IsNotNone
(
skin_folder
)
form_id
=
sequence
.
get
(
'form_id'
)
form
=
skin_folder
.
_getOb
(
form_id
,
None
)
self
.
assert
NotEquals
(
form
,
None
)
self
.
assert
IsNotNone
(
form
)
title_field
=
form
.
_getOb
(
'my_title'
,
None
)
self
.
assertNotEquals
(
title_field
,
None
)
...
...
@@ -1185,9 +1178,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
base_category
=
pc
.
_getOb
(
bc_id
,
None
)
self
.
assertTrue
(
base_category
is
not
None
)
category_list
=
[]
for
i
in
xrange
(
10
):
for
_
in
xrange
(
10
):
category
=
base_category
.
newContent
(
portal_type
=
'Category'
)
self
.
assertTrue
(
category
is
not
None
)
category_list
.
append
(
category
.
getId
())
sequence
.
edit
(
category_id_list
=
category_list
)
...
...
@@ -1253,9 +1245,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self
.
assertTrue
(
category
is
not
None
)
subcategory_list
=
[]
subcategory_uid_dict
=
{}
for
i
in
xrange
(
10
):
for
_
in
xrange
(
10
):
subcategory
=
category
.
newContent
(
portal_type
=
'Category'
,
title
=
'toto'
)
self
.
assertTrue
(
subcategory
is
not
None
)
subcategory_list
.
append
(
subcategory
.
getId
())
subcategory_uid_dict
[
subcategory
.
getId
()]
=
subcategory
.
getUid
()
sequence
.
edit
(
subcategory_id_list
=
subcategory_list
,
\
...
...
@@ -1430,8 +1421,8 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
wf_id
=
sequence
.
get
(
'workflow_id'
)
tt
=
self
.
getPortal
()[
'portal_trash'
]
self
.
assertEqual
(
len
(
tt
.
objectIds
()),
1
)
bin
=
tt
.
objectValues
()[
0
]
self
.
assertNotEqual
(
len
(
bin
.
portal_workflow_items
[
wf_id
].
objectIds
()),
0
)
trash_
bin
=
tt
.
objectValues
()[
0
]
self
.
assertNotEqual
(
len
(
trash_
bin
.
portal_workflow_items
[
wf_id
].
objectIds
()),
0
)
# Actions
def
stepCreateFirstAction
(
self
,
sequence
=
None
,
**
kw
):
...
...
@@ -1666,11 +1657,11 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self
.
assertIn
(
method_id
,
catalog
.
sql_uncatalog_object
)
# check filter
filter_dict
=
catalog
.
_getFilterDict
()
filter
=
filter_dict
[
method_id
]
self
.
assertItemsEqual
(
filter
[
'expression_cache_key'
],
[
'portal_type'
])
self
.
assertEqual
(
filter
[
'type'
],
[])
self
.
assertEqual
(
filter
[
'filtered'
],
1
)
self
.
assertEqual
(
filter
[
'expression'
],
'python: context.isPredicate()'
)
filter
_
=
filter_dict
[
method_id
]
self
.
assertItemsEqual
(
filter
_
[
'expression_cache_key'
],
[
'portal_type'
])
self
.
assertEqual
(
filter
_
[
'type'
],
[])
self
.
assertEqual
(
filter
_
[
'filtered'
],
1
)
self
.
assertEqual
(
filter
_
[
'expression'
],
'python: context.isPredicate()'
)
def
stepCheckUpdatedCatalogMethodExists
(
self
,
sequence
=
None
,
**
kw
):
pc
=
self
.
getCatalogTool
()
...
...
@@ -1683,11 +1674,11 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self
.
assertIn
(
method_id
,
catalog
.
sql_uncatalog_object
)
# check filter
filter_dict
=
catalog
.
_getFilterDict
()
filter
=
filter_dict
[
method_id
]
self
.
assertItemsEqual
(
filter
[
'expression_cache_key'
],
[
'portal_type'
])
self
.
assertEqual
(
filter
[
'type'
],
[])
self
.
assertEqual
(
filter
[
'filtered'
],
1
)
self
.
assertEqual
(
filter
[
'expression'
],
'python: context.isDelivery()'
)
filter
_
=
filter_dict
[
method_id
]
self
.
assertItemsEqual
(
filter
_
[
'expression_cache_key'
],
[
'portal_type'
])
self
.
assertEqual
(
filter
_
[
'type'
],
[])
self
.
assertEqual
(
filter
_
[
'filtered'
],
1
)
self
.
assertEqual
(
filter
_
[
'expression'
],
'python: context.isDelivery()'
)
def
stepCheckCatalogMethodRemoved
(
self
,
sequence
=
None
,
**
kw
):
"""
...
...
@@ -1703,7 +1694,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self
.
assertNotIn
(
method_id
,
catalog
.
sql_uncatalog_object
)
# check filter
with
self
.
assertRaises
(
KeyError
):
catalog
.
_getFilterDict
()[
method_id
]
_
=
catalog
.
_getFilterDict
()[
method_id
]
def
stepRemoveCatalogMethod
(
self
,
sequence
=
None
,
**
kw
):
"""
...
...
@@ -1724,7 +1715,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self
.
assertNotIn
(
method_id
,
catalog
.
sql_uncatalog_object
)
# remove filter
with
self
.
assertRaises
(
KeyError
):
catalog
.
_getFilterDict
()[
method_id
]
_
=
catalog
.
_getFilterDict
()[
method_id
]
# Related key, Result key and table, and others
def
stepCreateKeysAndTable
(
self
,
sequence
=
list
,
**
kw
):
...
...
@@ -2391,9 +2382,9 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
Add Property Sheet to Business Template
"""
bt
=
sequence
.
get
(
'current_bt'
,
None
)
self
.
assert
True
(
bt
is
not
None
)
self
.
assert
IsNotNone
(
bt
)
ps_title
=
sequence
.
get
(
'ps_title'
,
None
)
self
.
assert
True
(
ps_title
is
not
Non
e
)
self
.
assert
IsNotNone
(
ps_titl
e
)
bt
.
edit
(
template_property_sheet_id_list
=
[
ps_title
])
def
stepCheckPropertySheetMigration
(
self
,
sequence
=
None
,
**
kw
):
...
...
@@ -2413,19 +2404,11 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""
Remove Property Sheet
"""
ps_title
=
sequence
.
get
(
'ps_title'
,
None
)
ps_path
=
sequence
.
get
(
'ps_path'
,
None
)
self
.
assert
True
(
ps_path
is
not
None
)
self
.
assert
IsNotNone
(
ps_path
)
self
.
assertTrue
(
os
.
path
.
exists
(
ps_path
))
os
.
remove
(
ps_path
)
self
.
assertFalse
(
os
.
path
.
exists
(
ps_path
))
return
# Property Sheet will not be installed in file sytem
self
.
assertFalse
(
os
.
path
.
exists
(
ps_path
))
# Property Sheet will be installed in ZODB
self
.
assertTrue
(
getattr
(
self
.
portal
.
portal_property_sheets
,
ps_title
,
None
)
is
not
None
)
self
.
portal
.
portal_property_sheets
.
manage_delObjects
([
ps_title
])
self
.
assertFalse
(
getattr
(
self
.
portal
.
portal_property_sheets
,
ps_title
,
None
)
is
not
None
)
def
stepRemovePropertySheetFromZODB
(
self
,
sequence
=
None
,
sequencer_list
=
None
,
**
kw
):
"""
...
...
@@ -2433,7 +2416,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""
ps_title
=
sequence
.
get
(
'ps_title'
,
None
)
ps_path
=
sequence
.
get
(
'ps_path'
,
None
)
self
.
assert
True
(
ps_path
is
not
None
)
self
.
assert
IsNotNone
(
ps_path
)
# Property Sheet will not be installed in file sytem
self
.
assertFalse
(
os
.
path
.
exists
(
ps_path
))
# Property Sheet will be installed in ZODB
...
...
@@ -2447,7 +2430,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""
ps_title
=
sequence
.
get
(
'ps_title'
,
None
)
ps_path
=
sequence
.
get
(
'ps_path'
,
None
)
self
.
assert
True
(
ps_path
is
not
None
)
self
.
assert
IsNotNone
(
ps_path
)
# Property Sheet will not be installed in file sytem
self
.
assertFalse
(
os
.
path
.
exists
(
ps_path
))
# Property Sheet will be installed in ZODB
...
...
@@ -2458,7 +2441,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
Check deletion of Property Sheet
"""
ps_path
=
sequence
.
get
(
'ps_path'
,
None
)
self
.
assert
True
(
ps_path
is
not
None
)
self
.
assert
IsNotNone
(
ps_path
)
self
.
assertFalse
(
os
.
path
.
exists
(
ps_path
))
def
stepCheckMigratedPropertySheetRemoved
(
self
,
sequence
=
None
,
**
kw
):
...
...
@@ -2492,7 +2475,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""
ps_title
=
sequence
.
get
(
'ps_title'
,
None
)
ps_path
=
sequence
.
get
(
'ps_path'
,
None
)
self
.
assert
True
(
ps_path
is
not
None
)
self
.
assert
IsNotNone
(
ps_path
)
# Property Sheet will not be installed in file sytem
self
.
assertFalse
(
os
.
path
.
exists
(
ps_path
))
# Property Sheet will be installed in ZODB
...
...
@@ -2696,7 +2679,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
for
item_name
in
item_list
:
item
=
getattr
(
bt
,
item_name
)
if
item
is
not
None
:
for
key
,
data
in
item
.
_objects
.
item
s
():
for
data
in
item
.
_objects
.
itervalue
s
():
if
hasattr
(
data
,
'__ac_local_roles__'
):
self
.
assertTrue
(
data
.
__ac_local_roles__
is
None
)
if
hasattr
(
data
,
'_owner'
):
...
...
@@ -2796,7 +2779,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
self
.
assertTrue
(
p
.
_getOb
(
'portal_simulation'
,
None
)
is
None
)
def
stepCheckSimulationToolExists
(
self
,
sequence
=
None
,
**
kw
):
self
.
assert
True
(
self
.
getSimulationTool
()
is
not
None
)
self
.
assert
IsNotNone
(
self
.
getSimulationTool
()
)
def
stepCheckSubobjectsNotIncluded
(
self
,
sequence
=
None
,
**
kw
):
"""Check subobjects are not included in the base category.
...
...
@@ -2806,30 +2789,19 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
# XXX maybe too low level
base_category_obj
=
bt
.
_category_item
.
_objects
.
get
(
'portal_categories/%s'
%
base_category_id
)
self
.
assert
True
(
base_category_obj
is
not
None
)
self
.
assert
IsNotNone
(
base_category_obj
)
self
.
assertEqual
(
len
(
base_category_obj
.
objectIds
()),
0
)
def
stepCheckNoMissingDependencies
(
self
,
sequence
=
None
,
**
kw
):
""" Check if bt has no missing dependency
"""
missing_dep
=
False
bt
=
sequence
.
get
(
'current_bt'
)
try
:
bt
.
checkDependencies
()
except
:
missing_dep
=
True
self
.
assertTrue
(
not
missing_dep
)
sequence
[
'current_bt'
].
checkDependencies
()
def
stepCheckMissingDependencies
(
self
,
sequence
=
None
,
**
kw
):
""" Check if bt has missing dependency
"""
missing_dep
=
False
bt
=
sequence
.
get
(
'current_bt'
)
try
:
bt
.
checkDependencies
()
except
:
missing_dep
=
True
self
.
assertTrue
(
missing_dep
)
with
self
.
assertRaises
(
Exception
):
sequence
[
'current_bt'
].
checkDependencies
()
def
stepAddDependency
(
self
,
sequence
=
None
,
**
kw
):
""" Add a dependency to the business template
...
...
@@ -2992,7 +2964,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
new_value
=
[]
workflow_chain_list
=
list
(
bt
.
getTemplatePortalTypeWorkflowChainList
())
for
workflow_chain
in
workflow_chain_list
:
portal_type
,
wkflow_id
=
workflow_chain
.
split
(
' | '
)
_
,
wkflow_id
=
workflow_chain
.
split
(
' | '
)
if
wkflow_id
!=
workflow_id
:
new_value
.
append
(
workflow_chain
)
bt
.
edit
(
template_portal_type_workflow_chain_list
=
new_value
)
...
...
@@ -3018,8 +2990,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
"""
Add type role to business template
"""
bt
=
sequence
.
get
(
'current_bt'
,
None
)
self
.
assertTrue
(
bt
is
not
None
)
bt
=
sequence
[
'current_bt'
]
ptype_ids
=
[]
ptype_ids
.
append
(
sequence
.
get
(
'object_ptype_id'
,
''
))
ptype_ids
.
append
(
sequence
.
get
(
'module_ptype_id'
,
''
))
...
...
@@ -3069,7 +3040,7 @@ class BusinessTemplateMixin(ERP5TypeTestCase, LogInterceptor):
def
stepCreateFakeZODBScript
(
self
,
sequence
=
None
,
**
kw
):
"""Create a Script inside portal_skins
"""
grain_of_sand
=
''
.
join
([
random
.
choice
(
string
.
ascii_letters
)
for
i
in
xrange
(
10
)])
grain_of_sand
=
''
.
join
([
random
.
choice
(
string
.
ascii_letters
)
for
_
in
xrange
(
10
)])
python_script_id
=
'ERP5Site_dummyScriptWhichRandomId%s'
%
grain_of_sand
skin_folder_id
=
'custom'
if
getattr
(
self
.
portal
.
portal_skins
,
skin_folder_id
,
None
)
is
None
:
...
...
@@ -6765,7 +6736,7 @@ class TestBusinessTemplate(BusinessTemplateMixin):
"""
# Simulate the case where we have an installed business template providing
# the path test_document
new_object
=
self
.
portal
.
newContent
(
portal_type
=
'File'
,
id
=
'test_document'
)
self
.
portal
.
newContent
(
portal_type
=
'File'
,
id
=
'test_document'
)
bt
=
self
.
portal
.
portal_templates
.
newContent
(
portal_type
=
'Business Template'
,
...
...
@@ -7150,12 +7121,10 @@ class TestBusinessTemplate(BusinessTemplateMixin):
bt
.
edit
(
template_registered_version_priority_selection_list
=
())
def
stepCheckVersionPrioritySetOnSite
(
self
,
sequence
=
None
,
**
kw
):
bt
=
sequence
.
get
(
'current_bt'
)
self
.
assertEqual
(
self
.
getPortalObject
().
getVersionPriorityList
(),
sequence
[
'expected_version_priority_list'
])
def
stepCheckVersionPriorityRemovedFromSite
(
self
,
sequence
=
None
,
**
kw
):
bt
=
sequence
.
get
(
'current_bt'
)
self
.
assertEqual
(
self
.
getPortalObject
().
getVersionPriorityList
(),
(
'erp5 | 0.0'
,))
...
...
@@ -7341,8 +7310,7 @@ class TestBusinessTemplate(BusinessTemplateMixin):
self
.
commit
()
self
.
portal
.
organisation_module
.
manage_delObjects
([
'1'
])
broken
=
self
.
portal
.
organisation_module
.
newContent
(
portal_type
=
'Mock Broken Organisation'
,
id
=
'1'
)
self
.
portal
.
organisation_module
.
newContent
(
portal_type
=
'Mock Broken Organisation'
,
id
=
'1'
)
self
.
commit
()
self
.
tic
()
# triger undex/index the document
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testBusinessTemplate.xml
View file @
8d8066c9
...
...
@@ -49,51 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 68, 2: Arguments number differs from overridden \'_catch_log_errors\' method (arguments-differ)
</string>
<string>
W: 85, 2: Arguments number differs from overridden \'_ignore_log_errors\' method (arguments-differ)
</string>
<string>
W:135, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:427, 8: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:618, 6: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:606, 4: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:617, 8: Unused variable \'i\' (unused-variable)
</string>
<string>
W:642, 6: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:641, 8: Unused variable \'i\' (unused-variable)
</string>
<string>
W:696, 6: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:709, 6: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:1191, 8: Unused variable \'i\' (unused-variable)
</string>
<string>
W:1259, 8: Unused variable \'i\' (unused-variable)
</string>
<string>
W:1337, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:1353, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:1366, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:1377, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:1389, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:1389, 14: Unused variable \'wf_ids\' (unused-variable)
</string>
<string>
W:1445, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:1477, 4: Redefining built-in \'bin\' (redefined-builtin)
</string>
<string>
W:1713, 4: Redefining built-in \'filter\' (redefined-builtin)
</string>
<string>
W:1730, 4: Redefining built-in \'filter\' (redefined-builtin)
</string>
<string>
W:1750, 6: Expression "catalog._getFilterDict()[method_id]" is assigned to nothing (expression-not-assigned)
</string>
<string>
W:1771, 6: Expression "catalog._getFilterDict()[method_id]" is assigned to nothing (expression-not-assigned)
</string>
<string>
W:2468, 4: Unreachable code (unreachable)
</string>
<string>
W:2743, 12: Unused variable \'key\' (unused-variable)
</string>
<string>
W:2863, 4: No exception type(s) specified (bare-except)
</string>
<string>
W:2874, 4: No exception type(s) specified (bare-except)
</string>
<string>
W:2968, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:2998, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:2998, 14: Unused variable \'wf_ids\' (unused-variable)
</string>
<string>
W:3013, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:3013, 14: Unused variable \'wf_ids\' (unused-variable)
</string>
<string>
W:3028, 10: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:3066, 6: Unused variable \'portal_type\' (unused-variable)
</string>
<string>
W:3143, 69: Unused variable \'i\' (unused-variable)
</string>
<string>
W:6460, 8: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:6855, 4: Unused variable \'new_object\' (unused-variable)
</string>
<string>
W:7169, 4: Unused variable \'bt\' (unused-variable)
</string>
<string>
W:7174, 4: Unused variable \'bt\' (unused-variable)
</string>
<string>
W:7360, 4: Unused variable \'broken\' (unused-variable)
</string>
<string>
W: 45, 0: Unused import gc (unused-import)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCache.py
View file @
8d8066c9
...
...
@@ -65,8 +65,7 @@ class TestRamCache(ERP5TypeTestCase):
test_scopes
.
sort
()
## remove DistributedRamCache since it's a flat storage
filtered_cache_plugins
=
filter
(
lambda
x
:
not
isinstance
(
x
,
DistributedRamCache
),
self
.
cache_plugins
)
filtered_cache_plugins
=
[
x
for
x
in
self
.
cache_plugins
if
not
isinstance
(
x
,
DistributedRamCache
)]
for
cache_plugin
in
filtered_cache_plugins
:
if
not
self
.
quiet
:
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCache.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testCache
</string>
</value>
...
...
@@ -43,9 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 68, 29: map/filter on lambda could be replaced by comprehension (deprecated-lambda)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -55,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -74,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -83,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCacheTool.py
View file @
8d8066c9
...
...
@@ -65,7 +65,7 @@ class TestCacheTool(ERP5TypeTestCase):
self
.
createCachedMethod
()
self
.
commit
()
def
login
(
self
):
def
login
(
self
):
# pylint:disable=arguments-differ
uf
=
self
.
portal
.
acl_users
uf
.
_doAddUser
(
'admin'
,
''
,
[
'Manager'
],
[])
uf
.
_doAddUser
(
'ERP5TypeTestCase'
,
''
,
[
'Manager'
],
[])
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCacheTool.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testCacheTool
</string>
</value>
...
...
@@ -43,9 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 68, 2: Arguments number differs from overridden \'login\' method (arguments-differ)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -55,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -74,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -83,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCachedSkinsTool.py
View file @
8d8066c9
...
...
@@ -57,7 +57,7 @@ class TestCachedSkinsTool(ERP5TypeTestCase):
# Use None as skinname to keep using the default one.
self
.
getSkinnableObject
().
changeSkin
(
skinname
=
None
)
def
login
(
self
):
def
login
(
self
):
# pylint:disable=arguments-differ
uf
=
self
.
portal
.
acl_users
uf
.
_doAddUser
(
'vincent'
,
''
,
[
'Manager'
],
[])
user
=
uf
.
getUserById
(
'vincent'
).
__of__
(
uf
)
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testCachedSkinsTool.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testCachedSkinsTool
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5Type.tests.testCachedSkinsTool
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testCachedSkinsTool
</string>
</value>
...
...
@@ -37,9 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 60, 2: Arguments number differs from overridden \'login\' method (arguments-differ)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -49,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -68,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -77,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testConstraint.py
View file @
8d8066c9
...
...
@@ -49,7 +49,7 @@ class TestConstraint(PropertySheetTestCase):
"""
return
(
'erp5_base'
,)
def
login
(
self
):
def
login
(
self
):
# pylint:disable=arguments-differ
uf
=
self
.
portal
.
acl_users
uf
.
_doAddUser
(
'rc'
,
''
,
[
'Manager'
],
[])
user
=
uf
.
getUserById
(
'rc'
).
__of__
(
uf
)
...
...
@@ -114,26 +114,24 @@ class TestConstraint(PropertySheetTestCase):
Create a object which will be tested.
"""
module
=
self
.
portal
.
getDefaultModule
(
self
.
object_portal_type
)
objec
t
=
module
.
newContent
(
portal_type
=
self
.
object_portal_type
)
group1
=
objec
t
.
portal_categories
.
restrictedTraverse
(
'group/testGroup1'
)
documen
t
=
module
.
newContent
(
portal_type
=
self
.
object_portal_type
)
group1
=
documen
t
.
portal_categories
.
restrictedTraverse
(
'group/testGroup1'
)
if
sequence
:
sequence
.
edit
(
object
=
objec
t
,
document
=
documen
t
,
group
=
group1
,
)
return
objec
t
return
documen
t
def
stepSetObjectGroup
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
Set a group to object
"""
object
=
sequence
.
get
(
'object'
)
# group1 = object.portal_categories.restrictedTraverse('group/testGroup1')
# object.edit(group_value=group1)
object
.
edit
(
group
=
'testGroup1'
)
document
=
sequence
.
get
(
'document'
)
document
.
edit
(
group
=
'testGroup1'
)
self
.
assertNotEqual
(
objec
t
.
getGroup
(
portal_type
=
()),
documen
t
.
getGroup
(
portal_type
=
()),
None
)
def
stepSetObjectGroupOrganisation
(
self
,
sequence
=
None
,
...
...
@@ -141,11 +139,11 @@ class TestConstraint(PropertySheetTestCase):
"""
Set a group to object, forcing portal_type color to Organisation
"""
object
=
sequence
.
get
(
'objec
t'
)
object
.
setGroup
(
objec
t
.
getRelativeUrl
(),
document
=
sequence
.
get
(
'documen
t'
)
document
.
setGroup
(
documen
t
.
getRelativeUrl
(),
portal_type
=
'Organisation'
)
self
.
assertNotEqual
(
objec
t
.
getGroup
(
portal_type
=
'Organisation'
),
documen
t
.
getGroup
(
portal_type
=
'Organisation'
),
None
)
def
stepSetObjectGroupList
(
self
,
sequence
=
None
,
...
...
@@ -153,68 +151,65 @@ class TestConstraint(PropertySheetTestCase):
"""
Set a group to object
"""
object
=
sequence
.
get
(
'object'
)
# group1 = object.portal_categories.restrictedTraverse('group/testGroup1')
# group2 = object.portal_categories.restrictedTraverse('group/testGroup2')
# object.edit(group_value_list=[group1, group2])
object
.
edit
(
group_list
=
[
'testGroup1'
,
'testGroup2'
])
document
=
sequence
.
get
(
'document'
)
document
.
edit
(
group_list
=
[
'testGroup1'
,
'testGroup2'
])
def
stepSetObjectTitle
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
Set a different title value
"""
object
=
sequence
.
get
(
'objec
t'
)
document
=
sequence
.
get
(
'documen
t'
)
object_title
=
self
.
object_title
objec
t
.
setTitle
(
object_title
)
documen
t
.
setTitle
(
object_title
)
def
stepSetObjectNoneTitle
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
Set a different title value
"""
object
=
sequence
.
get
(
'objec
t'
)
document
=
sequence
.
get
(
'documen
t'
)
# Do not call edit, as we want to explicitely modify the property
# (and edit modify only if value is different)
objec
t
.
setTitle
(
None
)
documen
t
.
setTitle
(
None
)
def
stepSetObjectEmptyTitle
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
Set a different title value
"""
object
=
sequence
.
get
(
'objec
t'
)
document
=
sequence
.
get
(
'documen
t'
)
# Do not call edit, as we want to explicitely modify the property
# (and edit modify only if value is different)
objec
t
.
setTitle
(
''
)
documen
t
.
setTitle
(
''
)
def
stepSetObjectIntTitle
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
Set a different title value
"""
object
=
sequence
.
get
(
'objec
t'
)
objec
t
.
edit
(
title
=
12345
)
document
=
sequence
.
get
(
'documen
t'
)
documen
t
.
edit
(
title
=
12345
)
def
stepSetObjectBadTypedProperty
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
Set a property with a bad type
"""
object
=
sequence
.
get
(
'objec
t'
)
document
=
sequence
.
get
(
'documen
t'
)
property_name
=
'ean13code'
# make sure the property is defined on the
objec
t
self
.
assertTrue
(
not
objec
t
.
hasProperty
(
property_name
))
self
.
assertTrue
(
objec
t
.
getPropertyType
(
property_name
)
!=
'int'
)
objec
t
.
setProperty
(
property_name
,
12
)
# make sure the property is defined on the
documen
t
self
.
assertTrue
(
not
documen
t
.
hasProperty
(
property_name
))
self
.
assertTrue
(
documen
t
.
getPropertyType
(
property_name
)
!=
'int'
)
documen
t
.
setProperty
(
property_name
,
12
)
def
stepSetObjectIntLocalProperty
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
Set a local property on the
objec
t, with an int type.
Set a local property on the
documen
t, with an int type.
"""
object
=
sequence
.
get
(
'objec
t'
)
objec
t
.
edit
(
local_prop
=
12345
)
document
=
sequence
.
get
(
'documen
t'
)
documen
t
.
edit
(
local_prop
=
12345
)
def
_createGenericConstraint
(
self
,
sequence
=
None
,
klass_name
=
'Constraint'
,
**
kw
):
...
...
@@ -225,9 +220,7 @@ class TestConstraint(PropertySheetTestCase):
module
=
Constraint
file_path
=
"%s.%s"
%
(
module
.
__name__
,
klass_name
)
__import__
(
file_path
)
file
=
getattr
(
module
,
klass_name
)
klass
=
file
# klass = getattr(file, klass_name)
klass
=
getattr
(
module
,
klass_name
)
constraint
=
klass
(
**
kw
)
if
sequence
is
not
None
:
sequence
.
edit
(
constraint
=
constraint
,)
...
...
@@ -238,10 +231,10 @@ class TestConstraint(PropertySheetTestCase):
"""
Call checkConsistency of a Constraint.
"""
object
=
sequence
.
get
(
'objec
t'
)
document
=
sequence
.
get
(
'documen
t'
)
constraint
=
sequence
.
get
(
'constraint'
)
# Check
error_list
=
constraint
.
checkConsistency
(
objec
t
)
error_list
=
constraint
.
checkConsistency
(
documen
t
)
sequence
.
edit
(
error_list
=
error_list
)
...
...
@@ -251,10 +244,10 @@ class TestConstraint(PropertySheetTestCase):
"""
Call checkConsistency of a Constraint, fixing the errors.
"""
object
=
sequence
.
get
(
'objec
t'
)
document
=
sequence
.
get
(
'documen
t'
)
constraint
=
sequence
.
get
(
'constraint'
)
# Check
error_list
=
constraint
.
checkConsistency
(
objec
t
,
fixit
=
1
)
error_list
=
constraint
.
checkConsistency
(
documen
t
,
fixit
=
1
)
sequence
.
edit
(
error_list
=
error_list
)
...
...
@@ -264,10 +257,10 @@ class TestConstraint(PropertySheetTestCase):
"""
Call checkConsistency of a Constraint.
"""
objec
t
=
sequence
.
get
(
'group'
)
documen
t
=
sequence
.
get
(
'group'
)
constraint
=
sequence
.
get
(
'constraint'
)
# Check
error_list
=
constraint
.
checkConsistency
(
objec
t
)
error_list
=
constraint
.
checkConsistency
(
documen
t
)
sequence
.
edit
(
error_list
=
error_list
)
...
...
@@ -1327,8 +1320,8 @@ class TestConstraint(PropertySheetTestCase):
"""
Create a Content Object inside one Object
"""
object
=
sequence
.
get
(
'objec
t'
)
content_object
=
objec
t
.
newContent
(
portal_type
=
self
.
object_content_portal_type
)
document
=
sequence
.
get
(
'documen
t'
)
content_object
=
documen
t
.
newContent
(
portal_type
=
self
.
object_content_portal_type
)
sequence
.
edit
(
content_object
=
content_object
,
)
...
...
@@ -1373,20 +1366,20 @@ class TestConstraint(PropertySheetTestCase):
"""
Set valid Title to Object
"""
object
=
sequence
.
get
(
'objec
t'
)
objec
t
.
setTitle
(
self
.
object_title
)
document
=
sequence
.
get
(
'documen
t'
)
documen
t
.
setTitle
(
self
.
object_title
)
sequence
.
edit
(
object
=
objec
t
,
document
=
documen
t
,
)
def
stepSetObjectTitle1
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
Set empty (or invalid string) to Object
"""
object
=
sequence
.
get
(
'objec
t'
)
objec
t
.
setTitle
(
' '
)
document
=
sequence
.
get
(
'documen
t'
)
documen
t
.
setTitle
(
' '
)
sequence
.
edit
(
object
=
objec
t
,
document
=
documen
t
,
)
def
test_StringAttributeMatchConstraint
(
self
):
...
...
@@ -1527,13 +1520,13 @@ class TestConstraint(PropertySheetTestCase):
def
stepValidateObject
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
"""
document
=
sequence
.
get
(
'
objec
t'
)
document
=
sequence
.
get
(
'
documen
t'
)
document
.
validate
()
def
stepInvalidateObject
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
"""
document
=
sequence
.
get
(
'
objec
t'
)
document
=
sequence
.
get
(
'
documen
t'
)
document
.
invalidate
()
def
stepCreateAttributeUnicityConstraint
(
self
,
sequence
=
None
,
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testConstraint.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testConstraint
</string>
</value>
...
...
@@ -43,26 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 52, 2: Arguments number differs from overridden \'login\' method (arguments-differ)
</string>
<string>
W:117, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:131, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:144, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:156, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:167, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:176, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:186, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:196, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:204, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:216, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:228, 4: Redefining built-in \'file\' (redefined-builtin)
</string>
<string>
W:241, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:254, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:267, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:1330, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:1376, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
<string>
W:1386, 4: Redefining built-in \'object\' (redefined-builtin)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -72,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -91,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -100,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Category.py
View file @
8d8066c9
...
...
@@ -28,7 +28,7 @@
import
unittest
from
Products.ERP5Type.tests.ERP5TypeTestCase
import
ERP5TypeTestCase
from
AccessControl.SecurityManagement
import
newSecurityManager
class
TestERP5Category
(
ERP5TypeTestCase
):
...
...
@@ -64,7 +64,6 @@ class TestERP5Category(ERP5TypeTestCase):
return
self
.
getSalePackingListModule
()[
'1'
]
def
afterSetUp
(
self
):
self
.
login
()
# This add the base category size
portal_categories
=
self
.
getCategoryTool
()
person_module
=
self
.
getPersonModule
()
...
...
@@ -155,12 +154,6 @@ class TestERP5Category(ERP5TypeTestCase):
self
.
commitAndTic
()
def
login
(
self
):
uf
=
self
.
getPortal
().
acl_users
uf
.
_doAddUser
(
'seb'
,
''
,
[
'Manager'
],
[])
user
=
uf
.
getUserById
(
'seb'
).
__of__
(
uf
)
newSecurityManager
(
None
,
user
)
def
commitAndTic
(
self
):
"""Just to save one line.
"""
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Category.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testERP5Category
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5.tests.testERP5Category
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testERP5Category
</string>
</value>
...
...
@@ -37,9 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W:158, 2: Arguments number differs from overridden \'login\' method (arguments-differ)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -49,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -68,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -77,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Core.py
View file @
8d8066c9
...
...
@@ -65,7 +65,7 @@ if 1: # BBB
*
args
,
**
kw
)
def
setGlobalTranslationService
(
translation_service
):
global
global_translation_service
global
global_translation_service
# pylint:disable=global-statement
global_translation_service
=
translation_service
zope
.
component
.
provideUtility
(
DummyTranslationDomainFallback
,
provides
=
IFallbackTranslationDomainFactory
)
...
...
@@ -578,9 +578,8 @@ class TestERP5Core(ERP5TypeTestCase, ZopeTestCase.Functional):
0
!=
i
.
getUid
()
!=
i
.
getProperty
(
'uid'
)])
def
test_04_site_manager_and_translation_migration
(
self
):
from
zope.site.hooks
import
getSite
,
setSite
from
zope.site.hooks
import
setSite
from
zope.component
import
queryUtility
from
zope.i18n.interfaces
import
ITranslationDomain
# check translation is working normaly
erp5_ui_catalog
=
self
.
portal
.
Localizer
.
erp5_ui
self
.
assertEqual
(
queryUtility
(
ITranslationDomain
,
'erp5_ui'
),
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Core.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testERP5Core
</string>
</value>
...
...
@@ -43,10 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 67, 4: Using the global statement (global-statement)
</string>
<string>
W:578, 4: Redefining name \'ITranslationDomain\' from outer scope (line 53) (redefined-outer-name)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -56,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -75,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -84,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Workflow.py
View file @
8d8066c9
...
...
@@ -99,8 +99,6 @@ class TestERP5Workflow(ERP5TypeTestCase):
transition2
.
setReference
(
'transition2'
)
state1
.
setDestinationValueList
([
transition1
,
transition2
])
self
.
portal
.
portal_types
.
Folder
.
setTypeWorkflowList
([
'wf'
])
doc
=
self
.
portal
.
newContent
(
portal_type
=
'Folder'
,
id
=
'test_doc'
)
self
.
assertEqual
([
transition1
,
transition2
],
state1
.
getDestinationValueList
())
...
...
@@ -231,6 +229,7 @@ class TestERP5Workflow(ERP5TypeTestCase):
"""
workflow
=
self
.
workflow_module
.
newContent
(
portal_type
=
'Workflow'
)
state
=
workflow
.
newContent
(
portal_type
=
'Workflow State'
,
title
=
'Some State'
)
state
.
Base_viewDict
()
transition
=
workflow
.
newContent
(
portal_type
=
'Workflow Transition'
,
title
=
'Some Transition'
)
transition
.
setReference
(
'change_something'
)
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testERP5Workflow.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testERP5Workflow
</string>
</value>
...
...
@@ -53,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -72,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -81,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testFolder.py
View file @
8d8066c9
...
...
@@ -160,7 +160,7 @@ class TestFolder(ERP5TypeTestCase, LogInterceptor):
portal_type
=
'Category'
)
def
test_editWithoutModifyPortalContent
(
self
):
edit
=
guarded_getattr
(
self
.
folder
,
'edit'
)
_
=
guarded_getattr
(
self
.
folder
,
'edit'
)
original_permission_list
=
self
.
folder
.
permission_settings
(
'Modify portal content'
)
assert
len
(
original_permission_list
)
==
1
self
.
folder
.
manage_permission
(
'Modify portal content'
,
[],
0
)
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testFolder.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testFolder
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5Type.tests.testFolder
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testFolder
</string>
</value>
...
...
@@ -37,196 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 45, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 46, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 48, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 49, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 52, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 54, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 55, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 58, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 59, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 61, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 64, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 65, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 68, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 70, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 71, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 73, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 74, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 77, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 79, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 80, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 84, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 87, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 88, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 93, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 94, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 95, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 96, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 97, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 98, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:100, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:101, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:104, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:105, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:106, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:109, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:110, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:111, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:112, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W:113, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W:114, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W:116, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:117, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:118, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:119, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:121, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:122, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:123, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:127, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:128, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:130, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:133, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:134, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:135, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:136, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:138, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:139, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:140, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:141, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:143, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:144, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:146, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:148, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:149, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:150, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:151, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:152, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:154, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:155, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:157, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:158, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:159, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:162, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:163, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:164, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:165, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:166, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:167, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:169, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:171, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:172, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:173, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:176, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:179, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:180, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:181, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:182, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:183, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:184, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:185, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:186, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:187, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:189, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:190, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:191, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:192, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:194, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:195, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:196, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:197, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:198, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:199, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:200, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:201, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:202, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:204, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:205, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:206, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:207, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:209, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:210, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:211, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:212, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:213, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:214, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:215, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:216, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:217, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:218, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:220, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:221, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:222, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:223, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:225, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:226, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:227, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:228, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:229, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:230, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:231, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:232, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:233, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:234, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:236, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:237, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:238, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:239, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:240, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:241, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:243, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:244, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:245, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:246, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:247, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:248, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:249, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:250, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:251, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:252, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:253, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:255, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:256, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:257, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:258, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:260, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:261, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:262, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:263, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:264, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:265, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:266, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:268, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:269, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:271, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:272, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:273, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:274, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:275, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:276, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:277, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:278, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:279, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:280, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:281, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:282, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W:283, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:284, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:287, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:288, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:289, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:290, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:291, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:292, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:293, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:294, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:295, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:296, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:297, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:163, 6: Unused variable \'edit\' (unused-variable)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -236,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -255,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -264,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testFolderMigration.py
View file @
8d8066c9
...
...
@@ -416,9 +416,9 @@ class TestFolderMigration(ERP5TypeTestCase, LogInterceptor):
# Create some objects
self
.
assertEqual
(
self
.
folder
.
getIdGenerator
(),
''
)
self
.
assertEqual
(
len
(
self
.
folder
),
0
)
obj1
=
self
.
newContent
(
id
=
obj1_id
)
obj2
=
self
.
newContent
(
id
=
obj2_id
)
obj3
=
self
.
newContent
(
id
=
obj3_id
)
self
.
newContent
(
id
=
obj1_id
)
self
.
newContent
(
id
=
obj2_id
)
self
.
newContent
(
id
=
obj3_id
)
self
.
tic
()
# call migration script
self
.
folder
.
migrateToHBTree
()
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testFolderMigration.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testFolderMigration
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5Type.tests.testFolderMigration
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testFolderMigration
</string>
</value>
...
...
@@ -37,324 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 41, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 42, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 44, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 45, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 48, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 50, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 51, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 54, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 55, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 58, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 59, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 62, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 63, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 64, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 65, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 67, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 68, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 71, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 73, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 74, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 77, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 78, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 79, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 81, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 82, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 86, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 87, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 88, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 89, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 90, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 91, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 92, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 93, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 94, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 96, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 98, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:100, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:101, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:102, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:103, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:105, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:106, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:107, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:109, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:110, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:111, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:112, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:113, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:114, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:116, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:117, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:119, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:120, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:123, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:124, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:125, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:127, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:128, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:131, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:132, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:133, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:134, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:136, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:137, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:141, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:142, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:143, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:145, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:147, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:149, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:150, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:151, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:153, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:154, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:155, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:156, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:157, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:159, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:160, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:161, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:163, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:164, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:168, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:169, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:170, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:171, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:172, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:173, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:174, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:175, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:176, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:179, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:180, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:182, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:183, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:184, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:185, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:187, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:188, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:189, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:191, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:192, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:193, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:195, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:196, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:198, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:199, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:203, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:204, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:205, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:206, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:207, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:208, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:209, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:210, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:211, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:214, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:215, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:217, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:218, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:219, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:220, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:222, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:223, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:224, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:226, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:227, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:228, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:230, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:231, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:233, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:234, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:235, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:236, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:238, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:239, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:240, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:241, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:243, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:244, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:245, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:247, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:248, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:250, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:251, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:255, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:256, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:257, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:258, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:259, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:260, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:261, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:262, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:263, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:265, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:267, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:269, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:270, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:271, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:272, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:274, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:275, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:276, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:278, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:279, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:280, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:281, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:282, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:283, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:285, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:286, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:288, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:290, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:293, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:294, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:295, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:296, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:298, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:299, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:303, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:304, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:305, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:306, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:307, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:308, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:309, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:310, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:311, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:313, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:315, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:316, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:318, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:320, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:321, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:322, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:323, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:325, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:326, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:327, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:329, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:330, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:331, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:332, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:333, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:334, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:336, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:337, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:339, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:340, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:345, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:346, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:347, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:348, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:349, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:350, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:351, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:352, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:353, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:355, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:356, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:357, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:358, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:359, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:360, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:361, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:362, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:363, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:365, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:366, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:371, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:372, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:373, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:374, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:375, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:376, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:377, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:378, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:379, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:381, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:382, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:383, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:384, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:385, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:386, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:387, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:388, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:389, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:390, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:391, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:392, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:393, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:395, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:396, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:399, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:400, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:401, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:403, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:404, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:405, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:407, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:408, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:412, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:413, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:414, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:415, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:417, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:418, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:419, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:420, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:421, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:422, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:424, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:425, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:427, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:428, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:429, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:430, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:432, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:433, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:434, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:436, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:437, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:438, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:439, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:440, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:442, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:443, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:444, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:446, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:447, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:449, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:451, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:452, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:454, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:455, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:457, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:458, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:460, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:461, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:463, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W:464, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:465, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:467, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:468, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:470, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:472, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:473, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:475, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:476, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:478, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:479, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:481, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:482, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:419, 6: Unused variable \'obj1\' (unused-variable)
</string>
<string>
W:421, 6: Unused variable \'obj3\' (unused-variable)
</string>
<string>
W:420, 6: Unused variable \'obj2\' (unused-variable)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -364,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -383,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -392,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testGeographicalAddress.py
View file @
8d8066c9
...
...
@@ -26,13 +26,11 @@
#
##############################################################################
import
unittest
from
Products.ERP5Type.tests.ERP5TypeTestCase
import
ERP5TypeTestCase
from
AccessControl.SecurityManagement
import
newSecurityManager
from
Products.ERP5Type.tests.Sequence
import
SequenceList
from
Products.ERP5Type.tests.utils
import
createZODBPythonScript
class
TestGeographicalAddress
(
ERP5TypeTestCase
):
"""
ERP5 Geographical Address related tests.
...
...
@@ -41,7 +39,6 @@ class TestGeographicalAddress(ERP5TypeTestCase):
on a Geographical Address returns the standard text format.
"""
run_all_test
=
1
entity_portal_type
=
'Person'
address_portal_type
=
'Address'
street_address_text
=
"rue Truc"
...
...
@@ -49,37 +46,7 @@ class TestGeographicalAddress(ERP5TypeTestCase):
zip_code_text
=
"12345"
city_text
=
"City1"
def
getTitle
(
self
):
return
"Geographical Address"
def
getBusinessTemplateList
(
self
):
"""
"""
return
(
'erp5_base'
,
)
def
login
(
self
,
quiet
=
0
,
run
=
run_all_test
):
uf
=
self
.
getPortal
().
acl_users
uf
.
_doAddUser
(
'rc'
,
''
,
[
'Manager'
],
[])
user
=
uf
.
getUserById
(
'rc'
).
__of__
(
uf
)
newSecurityManager
(
None
,
user
)
def
enableLightInstall
(
self
):
"""
You can override this.
Return if we should do a light install (1) or not (0)
"""
return
1
def
enableActivityTool
(
self
):
"""
You can override this.
Return if we should create (1) or not (0) an activity tool.
"""
return
1
def
afterSetUp
(
self
,
quiet
=
1
,
run
=
run_all_test
):
self
.
login
()
self
.
portal
=
self
.
getPortal
()
def
afterSetUp
(
self
):
self
.
category_tool
=
self
.
getCategoryTool
()
self
.
createCategories
()
...
...
@@ -91,7 +58,7 @@ class TestGeographicalAddress(ERP5TypeTestCase):
region_category_list
=
[
'country1'
,
'country2'
,
]
if
len
(
self
.
category_tool
.
region
.
contentValues
())
==
0
:
for
category_id
in
region_category_list
:
o
=
self
.
category_tool
.
region
.
newContent
(
portal_type
=
'Category'
,
self
.
category_tool
.
region
.
newContent
(
portal_type
=
'Category'
,
id
=
category_id
,
title
=
category_id
.
capitalize
())
self
.
region_category_list
=
[
'region/%s'
%
x
for
x
\
...
...
@@ -101,7 +68,7 @@ class TestGeographicalAddress(ERP5TypeTestCase):
"""
Create an entity
"""
portal
=
self
.
getPortal
()
portal
=
self
.
portal
module
=
portal
.
getDefaultModule
(
self
.
entity_portal_type
)
entity
=
module
.
newContent
(
portal_type
=
self
.
entity_portal_type
)
sequence
.
edit
(
...
...
@@ -141,12 +108,10 @@ class TestGeographicalAddress(ERP5TypeTestCase):
self
.
zip_code_text
,
self
.
city_text
,))
def
test_01_standardAddress
(
self
,
quiet
=
0
,
run
=
run_all_test
):
def
test_01_standardAddress
(
self
):
"""
Test property existence
"""
if
not
run
:
return
sequence_list
=
SequenceList
()
sequence_string
=
'
\
CreateEntity
\
...
...
@@ -161,7 +126,7 @@ class TestGeographicalAddress(ERP5TypeTestCase):
"""
This script returns a different address format.
"""
createZODBPythonScript
(
self
.
getPortal
()
.
portal_skins
.
custom
,
createZODBPythonScript
(
self
.
portal
.
portal_skins
.
custom
,
'Address_asText'
,
''
,
"""
return '%s
\
\
n%s %s COUNTRY' %
\
\
(context.getStreetAddress(),
...
...
@@ -180,12 +145,10 @@ return '%s\\n%s %s COUNTRY' % \\
self
.
zip_code_text
,
self
.
city_text
))
def
test_02_asTextScript
(
self
,
quiet
=
0
,
run
=
run_all_test
):
def
test_02_asTextScript
(
self
):
"""
Test property existence
"""
if
not
run
:
return
sequence_list
=
SequenceList
()
sequence_string
=
'
\
CreateEntity
\
...
...
@@ -197,7 +160,3 @@ return '%s\\n%s %s COUNTRY' % \\
sequence_list
.
addSequenceString
(
sequence_string
)
sequence_list
.
play
(
self
)
def
test_suite
():
suite
=
unittest
.
TestSuite
()
suite
.
addTest
(
unittest
.
makeSuite
(
TestGeographicalAddress
))
return
suite
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testGeographicalAddress.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testGeographicalAddress
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5.tests.testGeographicalAddress
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testGeographicalAddress
</string>
</value>
...
...
@@ -37,10 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 80, 2: Arguments number differs from overridden \'afterSetUp\' method (arguments-differ)
</string>
<string>
W: 94, 8: Unused variable \'o\' (unused-variable)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -50,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -69,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -78,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testIdToolUpgrade.py
View file @
8d8066c9
...
...
@@ -173,7 +173,7 @@ class TestIdToolUpgrade(ERP5TypeTestCase):
def
_setUpLastMaxIdDict
(
self
,
id_generator_reference
):
def
countup
(
id_generator
,
id_group
,
until
):
for
i
in
xrange
(
until
+
1
):
for
_
in
xrange
(
until
+
1
):
self
.
id_tool
.
generateNewId
(
id_generator
=
id_generator_reference
,
id_group
=
id_group
)
...
...
@@ -251,14 +251,14 @@ class TestIdToolUpgrade(ERP5TypeTestCase):
self
.
_setUpLastMaxIdDict
(
id_generator_reference
)
# test migration: PersistentMapping to OOBTree
self
.
assert
True
(
isinstance
(
last_id_dict
,
PersistentMapping
)
)
self
.
assert
IsInstance
(
last_id_dict
,
PersistentMapping
)
self
.
_assertIdGeneratorLastMaxIdDict
(
id_generator
)
id_generator
.
rebuildGeneratorIdDict
()
# migrate the dict
self
.
_assertIdGeneratorLastMaxIdDict
(
id_generator
)
# test migration: OOBTree to OOBTree. this changes nothing, just to be sure
last_id_dict
=
self
.
_getLastIdDict
(
id_generator
)
self
.
assert
True
(
isinstance
(
last_id_dict
,
OOBTree
)
)
self
.
assert
IsInstance
(
last_id_dict
,
OOBTree
)
self
.
_assertIdGeneratorLastMaxIdDict
(
id_generator
)
id_generator
.
rebuildGeneratorIdDict
()
# migrate the dict
self
.
_assertIdGeneratorLastMaxIdDict
(
id_generator
)
...
...
@@ -268,8 +268,8 @@ class TestIdToolUpgrade(ERP5TypeTestCase):
'SQL Non Continuous Increasing Id Generator'
:
self
.
_setLastIdDict
(
id_generator
,
OOBTree
())
# set empty one
last_id_dict
=
self
.
_getLastIdDict
(
id_generator
)
assert
(
len
(
last_id_dict
),
0
)
# 0 because it is empty
self
.
assert
True
(
isinstance
(
last_id_dict
,
OOBTree
)
)
self
.
assertEqual
(
len
(
last_id_dict
),
0
)
# 0 because it is empty
self
.
assert
IsInstance
(
last_id_dict
,
OOBTree
)
# migrate the dict totally from sql table in this case
id_generator
.
rebuildGeneratorIdDict
()
self
.
_assertIdGeneratorLastMaxIdDict
(
id_generator
)
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testIdToolUpgrade.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testIdToolUpgrade
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5.tests.testIdToolUpgrade
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testIdToolUpgrade
</string>
</value>
...
...
@@ -37,13 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W:141, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W:142, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W:143, 0: Bad indentation. Found 12 spaces, expected 8 (bad-indentation)
</string>
<string>
W:176, 10: Unused variable \'i\' (unused-variable)
</string>
<string>
W:271, 6: Assert called on a 2-uple. Did you mean \'assert x,y\'? (assert-on-tuple)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -53,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -72,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -81,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testInteractionWorkflow.py
View file @
8d8066c9
...
...
@@ -35,6 +35,7 @@ from Products.ERP5Type.Base import _aq_reset
from
AccessControl
import
ClassSecurityInfo
from
Products.ERP5Type.Workflow
import
addWorkflowByType
class
TestInteractionWorkflow
(
ERP5TypeTestCase
):
portal_type
=
'Organisation'
...
...
@@ -78,11 +79,9 @@ class TestInteractionWorkflow(ERP5TypeTestCase):
return
addWorkflowByType
(
wf_tool
,
"interaction_workflow"
,
wf_id
)
def
createInteractionWorkflow
(
self
):
id
=
'test_workflow'
wf_type
=
"interaction_workflow"
if
getattr
(
self
.
getWorkflowTool
(),
id
,
None
)
is
None
:
self
.
_createInteractionWorkflowWithId
(
id
)
wf
=
self
.
getWorkflowTool
()[
id
]
if
getattr
(
self
.
getWorkflowTool
(),
'test_workflow'
,
None
)
is
None
:
self
.
_createInteractionWorkflowWithId
(
'test_workflow'
)
wf
=
self
.
getWorkflowTool
()[
'test_workflow'
]
self
.
wf
=
wf
if
getattr
(
wf
.
scripts
,
'afterEdit'
,
None
)
is
None
:
wf
.
scripts
.
manage_addProduct
[
'PythonScripts'
]
\
...
...
@@ -96,9 +95,7 @@ class TestInteractionWorkflow(ERP5TypeTestCase):
_aq_reset
()
# XXX Fails XXX _setLastId not found when doing newContent
def
createInteractionWorkflowWithTwoInteractions
(
self
):
id
=
'test_workflow'
wf_type
=
"interaction_workflow (Web-configurable interaction workflow)"
wf
=
self
.
_createInteractionWorkflowWithId
(
id
)
wf
=
self
.
_createInteractionWorkflowWithId
(
'test_workflow'
)
self
.
wf
=
wf
wf
.
scripts
.
manage_addProduct
[
'PythonScripts'
]
\
.
manage_addPythonScript
(
id
=
'afterEditA'
)
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testInteractionWorkflow.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testInteractionWorkflow
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5.tests.testInteractionWorkflow
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testInteractionWorkflow
</string>
</value>
...
...
@@ -37,12 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 82, 4: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W: 83, 4: Unused variable \'wf_type\' (unused-variable)
</string>
<string>
W:100, 4: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:101, 4: Unused variable \'wf_type\' (unused-variable)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -52,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -71,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -80,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testIntrospectionTool.py
View file @
8d8066c9
...
...
@@ -26,34 +26,14 @@
#
##############################################################################
import
unittest
from
AccessControl.SecurityManagement
import
newSecurityManager
import
json
from
Products.ERP5Type.tests.ERP5TypeTestCase
import
ERP5TypeTestCase
import
json
class
TestIntrospectionTool
(
ERP5TypeTestCase
):
def
getBusinessTemplateList
(
self
):
""" """
return
(
'erp5_base'
,)
def
afterSetUp
(
self
):
self
.
portal
=
self
.
getPortal
()
self
.
login
()
def
login
(
self
):
uf
=
self
.
getPortal
().
acl_users
uf
.
_doAddUser
(
'seb'
,
''
,
[
'Manager'
],
[])
uf
.
_doAddUser
(
'ERP5TypeTestCase'
,
''
,
[
'Manager'
],
[])
user
=
uf
.
getUserById
(
'seb'
).
__of__
(
uf
)
newSecurityManager
(
None
,
user
)
def
test_getSystemSignatureJSON
(
self
):
"""
Test
"""
signature_json
=
self
.
portal
.
portal_introspections
.
getSystemSignatureAsJSON
()
signature_by_json
=
json
.
loads
(
signature_json
)
signature
=
self
.
portal
.
portal_introspections
.
getSystemSignatureDict
()
...
...
@@ -62,7 +42,3 @@ class TestIntrospectionTool(ERP5TypeTestCase):
for
key
in
signature
:
self
.
assertEqual
(
signature
[
key
],
signature_by_json
[
key
])
def
test_suite
():
suite
=
unittest
.
TestSuite
()
suite
.
addTest
(
unittest
.
makeSuite
(
TestIntrospectionTool
))
return
suite
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testIntrospectionTool.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testIntrospectionTool
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5.tests.testIntrospectionTool
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testIntrospectionTool
</string>
</value>
...
...
@@ -37,9 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 46, 2: Arguments number differs from overridden \'login\' method (arguments-differ)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -49,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -68,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -77,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testLocalizer.py
View file @
8d8066c9
...
...
@@ -150,7 +150,7 @@ class TestLocalizer(ERP5TypeTestCase):
{
'fr'
:
"C'est 1€."
,
'note'
:
''
,})
localizer
=
portal
.
Localizer
test_script
=
createZODBPythonScript
(
portal
.
portal_skins
.
custom
,
createZODBPythonScript
(
portal
.
portal_skins
.
custom
,
'test_script'
,
''
,
"""
def assertEquals(a, b):
if a != b:
...
...
@@ -191,7 +191,6 @@ assertEquals("This is 1€.", context.Base_translateString("This is 1€."))
value (e.g. the original message) must be returned
"""
message
=
" This is 1€ non-translated "
localizer
=
self
.
portal
.
Localizer
# Base_translateString == Localizer.translate() currently, which calls
# zope.i18n.translate and sets 'default' to 'message' before passing it to
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testLocalizer.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testLocalizer
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5Type.tests.testLocalizer
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testLocalizer
</string>
</value>
...
...
@@ -37,10 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W:153, 4: Unused variable \'test_script\' (unused-variable)
</string>
<string>
W:194, 4: Unused variable \'localizer\' (unused-variable)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -50,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -69,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -78,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testMemcachedTool.py
View file @
8d8066c9
...
...
@@ -74,11 +74,8 @@ class TestMemcachedTool(ERP5TypeTestCase):
self
.
tic
()
def
afterSetUp
(
self
):
self
.
login
()
def
login
(
self
):
uf
=
self
.
portal
.
acl_users
uf
.
_doAddUser
(
'vincent'
,
''
,
[
'Manager'
],
[])
uf
.
_doAddUser
(
'vincent'
,
self
.
newPassword
()
,
[
'Manager'
],
[])
user
=
uf
.
getUserById
(
'vincent'
).
__of__
(
uf
)
newSecurityManager
(
None
,
user
)
...
...
@@ -104,6 +101,7 @@ class TestMemcachedTool(ERP5TypeTestCase):
memcached_tool
=
self
.
portal
.
portal_memcached
try
:
import
memcache
del
memcache
except
ImportError
:
# MemcachedTool should be disabled
self
.
assertRaises
(
RuntimeError
,
memcached_tool
.
getMemcachedDict
)
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testMemcachedTool.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testMemcachedTool
</string>
</value>
...
...
@@ -43,10 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 79, 2: Arguments number differs from overridden \'login\' method (arguments-differ)
</string>
<string>
W:106, 6: Unused variable \'memcache\' (unused-variable)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -56,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -75,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -84,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testNotificationMessageModule.py
View file @
8d8066c9
...
...
@@ -39,12 +39,9 @@ class TestNotificationMessageModule(ERP5TypeTestCase):
def
getBusinessTemplateList
(
self
):
return
(
'erp5_base'
,)
def
createUser
(
self
,
name
,
role_list
):
self
.
portal
.
acl_users
.
_doAddUser
(
name
,
self
.
newPassword
(),
role_list
,
[])
def
afterSetUp
(
self
):
self
.
createUser
(
'erp5user'
,
[
'Auditor'
,
'Author'
])
self
.
createUser
(
'manager'
,
[
'Manager'
])
self
.
portal
.
acl_users
.
_doAddUser
(
'erp5user'
,
self
.
newPassword
(),
[
'Auditor'
,
'Author'
],
[
])
self
.
portal
.
acl_users
.
_doAddUser
(
'manager'
,
self
.
newPassword
(),
[
'Manager'
],
[
])
self
.
portal
.
email_from_address
=
'site@example.invalid'
self
.
loginByUserName
(
'erp5user'
)
...
...
@@ -130,7 +127,7 @@ class TestNotificationMessageModule(ERP5TypeTestCase):
text_content_substitution_mapping_method_id
=
'NotificationMessage_getDummySubstitionMapping'
)
mime
,
text
=
doc
.
convert
(
'txt'
,
_
,
text
=
doc
.
convert
(
'txt'
,
substitution_method_parameter_dict
=
dict
(
a
=
'b'
))
self
.
assertEqual
(
'substitution text: b'
,
text
.
rstrip
())
...
...
@@ -148,7 +145,7 @@ class TestNotificationMessageModule(ERP5TypeTestCase):
text_content_substitution_mapping_method_id
=
'NotificationMessage_getDummySubstitionMapping'
)
mime
,
text
=
doc
.
convert
(
'txt'
)
_
,
text
=
doc
.
convert
(
'txt'
)
self
.
assertEqual
(
'substitution text: b'
,
text
.
rstrip
())
def
test_safe_substitution_content
(
self
):
...
...
@@ -167,7 +164,7 @@ class TestNotificationMessageModule(ERP5TypeTestCase):
text_content_substitution_mapping_method_id
=
'NotificationMessage_getDummySubstitionMapping'
)
mime
,
text
=
doc
.
convert
(
'txt'
)
_
,
text
=
doc
.
convert
(
'txt'
)
self
.
assertEqual
(
'substitution text: ${b}'
,
text
.
rstrip
())
self
.
assertEqual
(
'${b}'
,
doc
.
asSubjectText
())
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testNotificationMessageModule.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testNotificationMessageModule
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5.tests.testNotificationMessageModule
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testNotificationMessageModule
</string>
</value>
...
...
@@ -37,12 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 49, 2: Arguments number differs from overridden \'createUser\' method (arguments-differ)
</string>
<string>
W:149, 4: Unused variable \'mime\' (unused-variable)
</string>
<string>
W:168, 4: Unused variable \'mime\' (unused-variable)
</string>
<string>
W:187, 4: Unused variable \'mime\' (unused-variable)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -52,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -71,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -80,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testNotificationTool.py
View file @
8d8066c9
...
...
@@ -38,7 +38,7 @@ from email.header import decode_header, make_header
from
email.utils
import
parseaddr
# Copied from ERP5Type/patches/CMFMailIn.py
def
decode_email
(
file
):
def
decode_email
(
file
_
):
# Prepare result
theMail
=
{
'attachment_list'
:
[],
...
...
@@ -47,9 +47,9 @@ def decode_email(file):
'headers'
:
{}
}
# Get Message
msg
=
email
.
message_from_string
(
file
)
msg
=
email
.
message_from_string
(
file
_
)
# Back up original file
theMail
[
'__original__'
]
=
file
theMail
[
'__original__'
]
=
file
_
# Recode headers to UTF-8 if needed
for
key
,
value
in
msg
.
items
():
decoded_value_list
=
decode_header
(
value
)
...
...
@@ -107,7 +107,7 @@ class TestNotificationTool(ERP5TypeTestCase):
def
getTitle
(
self
):
return
"Notification Tool"
def
createUser
(
self
,
name
,
role_list
):
def
createUser
(
self
,
name
,
role_list
):
# pylint:disable=arguments-differ
user_folder
=
self
.
getPortal
().
acl_users
user_folder
.
_doAddUser
(
name
,
'password'
,
role_list
,
[])
...
...
@@ -196,8 +196,8 @@ class TestNotificationTool(ERP5TypeTestCase):
self
.
portal
.
portal_notifications
.
sendMessage
(
recipient
=
sequence
[
'user_a_id'
],
subject
=
'Subject'
,
message
=
'Message'
)
last_message
=
self
.
portal
.
MailHost
.
_last_message
self
.
assertNotEqual
s
((),
last_message
)
mfrom
,
mto
,
messageText
=
last_message
self
.
assertNotEqual
(
last_message
,
()
)
mfrom
,
mto
,
_
=
last_message
self
.
assertEqual
(
'Portal Administrator <site@example.invalid>'
,
mfrom
)
self
.
assertEqual
([
'userA@example.invalid'
],
mto
)
...
...
@@ -236,8 +236,8 @@ class TestNotificationTool(ERP5TypeTestCase):
self
.
portal
.
portal_notifications
.
sendMessage
(
subject
=
'Subject'
,
message
=
'Message'
)
last_message
=
self
.
portal
.
MailHost
.
_last_message
self
.
assertNotEqual
s
((),
last_message
)
mfrom
,
mto
,
messageText
=
last_message
self
.
assertNotEqual
(
last_message
,
()
)
mfrom
,
mto
,
_
=
last_message
self
.
assertEqual
(
'Portal Administrator <site@example.invalid>'
,
mfrom
)
self
.
assertEqual
([
'site@example.invalid'
],
mto
)
...
...
@@ -249,8 +249,8 @@ class TestNotificationTool(ERP5TypeTestCase):
self
.
portal
.
portal_notifications
.
sendMessage
(
recipient
=
sequence
[
'user_a_id'
],
subject
=
'Subject'
,
)
last_message
=
self
.
portal
.
MailHost
.
_last_message
self
.
assertNotEqual
s
((),
last_message
)
mfrom
,
mto
,
messageText
=
last_message
self
.
assertNotEqual
(
last_message
,
()
)
mfrom
,
mto
,
_
=
last_message
self
.
assertEqual
(
'Portal Administrator <site@example.invalid>'
,
mfrom
)
self
.
assertEqual
([
'userA@example.invalid'
],
mto
)
...
...
@@ -272,7 +272,7 @@ class TestNotificationTool(ERP5TypeTestCase):
self
.
portal
.
portal_notifications
.
sendMessage
(
recipient
=
sequence
[
'user_a_id'
],
subject
=
'Subject'
,
message
=
'Message'
)
last_message
=
self
.
portal
.
MailHost
.
_last_message
self
.
assertNotEqual
s
((),
last_message
)
self
.
assertNotEqual
(
last_message
,
()
)
mfrom
,
mto
,
messageText
=
last_message
self
.
assertEqual
(
'Portal Administrator <site@example.invalid>'
,
mfrom
)
self
.
assertEqual
([
'userA@example.invalid'
],
mto
)
...
...
@@ -313,7 +313,7 @@ class TestNotificationTool(ERP5TypeTestCase):
])
last_message
=
self
.
portal
.
MailHost
.
_last_message
self
.
assertNotEqual
s
((),
last_message
)
self
.
assertNotEqual
(
last_message
,
()
)
mfrom
,
mto
,
messageText
=
last_message
self
.
assertEqual
(
'Portal Administrator <site@example.invalid>'
,
mfrom
)
self
.
assertEqual
([
'userA@example.invalid'
],
mto
)
...
...
@@ -345,14 +345,14 @@ class TestNotificationTool(ERP5TypeTestCase):
recipient
=
[
sequence
[
'user_a_id'
],
sequence
[
'user_b_id'
]],
subject
=
'Subject'
,
message
=
'Message'
)
last_message
=
self
.
portal
.
MailHost
.
_last_message
self
.
assertNotEqual
s
((),
last_message
)
mfrom
,
mto
,
messageText
=
last_message
self
.
assertNotEqual
(
last_message
,
()
)
mfrom
,
mto
,
_
=
last_message
self
.
assertEqual
(
'Portal Administrator <site@example.invalid>'
,
mfrom
)
self
.
assertEqual
([
'userB@example.invalid'
],
mto
)
previous_message
=
self
.
portal
.
MailHost
.
_previous_message
self
.
assertNotEqual
s
((),
previous_message
)
mfrom
,
mto
,
messageText
=
previous_message
self
.
assertNotEqual
(
last_message
,
()
)
mfrom
,
mto
,
_
=
previous_message
self
.
assertEqual
(
'Portal Administrator <site@example.invalid>'
,
mfrom
)
self
.
assertEqual
([
'userA@example.invalid'
],
mto
)
...
...
@@ -400,7 +400,7 @@ class TestNotificationTool(ERP5TypeTestCase):
self
.
portal
.
portal_notifications
.
sendMessage
(
recipient
=
person
.
getObject
(),
subject
=
'Subject'
,
message
=
'Message'
)
last_message
=
self
.
portal
.
MailHost
.
_last_message
self
.
assertNotEqual
s
((),
last_message
)
self
.
assertNotEqual
(
last_message
,
()
)
mfrom
,
mto
,
messageText
=
last_message
self
.
assertEqual
(
'Portal Administrator <site@example.invalid>'
,
mfrom
)
self
.
assertEqual
([
'userA@example.invalid'
],
mto
)
...
...
@@ -434,7 +434,7 @@ Yes, I will go."""
recipient
=
sequence
[
'user_a_id'
],
subject
=
'Subject'
,
message_text_format
=
'text/plain'
,
message
=
message
)
last_message
=
self
.
portal
.
MailHost
.
_last_message
self
.
assertNotEqual
s
((),
last_message
)
self
.
assertNotEqual
(
last_message
,
()
)
mfrom
,
mto
,
messageText
=
last_message
self
.
assertEqual
(
'Portal Administrator <site@example.invalid>'
,
mfrom
)
self
.
assertEqual
([
'userA@example.invalid'
],
mto
)
...
...
@@ -493,7 +493,7 @@ Yes, I will go."""
self
.
portal
.
portal_notifications
.
sendMessage
(
recipient
=
sequence
[
'user_a_id'
],
subject
=
'Subject'
,
message
=
'Message'
)
last_message
=
self
.
portal
.
MailHost
.
_last_message
self
.
assertNotEqual
s
((),
last_message
)
self
.
assertNotEqual
(
last_message
,
()
)
def
test_permission_on_recipient_not_needed
(
self
):
"""Notification Tool can be used to send Messages even when user does not
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testNotificationTool.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testNotificationTool
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5.tests.testNotificationTool
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testNotificationTool
</string>
</value>
...
...
@@ -37,15 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 64, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W: 41, 17: Redefining built-in \'file\' (redefined-builtin)
</string>
<string>
W:110, 2: Arguments number differs from overridden \'createUser\' method (arguments-differ)
</string>
<string>
W:200, 16: Unused variable \'messageText\' (unused-variable)
</string>
<string>
W:240, 16: Unused variable \'messageText\' (unused-variable)
</string>
<string>
W:253, 16: Unused variable \'messageText\' (unused-variable)
</string>
<string>
W:349, 16: Unused variable \'messageText\' (unused-variable)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -55,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -74,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -83,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testSessionTool.py
View file @
8d8066c9
...
...
@@ -29,7 +29,6 @@
import
unittest
from
Products.ERP5Type.tests.ERP5TypeTestCase
import
ERP5TypeTestCase
from
AccessControl.SecurityManagement
import
newSecurityManager
from
Products.ERP5Type.tests.Sequence
import
SequenceList
from
erp5.component.tool.SessionTool
import
SESSION_CACHE_FACTORY
from
string
import
letters
as
LETTERS
...
...
@@ -47,27 +46,6 @@ class TestSessionTool(ERP5TypeTestCase):
session_id
=
"123456789"
def
getTitle
(
self
):
return
"Session Tool"
def
afterSetUp
(
self
):
# create a Memcached Plugin
memcached_tool
=
self
.
portal
.
portal_memcached
#create Memcache Plugin
if
getattr
(
memcached_tool
,
'default_memcached_plugin'
,
None
)
is
None
:
memcached_tool
.
newContent
(
id
=
'default_memcached_plugin'
,
portal_type
=
'Memcached Plugin'
,
int_index
=
0
,
url_string
=
'127.0.0.1:11211'
)
self
.
login
()
def
login
(
self
):
uf
=
self
.
portal
.
acl_users
uf
.
_doAddUser
(
'ivan'
,
''
,
[
'Manager'
],
[])
uf
.
_doAddUser
(
'ERP5TypeTestCase'
,
''
,
[
'Manager'
],
[])
user
=
uf
.
getUserById
(
'ivan'
).
__of__
(
uf
)
newSecurityManager
(
None
,
user
)
def
_changeCachePlugin
(
self
,
portal_type
,
storage_duration
=
86400
):
""" Change current cache plugin with new one. """
portal_caches
=
self
.
portal
.
portal_caches
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testSessionTool.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testSessionTool
</string>
</value>
...
...
@@ -43,9 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 70, 2: Arguments number differs from overridden \'login\' method (arguments-differ)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -55,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -74,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -83,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTimeout.py
View file @
8d8066c9
...
...
@@ -75,4 +75,4 @@ class TestTimeout(ERP5TypeTestCase):
with
Deadline
(
1.0
):
time
.
sleep
(
2
)
with
self
.
assertRaises
(
TimeoutReachedError
):
[
x
.
getObject
()
for
x
in
self
.
portal
.
portal_templates
.
searchFolder
()]
_
=
[
x
.
getObject
()
for
x
in
self
.
portal
.
portal_templates
.
searchFolder
()]
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTimeout.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testTimeout
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5Type.tests.testTimeout
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testTimeout
</string>
</value>
...
...
@@ -37,9 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 78, 8: Expression "[x.getObject() for x in self.portal.portal_templates.searchFolder()]" is assigned to nothing (expression-not-assigned)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -49,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -68,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -77,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTimerService.py
View file @
8d8066c9
...
...
@@ -26,14 +26,12 @@
#
##############################################################################
import
unittest
from
Products.ERP5Type.tests.ERP5TypeTestCase
import
ERP5TypeTestCase
from
AccessControl.SecurityManagement
import
newSecurityManager
,
\
noSecurityManager
from
AccessControl.SecurityManagement
import
noSecurityManager
from
AccessControl.ZopeGuards
import
guarded_apply
,
guarded_getattr
from
zExceptions
import
Unauthorized
class
TestTimerService
(
ERP5TypeTestCase
):
"""
Test TimerService-related features. Maybe this should be put in TimerService
...
...
@@ -41,20 +39,6 @@ class TestTimerService(ERP5TypeTestCase):
idea to put an ERP5-type test in it.
"""
def
getTitle
(
self
):
return
"TimerService"
def
getBusinessTemplateList
(
self
):
"""
"""
return
()
def
afterSetUp
(
self
):
uf
=
self
.
portal
.
acl_users
uf
.
_doAddUser
(
'rc'
,
''
,
[
'Manager'
],
[])
user
=
uf
.
getUserById
(
'rc'
).
__of__
(
uf
)
newSecurityManager
(
None
,
user
)
def
test_01_checkAnonymousProcessing
(
self
):
"""
Test whether a timer can be invoked by anonymous.
...
...
@@ -66,11 +50,6 @@ class TestTimerService(ERP5TypeTestCase):
guarded_apply
(
process_timer
,
(
0
,))
except
Unauthorized
:
self
.
fail
(
'calling process_timer is unauthorized'
)
except
:
except
Exception
:
# Do not care about any exception but unauthorized.
pass
def
test_suite
():
suite
=
unittest
.
TestSuite
()
suite
.
addTest
(
unittest
.
makeSuite
(
TestTimerService
))
return
suite
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTimerService.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testTimerService
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5Type.tests.testTimerService
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testTimerService
</string>
</value>
...
...
@@ -37,12 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 66, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W: 68, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W: 71, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W: 69, 4: No exception type(s) specified (bare-except)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -52,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -71,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -80,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTransactionalVariable.py
View file @
8d8066c9
...
...
@@ -43,7 +43,7 @@ class TestTransactionalVariable(TestCase):
tv
.
clear
()
self
.
assertEqual
(
len
(
tv
),
0
)
with
self
.
assertRaises
(
KeyError
):
tv
[
'toto'
]
_
=
tv
[
'toto'
]
tv
[
'toto'
]
=
'titi'
self
.
assertEqual
(
len
(
tv
),
1
)
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTransactionalVariable.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testTransactionalVariable
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5Type.tests.testTransactionalVariable
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testTransactionalVariable
</string>
</value>
...
...
@@ -37,56 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 34, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 36, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 37, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 39, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 43, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 44, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 45, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 46, 0: Bad indentation. Found 8 spaces, expected 6 (bad-indentation)
</string>
<string>
W: 48, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 49, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 50, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 52, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 53, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 54, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 55, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 57, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 58, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 59, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 60, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 62, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 63, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 66, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 67, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 68, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 71, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 72, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 73, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 74, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 77, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 78, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 79, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 80, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 82, 0: Bad indentation. Found 4 spaces, expected 2 (bad-indentation)
</string>
<string>
W: 83, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 86, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 87, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 88, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 92, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 93, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 94, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 95, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 96, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 97, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:101, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:102, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:103, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W:104, 0: Bad indentation. Found 6 spaces, expected 4 (bad-indentation)
</string>
<string>
W: 46, 8: Statement seems to have no effect (pointless-statement)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -96,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -115,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -124,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTrashTool.py
View file @
8d8066c9
...
...
@@ -53,13 +53,8 @@ class TestTrashTool(ERP5TypeTestCase):
return
1
def
afterSetUp
(
self
):
self
.
login
()
portal
=
self
.
getPortal
()
catalog_tool
=
self
.
getCatalogTool
()
def
login
(
self
):
uf
=
self
.
getPortal
().
acl_users
uf
.
_doAddUser
(
'seb'
,
''
,
[
'Manager'
],
[])
uf
=
self
.
portal
.
acl_users
uf
.
_doAddUser
(
'seb'
,
self
.
newPassword
(),
[
'Manager'
],
[])
user
=
uf
.
getUserById
(
'seb'
).
__of__
(
uf
)
newSecurityManager
(
None
,
user
)
...
...
@@ -81,9 +76,8 @@ class TestTrashTool(ERP5TypeTestCase):
base_category
=
pc
.
_getOb
(
bc_id
,
None
)
self
.
assertTrue
(
base_category
is
not
None
)
category_list
=
[]
for
i
in
xrange
(
10
):
for
_
in
xrange
(
10
):
category
=
base_category
.
newContent
(
portal_type
=
'Category'
)
self
.
assertTrue
(
category
is
not
None
)
category_list
.
append
(
category
.
getId
())
sequence
.
edit
(
category_id_list
=
category_list
)
...
...
@@ -95,13 +89,13 @@ class TestTrashTool(ERP5TypeTestCase):
erp5_core
=
ps
[
'erp5_core'
]
erp5_core
.
manage_addFolder
(
id
=
"image"
)
image
=
erp5_core
.
_getOb
(
"image"
)
f
=
image
.
manage_addFile
(
id
=
"file"
)
image
.
manage_addFile
(
id
=
"file"
)
def
stepCheckTrashToolExists
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
Check existence of trash tool
"""
self
.
assert
True
(
self
.
getTrashTool
()
is
not
None
)
self
.
assert
IsNotNone
(
self
.
getTrashTool
()
)
def
stepCreateTrashBin
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
"""
...
...
@@ -193,11 +187,10 @@ class TestTrashTool(ERP5TypeTestCase):
trash_id
=
sequence
.
get
(
'trash_id'
)
trash
=
self
.
getTrashTool
()
trashbin
=
trash
.
_getOb
(
trash_id
,
None
)
self
.
assert
True
(
trashbin
is
not
None
)
self
.
assert
IsNotNone
(
trashbin
)
# get category trash folder
bc_id
=
sequence
.
get
(
'bc_id'
)
trashbin_objects_list
=
list
(
trashbin
.
objectValues
())
self
.
assertTrue
(
len
(
trashbin_objects_list
)
>
0
)
self
.
assertEqual
(
len
(
trashbin_objects_list
),
1
)
obj
=
trashbin_objects_list
[
0
]
self
.
assertEqual
(
obj
.
getId
(),
'portal_categories_items'
)
...
...
@@ -215,11 +208,10 @@ class TestTrashTool(ERP5TypeTestCase):
subcat_objects_list
=
(
cat_object
.
objectIds
())
self
.
assertNotEqual
(
len
(
subcat_objects_list
),
0
)
categ_id_list
=
sequence
.
get
(
'category_id_list'
)
for
id
in
subcat_objects_list
:
self
.
assertTrue
(
id
in
categ_id_list
)
cat
=
cat_object
.
_getOb
(
id
,
None
)
self
.
assertTrue
(
cat
is
not
None
)
self
.
assertTrue
(
cat
.
isIndexable
,
0
)
for
id_
in
subcat_objects_list
:
self
.
assertIn
(
id_
,
categ_id_list
)
cat
=
cat_object
.
_getOb
(
id_
,
None
)
self
.
assertTrue
(
cat
.
isIndexable
)
self
.
assertEqual
(
cat
.
getPortalType
(),
'Category'
)
def
stepCheckFolderObjectBackup
(
self
,
sequence
=
None
,
sequence_list
=
None
,
**
kw
):
...
...
@@ -230,7 +222,6 @@ class TestTrashTool(ERP5TypeTestCase):
trash
=
self
.
getTrashTool
()
trashbin
=
trash
.
_getOb
(
trash_id
,
None
)
self
.
assertTrue
(
trashbin
is
not
None
)
bc_id
=
sequence
.
get
(
'bc_id'
)
trashbin_objects_list
=
list
(
trashbin
.
objectValues
())
self
.
assertTrue
(
len
(
trashbin_objects_list
)
>
0
)
self
.
assertEqual
(
len
(
trashbin_objects_list
),
1
)
...
...
@@ -318,8 +309,6 @@ class TestTrashTool(ERP5TypeTestCase):
bc_id
=
sequence
.
get
(
'bc_id'
)
pc
=
self
.
getCategoryTool
()
base_category
=
pc
.
_getOb
(
bc_id
,
None
)
self
.
assertTrue
(
base_category
is
not
None
)
subobjects_ids
=
base_category
.
objectIds
()
bc_path
=
base_category
.
getPath
().
split
(
'/'
)[
2
:
-
1
]
# check backup
backup_subobjects_ids
=
trash
.
backupObject
(
trashbin
,
bc_path
,
bc_id
,
save
=
1
,
keep_subobjects
=
1
)
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testTrashTool.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testTrashTool
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5.tests.testTrashTool
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testTrashTool
</string>
</value>
...
...
@@ -37,16 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 57, 4: Unused variable \'portal\' (unused-variable)
</string>
<string>
W: 58, 4: Unused variable \'catalog_tool\' (unused-variable)
</string>
<string>
W: 60, 2: Arguments number differs from overridden \'login\' method (arguments-differ)
</string>
<string>
W: 84, 8: Unused variable \'i\' (unused-variable)
</string>
<string>
W: 98, 4: Unused variable \'f\' (unused-variable)
</string>
<string>
W:218, 8: Redefining built-in \'id\' (redefined-builtin)
</string>
<string>
W:233, 4: Unused variable \'bc_id\' (unused-variable)
</string>
<string>
W:322, 4: Unused variable \'subobjects_ids\' (unused-variable)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -56,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -75,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -84,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testWorkflowHistoryList.py
View file @
8d8066c9
...
...
@@ -94,7 +94,7 @@ class TestWorkflowHistoryList(TestCase):
a
=
EXPECTED
[
item
]
except
IndexError
:
with
self
.
assertRaises
(
IndexError
):
ddl
[
item
]
_
=
ddl
[
item
]
else
:
assert
a
!=
[],
a
self
.
assertEqual
(
a
,
ddl
[
item
])
...
...
@@ -102,16 +102,16 @@ class TestWorkflowHistoryList(TestCase):
i
=
COUNT
+
1
for
i
in
xrange
(
-
i
,
i
):
check
[
i
]
check
[
-
50
:
10
]
check
[:
20
:
3
]
check
[
5
:
40
]
check
[
32
::
4
]
check
[::
-
1
]
check
[
-
5
::
-
7
]
check
[
50
:
40
:
-
1
]
check
[
30
:
-
50
:
-
4
]
check
[:
30
:
-
3
]
_
=
check
[
i
]
_
=
check
[
-
50
:
10
]
_
=
check
[:
20
:
3
]
_
=
check
[
5
:
40
]
_
=
check
[
32
::
4
]
_
=
check
[::
-
1
]
_
=
check
[
-
5
::
-
7
]
_
=
check
[
50
:
40
:
-
1
]
_
=
check
[
30
:
-
50
:
-
4
]
_
=
check
[:
30
:
-
3
]
self
.
assertFalse
(
ddl
[
-
5
:
30
])
self
.
assertFalse
(
ddl
[
30
:
-
5
:
-
1
])
...
...
@@ -129,8 +129,7 @@ class TestWorkflowHistoryList(TestCase):
@
fixed_count_bucket
def
test_01_DoublyLinkList
(
self
):
EXPECTED
=
range
(
COUNT
)
self
.
checkList
(
new
(
DoublyLinkList
,
EXPECTED
))
self
.
checkList
(
new
(
DoublyLinkList
,
range
(
COUNT
)))
@
fixed_count_bucket
def
test_02_LegacyWorkflowHistoryList
(
self
):
...
...
@@ -205,10 +204,10 @@ class TestDedup(ERP5TypeTestCase):
self
.
login
()
deduped
=
[]
def
dedupStrings
(
obj
):
new
=
orig_dedupStrings
(
obj
)
self
.
assertEqual
(
new
,
obj
)
deduped
.
append
(
len
(
new
))
return
new
new
_obj
=
orig_dedupStrings
(
obj
)
self
.
assertEqual
(
new
_obj
,
obj
)
deduped
.
append
(
len
(
new
_obj
))
return
new
_obj
from
Products.ERP5Type
import
Workflow
orig_dedupStrings
=
Workflow
.
dedupStrings
try
:
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testWorkflowHistoryList.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testWorkflowHistoryList
</string>
</value>
...
...
@@ -43,21 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 97, 12: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:105, 6: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:106, 4: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:107, 4: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:108, 4: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:109, 4: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:110, 4: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:111, 4: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:112, 4: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:113, 4: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:114, 4: Statement seems to have no effect (pointless-statement)
</string>
<string>
W:132, 4: Redefining name \'EXPECTED\' from outer scope (line 76) (redefined-outer-name)
</string>
<string>
W:206, 6: Redefining name \'new\' from outer scope (line 55) (redefined-outer-name)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -67,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -86,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -95,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testXMLPickle.py
View file @
8d8066c9
...
...
@@ -78,7 +78,7 @@ class TestXMLPickle(unittest.TestCase):
reconstructed_obj
=
pickle
.
loads
(
reconstructed_pickled_data
)
self
.
assert_
(
reconstructed_obj
.
__class__
is
DummyClass
)
self
.
assert_
(
type
(
getattr
(
reconstructed_obj
,
'data'
,
None
))
is
list
)
self
.
assert_
(
type
(
getattr
(
reconstructed_obj
,
'data'
,
None
))
is
list
)
# pylint:disable=unidiomatic-typecheck
self
.
assertEqual
(
reconstructed_obj
.
data
[
0
],
1
)
self
.
assert_
(
reconstructed_obj
.
data
[
1
]
is
reconstructed_obj
)
self
.
assert_
(
reconstructed_obj
.
data
[
2
]
is
reconstructed_obj
.
data
)
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testXMLPickle.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testXMLPickle
</string>
</value>
...
...
@@ -43,9 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 81, 17: Using type() instead of isinstance() for a typecheck. (unidiomatic-typecheck)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -55,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -74,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -83,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testZODBHistory.py
View file @
8d8066c9
...
...
@@ -69,19 +69,9 @@ class TestZODBHistory(ERP5TypeTestCase):
def
setUpUser
(
self
):
""" Set up a user to test normal users can use this function. """
self
.
addUser
(
'tatuya'
)
def
addUser
(
self
,
user_name
,
role
=
[
'Member'
,
'Owner'
,
'Assignor'
]):
""" Create a test user."""
uf
=
self
.
portal
.
acl_users
if
not
uf
.
getUserById
(
user_name
):
uf
.
_doAddUser
(
user_name
,
''
,
role
,
[])
def
_clearCache
(
self
):
""" Clear cache to validate the preference modification. """
self
.
portal
.
portal_caches
.
clearCache
(
cache_factory_list
=
(
'erp5_ui_short'
,
# for preference cache
))
if
not
uf
.
getUserById
(
'tatuya'
):
uf
.
_doAddUser
(
'tatuya'
,
''
,
[
'Member'
,
'Owner'
,
'Assignor'
],
[])
def
test_01_testZODBHistory
(
self
):
"""
...
...
@@ -116,7 +106,6 @@ class TestZODBHistory(ERP5TypeTestCase):
# changes the limit to 100
preference
.
setPreferredHtmlStyleZodbHistorySize
(
100
)
self
.
_clearCache
()
self
.
assertEqual
(
preference
.
getPreferredHtmlStyleZodbHistorySize
(),
100
)
history_list
=
org2
.
Base_getZODBHistoryList
()
# Now that the limit is 100, thus the history page show the all history
...
...
bt5/erp5_core_test/TestTemplateItem/portal_components/test.erp5.testZODBHistory.xml
View file @
8d8066c9
...
...
@@ -6,6 +6,12 @@
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_recorded_property_dict
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
testZODBHistory
</string>
</value>
...
...
@@ -14,6 +20,12 @@
<key>
<string>
default_source_reference
</string>
</key>
<value>
<string>
Products.ERP5.tests.testZODBHistory
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
test.erp5.testZODBHistory
</string>
</value>
...
...
@@ -37,10 +49,7 @@
<item>
<key>
<string>
text_content_warning_message
</string>
</key>
<value>
<tuple>
<string>
W: 61, 0: Bad indentation. Found 7 spaces, expected 6 (bad-indentation)
</string>
<string>
W: 74, 2: Dangerous default value [] as argument (dangerous-default-value)
</string>
</tuple>
<tuple/>
</value>
</item>
<item>
...
...
@@ -50,13 +59,28 @@
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
I
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary/>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
...
...
@@ -69,7 +93,7 @@
<item>
<key>
<string>
component_validation_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
M
=
</string>
</persistent>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAA
Q
=
</string>
</persistent>
</value>
</item>
</dictionary>
...
...
@@ -78,7 +102,7 @@
</dictionary>
</pickle>
</record>
<record
id=
"
3"
aka=
"AAAAAAAAAAM
="
>
<record
id=
"
4"
aka=
"AAAAAAAAAAQ
="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.Workflow"
/>
</pickle>
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment