From b24afe1086463619f5445e4aba23b2d8d0df7024 Mon Sep 17 00:00:00 2001
From: Bryton Lacquement <bryton.lacquement@nexedi.com>
Date: Mon, 3 Aug 2020 12:09:45 +0200
Subject: [PATCH] wip: New bt5: erp5_my2to3_test

---
 .../my2to3%20Test%20Module/view.xml           |  83 ++++++++++++++
 .../portal_types/my2to3%20Test/view.xml       |  83 ++++++++++++++
 .../ModuleTemplateItem/my2to3_test_module.xml |  96 ++++++++++++++++
 .../document.erp5.My2to3TestDocument.py       |   4 +
 .../document.erp5.My2to3TestDocument.xml      |  75 ++++++++++++
 .../extension.erp5.My2to3TestExtension.py     |   4 +
 .../extension.erp5.My2to3TestExtension.xml    |  75 ++++++++++++
 .../interface.erp5.My2to3TestInterface.py     |   6 +
 .../interface.erp5.My2to3TestInterface.xml    |  91 +++++++++++++++
 .../mixin.erp5.My2to3TestMixin.py             |   4 +
 .../mixin.erp5.My2to3TestMixin.xml            |  75 ++++++++++++
 .../module.erp5.My2to3TestModule.py           |   1 +
 .../module.erp5.My2to3TestModule.xml          |  54 +++++++++
 .../test.erp5.testMy2to3Test.py               |  49 ++++++++
 .../test.erp5.testMy2to3Test.xml              |  75 ++++++++++++
 .../tool.erp5.My2to3TestTool.py               |  11 ++
 .../tool.erp5.My2to3TestTool.xml              |  54 +++++++++
 .../allowed_content_types.xml                 |   5 +
 .../base_category_list.xml                    |   5 +
 .../portal_types/my2to3%20Test%20Module.xml   | 108 ++++++++++++++++++
 .../portal_types/my2to3%20Test.xml            |  24 ++++
 .../workflow_chain_type.xml                   |   6 +
 .../portal_skins/erp5_my2to3.xml              |  26 +++++
 .../erp5_my2to3/external_method.xml           |  28 +++++
 .../erp5_my2to3/page_template.xml             |  58 ++++++++++
 .../erp5_my2to3/page_template.zpt             |   1 +
 .../portal_skins/erp5_my2to3/script.py        |   1 +
 .../portal_skins/erp5_my2to3/script.xml       |  62 ++++++++++
 .../bt/template_action_path_list              |   2 +
 .../bt/template_format_version                |   1 +
 .../bt/template_module_id_list                |   1 +
 bt5/erp5_my2to3_test/bt/template_path_list    |   2 +
 ...late_portal_type_allowed_content_type_list |   1 +
 .../template_portal_type_base_category_list   |   1 +
 .../bt/template_portal_type_id_list           |   2 +
 .../template_portal_type_workflow_chain_list  |   1 +
 bt5/erp5_my2to3_test/bt/template_skin_id_list |   1 +
 bt5/erp5_my2to3_test/bt/title                 |   1 +
 bt5/erp5_my2to3_test/bt/version               |   1 +
 39 files changed, 1178 insertions(+)
 create mode 100644 bt5/erp5_my2to3_test/ActionTemplateItem/portal_types/my2to3%20Test%20Module/view.xml
 create mode 100644 bt5/erp5_my2to3_test/ActionTemplateItem/portal_types/my2to3%20Test/view.xml
 create mode 100644 bt5/erp5_my2to3_test/ModuleTemplateItem/my2to3_test_module.xml
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/document.erp5.My2to3TestDocument.py
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/document.erp5.My2to3TestDocument.xml
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/extension.erp5.My2to3TestExtension.py
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/extension.erp5.My2to3TestExtension.xml
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/interface.erp5.My2to3TestInterface.py
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/interface.erp5.My2to3TestInterface.xml
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/mixin.erp5.My2to3TestMixin.py
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/mixin.erp5.My2to3TestMixin.xml
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/module.erp5.My2to3TestModule.py
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/module.erp5.My2to3TestModule.xml
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/test.erp5.testMy2to3Test.py
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/test.erp5.testMy2to3Test.xml
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/tool.erp5.My2to3TestTool.py
 create mode 100644 bt5/erp5_my2to3_test/PathTemplateItem/portal_components/tool.erp5.My2to3TestTool.xml
 create mode 100644 bt5/erp5_my2to3_test/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
 create mode 100644 bt5/erp5_my2to3_test/PortalTypeBaseCategoryTemplateItem/base_category_list.xml
 create mode 100644 bt5/erp5_my2to3_test/PortalTypeTemplateItem/portal_types/my2to3%20Test%20Module.xml
 create mode 100644 bt5/erp5_my2to3_test/PortalTypeTemplateItem/portal_types/my2to3%20Test.xml
 create mode 100644 bt5/erp5_my2to3_test/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
 create mode 100644 bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3.xml
 create mode 100644 bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/external_method.xml
 create mode 100644 bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/page_template.xml
 create mode 100644 bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/page_template.zpt
 create mode 100644 bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/script.py
 create mode 100644 bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/script.xml
 create mode 100644 bt5/erp5_my2to3_test/bt/template_action_path_list
 create mode 100644 bt5/erp5_my2to3_test/bt/template_format_version
 create mode 100644 bt5/erp5_my2to3_test/bt/template_module_id_list
 create mode 100644 bt5/erp5_my2to3_test/bt/template_path_list
 create mode 100644 bt5/erp5_my2to3_test/bt/template_portal_type_allowed_content_type_list
 create mode 100644 bt5/erp5_my2to3_test/bt/template_portal_type_base_category_list
 create mode 100644 bt5/erp5_my2to3_test/bt/template_portal_type_id_list
 create mode 100644 bt5/erp5_my2to3_test/bt/template_portal_type_workflow_chain_list
 create mode 100644 bt5/erp5_my2to3_test/bt/template_skin_id_list
 create mode 100644 bt5/erp5_my2to3_test/bt/title
 create mode 100644 bt5/erp5_my2to3_test/bt/version

