From 31376a6c36fec001c11f1f3adb9dd8192e5f7cd4 Mon Sep 17 00:00:00 2001 From: Ivan Tyagov <ivan@nexedi.com> Date: Thu, 4 Jun 2015 11:58:54 +0300 Subject: [PATCH] Extend API and set default to None for an array. Add a new property of type array. --- .../document.erp5.DataArray.py | 6 ++ .../elementary_type/array.xml | 89 +++++++++++++++++++ .../DataArray/array_property.xml | 4 +- .../test.erp5.testWendelin.py | 1 + bt5/erp5_wendelin/bt/template_path_list | 1 + 5 files changed, 99 insertions(+), 2 deletions(-) create mode 100644 bt5/erp5_wendelin/PathTemplateItem/portal_categories/elementary_type/array.xml create mode 100644 bt5/erp5_wendelin/bt/template_path_list diff --git a/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataArray.py b/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataArray.py index ff3b886..8f1a328 100644 --- a/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataArray.py +++ b/bt5/erp5_wendelin/DocumentTemplateItem/portal_components/document.erp5.DataArray.py @@ -57,6 +57,12 @@ class DataArray(BigFile): """ array = ZBigArray(shape, dtype) self._setArray(array) + + def getArray(self, default=None): + """ + Get numpy array value. + """ + return getattr(self, 'array', None) def _setArray(self, value): """ diff --git a/bt5/erp5_wendelin/PathTemplateItem/portal_categories/elementary_type/array.xml b/bt5/erp5_wendelin/PathTemplateItem/portal_categories/elementary_type/array.xml new file mode 100644 index 0000000..adbe312 --- /dev/null +++ b/bt5/erp5_wendelin/PathTemplateItem/portal_categories/elementary_type/array.xml @@ -0,0 +1,89 @@ +<?xml version="1.0"?> +<ZopeData> + <record id="1" aka="AAAAAAAAAAE="> + <pickle> + <global name="Category" module="erp5.portal_type"/> + </pickle> + <pickle> + <dictionary> + <item> + <key> <string>_Add_portal_content_Permission</string> </key> + <value> + <tuple> + <string>Assignor</string> + <string>Manager</string> + </tuple> + </value> + </item> + <item> + <key> <string>_Add_portal_folders_Permission</string> </key> + <value> + <tuple> + <string>Assignor</string> + <string>Manager</string> + </tuple> + </value> + </item> + <item> + <key> <string>_Copy_or_Move_Permission</string> </key> + <value> + <tuple> + <string>Assignor</string> + <string>Manager</string> + </tuple> + </value> + </item> + <item> + <key> <string>_Delete_objects_Permission</string> </key> + <value> + <tuple> + <string>Assignor</string> + <string>Manager</string> + </tuple> + </value> + </item> + <item> + <key> <string>_Modify_portal_content_Permission</string> </key> + <value> + <tuple> + <string>Assignee</string> + <string>Assignor</string> + <string>Manager</string> + <string>Owner</string> + </tuple> + </value> + </item> + <item> + <key> <string>categories</string> </key> + <value> + <tuple> + <string>elementary_type/array</string> + </tuple> + </value> + </item> + <item> + <key> <string>description</string> </key> + <value> + <none/> + </value> + </item> + <item> + <key> <string>id</string> </key> + <value> <string>array</string> </value> + </item> + <item> + <key> <string>portal_type</string> </key> + <value> <string>Category</string> </value> + </item> + <item> + <key> <string>short_title</string> </key> + <value> <string>Array</string> </value> + </item> + <item> + <key> <string>title</string> </key> + <value> <string>array</string> </value> + </item> + </dictionary> + </pickle> + </record> +</ZopeData> diff --git a/bt5/erp5_wendelin/PropertySheetTemplateItem/portal_property_sheets/DataArray/array_property.xml b/bt5/erp5_wendelin/PropertySheetTemplateItem/portal_property_sheets/DataArray/array_property.xml index eeb6425..6a92047 100644 --- a/bt5/erp5_wendelin/PropertySheetTemplateItem/portal_property_sheets/DataArray/array_property.xml +++ b/bt5/erp5_wendelin/PropertySheetTemplateItem/portal_property_sheets/DataArray/array_property.xml @@ -27,7 +27,7 @@ <key> <string>categories</string> </key> <value> <tuple> - <string>elementary_type/data</string> + <string>elementary_type/array</string> </tuple> </value> </item> @@ -49,7 +49,7 @@ </item> <item> <key> <string>property_default</string> </key> - <value> <string>python: \'\'</string> </value> + <value> <string>python: None</string> </value> </item> </dictionary> </pickle> diff --git a/bt5/erp5_wendelin/TestTemplateItem/portal_components/test.erp5.testWendelin.py b/bt5/erp5_wendelin/TestTemplateItem/portal_components/test.erp5.testWendelin.py index 9f73d91..abf85a6 100644 --- a/bt5/erp5_wendelin/TestTemplateItem/portal_components/test.erp5.testWendelin.py +++ b/bt5/erp5_wendelin/TestTemplateItem/portal_components/test.erp5.testWendelin.py @@ -118,6 +118,7 @@ class Test(ERP5TypeTestCase): data_array = self.portal.data_array_module.newContent( \ portal_type = 'Data Array') + self.assertEqual(None, data_array.getArray()) data_array.initArray((3, 3), np.uint8) self.tic() diff --git a/bt5/erp5_wendelin/bt/template_path_list b/bt5/erp5_wendelin/bt/template_path_list new file mode 100644 index 0000000..f6b5591 --- /dev/null +++ b/bt5/erp5_wendelin/bt/template_path_list @@ -0,0 +1 @@ +portal_categories/elementary_type/array \ No newline at end of file -- 2.30.9