Skip to content

Commit 0ae853a

Browse files
committed
feat: add test class for casbin issue
1 parent 11a2e97 commit 0ae853a

File tree

1 file changed

+47
-0
lines changed

1 file changed

+47
-0
lines changed
+47
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,47 @@
1+
package org.casbin;
2+
3+
import org.casbin.jcasbin.main.Enforcer;
4+
import org.junit.jupiter.api.Test;
5+
import static org.junit.jupiter.api.Assertions.*;
6+
7+
public class MenuTest {
8+
@Test
9+
public void testMenu() {
10+
//model.conf and policy.csv are in the examples/casbin directory
11+
Enforcer enforcer = new Enforcer("examples/casbin/model.conf","examples/casbin/policy.csv");
12+
// Test each permission individually
13+
14+
assertTrue(enforcer.enforce("ROLE_ROOT", "SystemMenu", "read"));
15+
assertFalse(enforcer.enforce("ROLE_ADMIN", "SystemMenu", "read"));
16+
assertFalse(enforcer.enforce("ROLE_USER", "SystemMenu", "read"));
17+
18+
assertFalse(enforcer.enforce("ROLE_ROOT", "UserMenu", "read"));
19+
assertTrue(enforcer.enforce("ROLE_ADMIN", "UserMenu", "read"));
20+
assertTrue(enforcer.enforce("ROLE_USER", "UserMenu", "read"));
21+
22+
assertFalse(enforcer.enforce("ROLE_ROOT", "UserSubMenu_allow", "read"));
23+
assertTrue(enforcer.enforce("ROLE_ADMIN", "UserSubMenu_allow", "read"));
24+
assertTrue(enforcer.enforce("ROLE_USER", "UserSubMenu_allow", "read"));
25+
26+
assertFalse(enforcer.enforce("ROLE_ROOT", "UserSubSubMenu", "read"));
27+
assertTrue(enforcer.enforce("ROLE_ADMIN", "UserSubSubMenu", "read"));
28+
assertTrue(enforcer.enforce("ROLE_USER", "UserSubSubMenu", "read"));
29+
30+
assertFalse(enforcer.enforce("ROLE_ROOT", "UserSubMenu_deny", "read"));
31+
assertTrue(enforcer.enforce("ROLE_ADMIN", "UserSubMenu_deny", "read"));
32+
assertFalse(enforcer.enforce("ROLE_USER", "UserSubMenu_deny", "read"));
33+
34+
assertTrue(enforcer.enforce("ROLE_ROOT", "AdminMenu", "read"));
35+
assertTrue(enforcer.enforce("ROLE_ADMIN", "AdminMenu", "read"));
36+
assertFalse(enforcer.enforce("ROLE_USER", "AdminMenu", "read"));
37+
38+
assertTrue(enforcer.enforce("ROLE_ROOT", "AdminSubMenu_allow", "read"));
39+
assertTrue(enforcer.enforce("ROLE_ADMIN", "AdminSubMenu_allow", "read"));
40+
assertFalse(enforcer.enforce("ROLE_USER", "AdminSubMenu_allow", "read"));
41+
42+
assertTrue(enforcer.enforce("ROLE_ROOT", "AdminSubMenu_deny", "read"));
43+
assertFalse(enforcer.enforce("ROLE_ADMIN", "AdminSubMenu_deny", "read"));
44+
assertFalse(enforcer.enforce("ROLE_USER", "AdminSubMenu_deny", "read"));
45+
}
46+
}
47+

0 commit comments

Comments
 (0)