diff --git a/bt5/erp5_my2to3_test/ActionTemplateItem/portal_types/my2to3%20Test%20Module/view.xml b/bt5/erp5_my2to3_test/ActionTemplateItem/portal_types/my2to3%20Test%20Module/view.xml
new file mode 100644
index 0000000000..c74a8b8fbe
--- /dev/null
+++ b/bt5/erp5_my2to3_test/ActionTemplateItem/portal_types/my2to3%20Test%20Module/view.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>action</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>action_type/object_list</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>category</string> </key>
+            <value> <string>object_list</string> </value>
+        </item>
+        <item>
+            <key> <string>condition</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>icon</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>view</string> </value>
+        </item>
+        <item>
+            <key> <string>permissions</string> </key>
+            <value>
+              <tuple>
+                <string>View</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Action Information</string> </value>
+        </item>
+        <item>
+            <key> <string>priority</string> </key>
+            <value> <float>1.0</float> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>View</string> </value>
+        </item>
+        <item>
+            <key> <string>visible</string> </key>
+            <value> <int>1</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="Expression" module="Products.CMFCore.Expression"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>text</string> </key>
+            <value> <string>string:${object_url}/my2to3TestModule_viewmy2to3TestList</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/ActionTemplateItem/portal_types/my2to3%20Test/view.xml b/bt5/erp5_my2to3_test/ActionTemplateItem/portal_types/my2to3%20Test/view.xml
new file mode 100644
index 0000000000..d0d892ac25
--- /dev/null
+++ b/bt5/erp5_my2to3_test/ActionTemplateItem/portal_types/my2to3%20Test/view.xml
@@ -0,0 +1,83 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ActionInformation" module="Products.CMFCore.ActionInformation"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>action</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>categories</string> </key>
+            <value>
+              <tuple>
+                <string>action_type/object_view</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>category</string> </key>
+            <value> <string>object_view</string> </value>
+        </item>
+        <item>
+            <key> <string>condition</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>icon</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>view</string> </value>
+        </item>
+        <item>
+            <key> <string>permissions</string> </key>
+            <value>
+              <tuple>
+                <string>View</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Action Information</string> </value>
+        </item>
+        <item>
+            <key> <string>priority</string> </key>
+            <value> <float>1.0</float> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>View</string> </value>
+        </item>
+        <item>
+            <key> <string>visible</string> </key>
+            <value> <int>1</int> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="2" aka="AAAAAAAAAAI=">
+    <pickle>
+      <global name="Expression" module="Products.CMFCore.Expression"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>text</string> </key>
+            <value> <string>string:${object_url}/my2to3Test_view</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/ModuleTemplateItem/my2to3_test_module.xml b/bt5/erp5_my2to3_test/ModuleTemplateItem/my2to3_test_module.xml
new file mode 100644
index 0000000000..b2d78c8c04
--- /dev/null
+++ b/bt5/erp5_my2to3_test/ModuleTemplateItem/my2to3_test_module.xml
@@ -0,0 +1,96 @@
+<module>
+ <id>my2to3_test_module</id>
+ <permission_list>
+  <permission type='tuple'>
+   <name>Access Transient Objects</name>
+   <role>Assignee</role>
+   <role>Assignor</role>
+   <role>Associate</role>
+   <role>Auditor</role>
+   <role>Author</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>Access contents information</name>
+   <role>Assignee</role>
+   <role>Assignor</role>
+   <role>Associate</role>
+   <role>Auditor</role>
+   <role>Author</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>Access session data</name>
+   <role>Assignee</role>
+   <role>Assignor</role>
+   <role>Associate</role>
+   <role>Auditor</role>
+   <role>Author</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>Add portal content</name>
+   <role>Assignor</role>
+   <role>Author</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>Add portal folders</name>
+   <role>Assignor</role>
+   <role>Author</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>Change local roles</name>
+   <role>Assignor</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>Copy or Move</name>
+   <role>Assignee</role>
+   <role>Assignor</role>
+   <role>Associate</role>
+   <role>Auditor</role>
+   <role>Author</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>Delete objects</name>
+   <role>Assignor</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>List folder contents</name>
+   <role>Assignee</role>
+   <role>Assignor</role>
+   <role>Associate</role>
+   <role>Auditor</role>
+   <role>Author</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>Modify portal content</name>
+   <role>Assignor</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>View</name>
+   <role>Assignee</role>
+   <role>Assignor</role>
+   <role>Associate</role>
+   <role>Auditor</role>
+   <role>Manager</role>
+  </permission>
+  <permission type='tuple'>
+   <name>View History</name>
+   <role>Assignee</role>
+   <role>Assignor</role>
+   <role>Associate</role>
+   <role>Auditor</role>
+   <role>Author</role>
+   <role>Manager</role>
+  </permission>
+ </permission_list>
+ <portal_type>my2to3 Test Module</portal_type>
+ <title>my2to3 Tests</title>
+</module>
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/document.erp5.My2to3TestDocument.py b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/document.erp5.My2to3TestDocument.py
new file mode 100644
index 0000000000..9bde3c0b3e
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/document.erp5.My2to3TestDocument.py
@@ -0,0 +1,4 @@
+class My2to3TestDocument:
+  pass
+
+1 / 2
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/document.erp5.My2to3TestDocument.xml b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/document.erp5.My2to3TestDocument.xml
new file mode 100644
index 0000000000..a91724fa02
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/document.erp5.My2to3TestDocument.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Document Component" module="erp5.portal_type"/>
+    </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>My2to3TestDocument</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>document.erp5.My2to3TestDocument</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Document Component</string> </value>
+        </item>
+        <item>
+            <key> <string>sid</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_error_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_warning_message</string> </key>
+            <value>
+              <tuple>
+                <string>W:  4,  0: Statement seems to have no effect (pointless-statement)</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value> <string>erp5</string> </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>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/extension.erp5.My2to3TestExtension.py b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/extension.erp5.My2to3TestExtension.py
new file mode 100644
index 0000000000..abefd5049b
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/extension.erp5.My2to3TestExtension.py
@@ -0,0 +1,4 @@
+def foo():
+  return 1 / 2
+
+1 / 2
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/extension.erp5.My2to3TestExtension.xml b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/extension.erp5.My2to3TestExtension.xml
new file mode 100644
index 0000000000..215222874f
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/extension.erp5.My2to3TestExtension.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Extension Component" module="erp5.portal_type"/>
+    </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>My2to3TestExtension</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>extension.erp5.My2to3TestExtension</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Extension Component</string> </value>
+        </item>
+        <item>
+            <key> <string>sid</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_error_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_warning_message</string> </key>
+            <value>
+              <tuple>
+                <string>W:  4,  0: Statement seems to have no effect (pointless-statement)</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value> <string>erp5</string> </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>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/interface.erp5.My2to3TestInterface.py b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/interface.erp5.My2to3TestInterface.py
new file mode 100644
index 0000000000..6590ede4c7
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/interface.erp5.My2to3TestInterface.py
@@ -0,0 +1,6 @@
+from zope.interface import Interface
+
+class My2to3TestInterface(Interface):
+  pass
+
+1 / 2
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/interface.erp5.My2to3TestInterface.xml b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/interface.erp5.My2to3TestInterface.xml
new file mode 100644
index 0000000000..9b4d5aa04a
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/interface.erp5.My2to3TestInterface.xml
@@ -0,0 +1,91 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Interface Component" module="erp5.portal_type"/>
+    </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>My2to3TestInterface</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>interface.erp5.My2to3TestInterface</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Interface Component</string> </value>
+        </item>
+        <item>
+            <key> <string>sid</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_error_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_warning_message</string> </key>
+            <value>
+              <tuple>
+                <string>W:  6,  0: Statement seems to have no effect (pointless-statement)</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value> <string>erp5</string> </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>
+                <item>
+                    <key> <string>description</string> </key>
+                    <value> <string></string> </value>
+                </item>
+                <item>
+                    <key> <string>reference</string> </key>
+                    <value> <string>InterfaceMy2to3Test</string> </value>
+                </item>
+                <item>
+                    <key> <string>text_content</string> </key>
+                    <value> <string>from zope.interface import Interface\n
+\n
+class InterfaceMy2to3Test(Interface):\n
+  pass</string> </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/mixin.erp5.My2to3TestMixin.py b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/mixin.erp5.My2to3TestMixin.py
new file mode 100644
index 0000000000..44978d3bd4
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/mixin.erp5.My2to3TestMixin.py
@@ -0,0 +1,4 @@
+class My2to3TestMixin:
+  pass
+
+1 / 2
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/mixin.erp5.My2to3TestMixin.xml b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/mixin.erp5.My2to3TestMixin.xml
new file mode 100644
index 0000000000..dd96406167
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/mixin.erp5.My2to3TestMixin.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Mixin Component" module="erp5.portal_type"/>
+    </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>My2to3TestMixin</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>mixin.erp5.My2to3TestMixin</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Mixin Component</string> </value>
+        </item>
+        <item>
+            <key> <string>sid</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_error_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_warning_message</string> </key>
+            <value>
+              <tuple>
+                <string>W:  4,  0: Statement seems to have no effect (pointless-statement)</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value> <string>erp5</string> </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>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/module.erp5.My2to3TestModule.py b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/module.erp5.My2to3TestModule.py
new file mode 100644
index 0000000000..0e0b5d5861
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/module.erp5.My2to3TestModule.py
@@ -0,0 +1 @@
+1 / 2
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/module.erp5.My2to3TestModule.xml b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/module.erp5.My2to3TestModule.xml
new file mode 100644
index 0000000000..f41bdeb8b6
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/module.erp5.My2to3TestModule.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Module Component" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>default_reference</string> </key>
+            <value> <string>My2to3TestModule</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>module.erp5.My2to3TestModule</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Module Component</string> </value>
+        </item>
+        <item>
+            <key> <string>sid</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_error_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_warning_message</string> </key>
+            <value>
+              <tuple>
+                <string>W:  1,  0: Statement seems to have no effect (pointless-statement)</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value> <string>erp5</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/test.erp5.testMy2to3Test.py b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/test.erp5.testMy2to3Test.py
new file mode 100644
index 0000000000..70b5be3327
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/test.erp5.testMy2to3Test.py
@@ -0,0 +1,49 @@
+##############################################################################
+#
+# Copyright (c) 2002-2020 Nexedi SA and Contributors. All Rights Reserved.
+#
+# WARNING: This program as such is intended to be used by professional
+# programmers who take the whole responsibility of assessing all potential
+# consequences resulting from its eventual inadequacies and bugs
+# End users who are looking for a ready-to-use solution with commercial
+# guarantees and support are strongly adviced to contract a Free Software
+# Service Company
+#
+# This program is Free Software; you can redistribute it and/or
+# modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation; either version 2
+# of the License, or (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
+#
+##############################################################################
+
+from Products.ERP5Type.tests.ERP5TypeTestCase import ERP5TypeTestCase
+
+
+class TestMy2to3Test(ERP5TypeTestCase):
+  def getBusinessTemplateList(self):
+    return ('erp5_my2to3',)
+
+  def afterSetUp(self):
+    self.my2to3_test_module = m = self.portal.getDefaultModule(portal_type='my2to3 Test')
+    self.assertIsNotNone(m)
+
+  def test_script(self):
+    self.my2to3_test_module.script()
+
+  def test_page_template(self):
+    self.my2to3_test_module.page_template()
+
+  def test_external_method(self):
+    self.my2to3_test_module.external_method()
+
+
+1 / 2
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/test.erp5.testMy2to3Test.xml b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/test.erp5.testMy2to3Test.xml
new file mode 100644
index 0000000000..b182c71582
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/test.erp5.testMy2to3Test.xml
@@ -0,0 +1,75 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Test Component" module="erp5.portal_type"/>
+    </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>testMy2to3Test</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>test.erp5.testMy2to3Test</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Test Component</string> </value>
+        </item>
+        <item>
+            <key> <string>sid</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_error_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_warning_message</string> </key>
+            <value>
+              <tuple>
+                <string>W: 49,  0: Statement seems to have no effect (pointless-statement)</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value> <string>erp5</string> </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>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/tool.erp5.My2to3TestTool.py b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/tool.erp5.My2to3TestTool.py
new file mode 100644
index 0000000000..494dd590ba
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/tool.erp5.My2to3TestTool.py
@@ -0,0 +1,11 @@
+from Products.ERP5Type.Globals import InitializeClass
+from Products.ERP5Type.Tool.BaseTool import BaseTool
+
+class My2to3TestTool(BaseTool):
+  id = 'portal_my2to3test'
+  meta_type = 'ERP5 My2to3Test Tool'
+  portal_type = 'My2to3Test Tool'
+
+InitializeClass(My2to3TestTool)
+
+1 / 2
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/tool.erp5.My2to3TestTool.xml b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/tool.erp5.My2to3TestTool.xml
new file mode 100644
index 0000000000..efc8c426fa
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PathTemplateItem/portal_components/tool.erp5.My2to3TestTool.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Tool Component" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>default_reference</string> </key>
+            <value> <string>My2to3TestTool</string> </value>
+        </item>
+        <item>
+            <key> <string>description</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>tool.erp5.My2to3TestTool</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Tool Component</string> </value>
+        </item>
+        <item>
+            <key> <string>sid</string> </key>
+            <value>
+              <none/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_error_message</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>text_content_warning_message</string> </key>
+            <value>
+              <tuple>
+                <string>W: 11,  0: Statement seems to have no effect (pointless-statement)</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>version</string> </key>
+            <value> <string>erp5</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml b/bt5/erp5_my2to3_test/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
new file mode 100644
index 0000000000..30b1a16bd0
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PortalTypeAllowedContentTypeTemplateItem/allowed_content_types.xml
@@ -0,0 +1,5 @@
+<allowed_content_type_list>
+ <portal_type id="my2to3 Test Module">
+  <item>my2to3 Test</item>
+ </portal_type>
+</allowed_content_type_list>
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/PortalTypeBaseCategoryTemplateItem/base_category_list.xml b/bt5/erp5_my2to3_test/PortalTypeBaseCategoryTemplateItem/base_category_list.xml
new file mode 100644
index 0000000000..4a14dbd8cb
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PortalTypeBaseCategoryTemplateItem/base_category_list.xml
@@ -0,0 +1,5 @@
+<base_category_list>
+ <portal_type id="my2to3 Test Module">
+  <item>business_application</item>
+ </portal_type>
+</base_category_list>
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/PortalTypeTemplateItem/portal_types/my2to3%20Test%20Module.xml b/bt5/erp5_my2to3_test/PortalTypeTemplateItem/portal_types/my2to3%20Test%20Module.xml
new file mode 100644
index 0000000000..5379284017
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PortalTypeTemplateItem/portal_types/my2to3%20Test%20Module.xml
@@ -0,0 +1,108 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Base Type" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_property_domain_dict</string> </key>
+            <value>
+              <persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
+            </value>
+        </item>
+        <item>
+            <key> <string>content_icon</string> </key>
+            <value> <string>folder_icon.gif</string> </value>
+        </item>
+        <item>
+            <key> <string>factory</string> </key>
+            <value> <string>addFolder</string> </value>
+        </item>
+        <item>
+            <key> <string>group_list</string> </key>
+            <value>
+              <tuple>
+                <string>module</string>
+              </tuple>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my2to3 Test Module</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Base Type</string> </value>
+        </item>
+        <item>
+            <key> <string>type_class</string> </key>
+            <value> <string>Folder</string> </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>
+                <item>
+                    <key> <string>short_title</string> </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
+                    </value>
+                </item>
+                <item>
+                    <key> <string>title</string> </key>
+                    <value>
+                      <persistent> <string encoding="base64">AAAAAAAAAAQ=</string> </persistent>
+                    </value>
+                </item>
+              </dictionary>
+            </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="3" aka="AAAAAAAAAAM=">
+    <pickle>
+      <global name="TranslationInformation" module="Products.ERP5Type.TranslationProviderBase"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>domain_name</string> </key>
+            <value> <string>erp5_ui</string> </value>
+        </item>
+        <item>
+            <key> <string>property_name</string> </key>
+            <value> <string>short_title</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+  <record id="4" aka="AAAAAAAAAAQ=">
+    <pickle>
+      <global name="TranslationInformation" module="Products.ERP5Type.TranslationProviderBase"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>domain_name</string> </key>
+            <value> <string>erp5_ui</string> </value>
+        </item>
+        <item>
+            <key> <string>property_name</string> </key>
+            <value> <string>title</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/PortalTypeTemplateItem/portal_types/my2to3%20Test.xml b/bt5/erp5_my2to3_test/PortalTypeTemplateItem/portal_types/my2to3%20Test.xml
new file mode 100644
index 0000000000..7001900fbd
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PortalTypeTemplateItem/portal_types/my2to3%20Test.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Base Type" module="erp5.portal_type"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>factory</string> </key>
+            <value> <string>addXMLObject</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>my2to3 Test</string> </value>
+        </item>
+        <item>
+            <key> <string>portal_type</string> </key>
+            <value> <string>Base Type</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml b/bt5/erp5_my2to3_test/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
new file mode 100644
index 0000000000..f48abdcd16
--- /dev/null
+++ b/bt5/erp5_my2to3_test/PortalTypeWorkflowChainTemplateItem/workflow_chain_type.xml
@@ -0,0 +1,6 @@
+<workflow_chain>
+ <chain>
+  <type>my2to3 Test</type>
+  <workflow>edit_workflow</workflow>
+ </chain>
+</workflow_chain>
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3.xml b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3.xml
new file mode 100644
index 0000000000..f3e183e24d
--- /dev/null
+++ b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3.xml
@@ -0,0 +1,26 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="Folder" module="OFS.Folder"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_objects</string> </key>
+            <value>
+              <tuple/>
+            </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>erp5_my2to3</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string>ERP5 my2to3</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/external_method.xml b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/external_method.xml
new file mode 100644
index 0000000000..d7f3b04491
--- /dev/null
+++ b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/external_method.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ExternalMethod" module="Products.ExternalMethod.ExternalMethod"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_function</string> </key>
+            <value> <string>foo</string> </value>
+        </item>
+        <item>
+            <key> <string>_module</string> </key>
+            <value> <string>My2to3TestExtension</string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>external_method</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <string></string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/page_template.xml b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/page_template.xml
new file mode 100644
index 0000000000..ed09125590
--- /dev/null
+++ b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/page_template.xml
@@ -0,0 +1,58 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="ZopePageTemplate" module="Products.PageTemplates.ZopePageTemplate"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>content_type</string> </key>
+            <value> <string>text/html</string> </value>
+        </item>
+        <item>
+            <key> <string>expand</string> </key>
+            <value> <int>0</int> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>page_template</string> </value>
+        </item>
+        <item>
+            <key> <string>output_encoding</string> </key>
+            <value> <string>utf-8</string> </value>
+        </item>
+        <item>
+            <key> <string>title</string> </key>
+            <value> <unicode></unicode> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/page_template.zpt b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/page_template.zpt
new file mode 100644
index 0000000000..23b581d490
--- /dev/null
+++ b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/page_template.zpt
@@ -0,0 +1 @@
+<span tal:content="python: 1 / 2"></span>
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/script.py b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/script.py
new file mode 100644
index 0000000000..85b4d7b0b0
--- /dev/null
+++ b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/script.py
@@ -0,0 +1 @@
+1 / 2
diff --git a/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/script.xml b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/script.xml
new file mode 100644
index 0000000000..6801d75dc6
--- /dev/null
+++ b/bt5/erp5_my2to3_test/SkinTemplateItem/portal_skins/erp5_my2to3/script.xml
@@ -0,0 +1,62 @@
+<?xml version="1.0"?>
+<ZopeData>
+  <record id="1" aka="AAAAAAAAAAE=">
+    <pickle>
+      <global name="PythonScript" module="Products.PythonScripts.PythonScript"/>
+    </pickle>
+    <pickle>
+      <dictionary>
+        <item>
+            <key> <string>Script_magic</string> </key>
+            <value> <int>3</int> </value>
+        </item>
+        <item>
+            <key> <string>_bind_names</string> </key>
+            <value>
+              <object>
+                <klass>
+                  <global name="NameAssignments" module="Shared.DC.Scripts.Bindings"/>
+                </klass>
+                <tuple/>
+                <state>
+                  <dictionary>
+                    <item>
+                        <key> <string>_asgns</string> </key>
+                        <value>
+                          <dictionary>
+                            <item>
+                                <key> <string>name_container</string> </key>
+                                <value> <string>container</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_context</string> </key>
+                                <value> <string>context</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_m_self</string> </key>
+                                <value> <string>script</string> </value>
+                            </item>
+                            <item>
+                                <key> <string>name_subpath</string> </key>
+                                <value> <string>traverse_subpath</string> </value>
+                            </item>
+                          </dictionary>
+                        </value>
+                    </item>
+                  </dictionary>
+                </state>
+              </object>
+            </value>
+        </item>
+        <item>
+            <key> <string>_params</string> </key>
+            <value> <string></string> </value>
+        </item>
+        <item>
+            <key> <string>id</string> </key>
+            <value> <string>script</string> </value>
+        </item>
+      </dictionary>
+    </pickle>
+  </record>
+</ZopeData>
diff --git a/bt5/erp5_my2to3_test/bt/template_action_path_list b/bt5/erp5_my2to3_test/bt/template_action_path_list
new file mode 100644
index 0000000000..a24c1ac954
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/template_action_path_list
@@ -0,0 +1,2 @@
+my2to3 Test Module | view
+my2to3 Test | view
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/bt/template_format_version b/bt5/erp5_my2to3_test/bt/template_format_version
new file mode 100644
index 0000000000..56a6051ca2
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/template_format_version
@@ -0,0 +1 @@
+1
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/bt/template_module_id_list b/bt5/erp5_my2to3_test/bt/template_module_id_list
new file mode 100644
index 0000000000..4b36834815
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/template_module_id_list
@@ -0,0 +1 @@
+my2to3_test_module
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/bt/template_path_list b/bt5/erp5_my2to3_test/bt/template_path_list
new file mode 100644
index 0000000000..7b2e252956
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/template_path_list
@@ -0,0 +1,2 @@
+portal_components/*.erp5.My2to3Test*
+portal_components/test.erp5.testMy2to3Test
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/bt/template_portal_type_allowed_content_type_list b/bt5/erp5_my2to3_test/bt/template_portal_type_allowed_content_type_list
new file mode 100644
index 0000000000..85019894fa
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/template_portal_type_allowed_content_type_list
@@ -0,0 +1 @@
+my2to3 Test Module | my2to3 Test
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/bt/template_portal_type_base_category_list b/bt5/erp5_my2to3_test/bt/template_portal_type_base_category_list
new file mode 100644
index 0000000000..b9a12ca61d
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/template_portal_type_base_category_list
@@ -0,0 +1 @@
+my2to3 Test Module | business_application
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/bt/template_portal_type_id_list b/bt5/erp5_my2to3_test/bt/template_portal_type_id_list
new file mode 100644
index 0000000000..13fa4c1dcb
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/template_portal_type_id_list
@@ -0,0 +1,2 @@
+my2to3 Test
+my2to3 Test Module
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/bt/template_portal_type_workflow_chain_list b/bt5/erp5_my2to3_test/bt/template_portal_type_workflow_chain_list
new file mode 100644
index 0000000000..83f3830b1d
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/template_portal_type_workflow_chain_list
@@ -0,0 +1 @@
+my2to3 Test | edit_workflow
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/bt/template_skin_id_list b/bt5/erp5_my2to3_test/bt/template_skin_id_list
new file mode 100644
index 0000000000..f9812e55db
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/template_skin_id_list
@@ -0,0 +1 @@
+erp5_my2to3
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/bt/title b/bt5/erp5_my2to3_test/bt/title
new file mode 100644
index 0000000000..4f6b19137a
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/title
@@ -0,0 +1 @@
+erp5_my2to3_test
\ No newline at end of file
diff --git a/bt5/erp5_my2to3_test/bt/version b/bt5/erp5_my2to3_test/bt/version
new file mode 100644
index 0000000000..56a6051ca2
--- /dev/null
+++ b/bt5/erp5_my2to3_test/bt/version
@@ -0,0 +1 @@
+1
\ No newline at end of file
-- 
2.30.9