Package org.openbravo.test.role.inheritance
-
Class Summary Class Description AccessPropagation Test case for access propagation We start having Role "role" which inherits from Role "template" We add access A1 for "template" and access A2 for "role" If we update access A1 for "template" this change must be propagated for "role".AccessPropagationNotInherited Test case to check that non inherited accesses are not affected by access propagation We start having Role "role" which inherits from Role "template" We add access A1 for "role", before adding the same access A1 for "template" If we update access A1 for "template" this change must not affect A1 access for "role" because it has not been inheritedDeletedAccessPropagation Test case for deleted access propagation We have a role which inherits from three different templates.HorizontalInheritance Test case for horizontal inheritance Role A inherits from T1 (sequence 10), T2 (sequence 20) and T3 (sequence 30) T1 Accesses {A3, A4} , T2 Accesses {A1, A2}, T3 Accesses {A0, A2, A3} With this settings, Role A Accesses must be {A0(T3), A1(T2), A2(T3), A3(T3), A4(T1)} After removing the inheritance of T3, access for Role A must be {A1(T2), A2(T2), A3(T1), A4(T1)}RecalculatePermissions Test case for horizontal inheritance This test case is intended to simulate the "Recalculate Permissions" process We remove an inherited access on purpose (this can not be done from the UI), this way we can simulate the process of adding a permission without using DAL, like for example, when using the "Grant Access" process which uses xsql to insert data.RoleInheritanceRestrictions This class contains some tests to check the restrictions of the Role Inheritance functionalityRoleInheritanceTestSuite Test Suite for Role InheritanceRoleInheritanceTestUtils This class provides some utility methods used to test the Role Inheritance functionalityVerticalInheritance Test case for vertical inheritance Role B inherits from Role A and Role C from Role B : A -> B -> C A Access {A1} , B Access {A2} With this settings, Role B Accesses must be {A1(A), A2} and Role C Accesses must be {A1(B), A2(B)}