From f12c3a54534cf10b784a86bbd6c9b09c5128fcdb Mon Sep 17 00:00:00 2001
From: Yusei Tahara <yusei@nexedi.com>
Date: Mon, 20 Apr 2009 07:16:08 +0000
Subject: [PATCH] Add a test case and make sure that MovementGroup._separate
 method works with an empty list argument.

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@26508 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5/tests/testMovementGroup.py | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/product/ERP5/tests/testMovementGroup.py b/product/ERP5/tests/testMovementGroup.py
index 06e5b2e03a..3c8c18b8cd 100644
--- a/product/ERP5/tests/testMovementGroup.py
+++ b/product/ERP5/tests/testMovementGroup.py
@@ -432,6 +432,20 @@ class TestCategoryMovementGroup(MovementGroupTestCase):
       group.getGroupEditDict() == dict(destination_list=['A'],
                                        source_list=['2'])]))
 
+
+class TestMovementGroupCommonAPI(unittest.TestCase):
+
+  def test_separateMethod(self):
+    """Make sure that _separate method works if argument is an empty list."""
+    import Products.ERP5Type.Document
+    for name in Products.ERP5Type.Document.__dict__:
+      if name[0].isupper() and name.endswith('MovementGroup'):
+        module = getattr(Products.ERP5Type.Document, name)
+        class_ = getattr(module, name)
+        instance = class_('dummy')
+        self.assertEqual(instance._separate([]), [])
+
+
 def test_suite():
   suite = unittest.TestSuite()
   suite.addTest(unittest.makeSuite(TestPropertyMovementGroup))
@@ -441,5 +455,6 @@ def test_suite():
   suite.addTest(unittest.makeSuite(TestDeliveryCausalityAssignmentMovementGroup))
   suite.addTest(unittest.makeSuite(TestDuplicatedKeyRaiseException))
   suite.addTest(unittest.makeSuite(TestCategoryMovementGroup))
+  suite.addTest(unittest.makeSuite(TestMovementGroupCommonAPI))
   return suite
 
-- 
2.30.9