Category self membership after move and clone
Categories are member of themselves. When a category is renamed, the membership to self was already preserved thanks to 7f2e8eb2 , but this was not the case when a category was cut and pasted. There are two different cases: * When just created, a category is member of itself because this is the [default behavior](https://lab.nexedi.com/nexedi/erp5/blob/b705495de0f04645b7b3ad3b74c46de00c923876/product/CMFCategory/CategoryTool.py#L1193-1196) for categories not having categories set. In this case, it's dynamic. * When category has some categories set ( in `self.categories` ) - this happens for example after being renamed - then behavior is different and `self.categories` has to be updated. 7f2e8eb2 was handling properly the later case after a clone, but not in a cut and paste ( move ) scenario, because in this case "after clone" hook is not called. The first idea was to move the same hook at another level by overloading `_postCopy` but after some discussion and thinking, it seemed more logical to make sure `CategoryTool.setCategoryList` does not save categories membership to self, which is consistent in the way `CategoryTool.getCategoryList` adds the membership to self dynamically. This MR brings a few more tests, so that we can claim [#1900](https://nexedi.erp5.net/bug_module/1900) and [#704](https://nexedi.erp5.net/bug_module/704) are tested enough and close these old bugs. /reviewed-on !664
Showing
Please register or sign in to comment