Modify deprecated sonar properties in AAF
[aaf/authz.git] / cadi / aaf / src / test / java / org / onap / aaf / cadi / aaf / test / JU_PermEval.java
1 /**
2  * ============LICENSE_START====================================================
3  * org.onap.aaf
4  * ===========================================================================
5  * Copyright (c) 2018 AT&T Intellectual Property. All rights reserved.
6  * ===========================================================================
7  * Licensed under the Apache License, Version 2.0 (the "License");
8  * you may not use this file except in compliance with the License.
9  * You may obtain a copy of the License at
10  * 
11  *      http://www.apache.org/licenses/LICENSE-2.0
12  * 
13  * Unless required by applicable law or agreed to in writing, software
14  * distributed under the License is distributed on an "AS IS" BASIS,
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16  * See the License for the specific language governing permissions and
17  * limitations under the License.
18  * ============LICENSE_END====================================================
19  *
20  */
21
22 package org.onap.aaf.cadi.aaf.test;
23
24 import static org.junit.Assert.*;
25
26 import org.junit.AfterClass;
27 import org.junit.Test;
28 import org.onap.aaf.cadi.aaf.PermEval;
29
30 public class JU_PermEval {
31
32         @AfterClass
33         public static void tearDownAfterClass() throws Exception {
34         }
35
36         @Test
37         public void test() {
38                 // TRUE
39                 assertTrue(PermEval.evalAction("fred","fred"));
40                 assertTrue(PermEval.evalAction("fred,wilma","fred"));
41                 assertTrue(PermEval.evalAction("barney,betty,fred,wilma","fred"));
42                 assertTrue(PermEval.evalAction("*","fred"));
43                 
44                 assertTrue(PermEval.evalInstance("fred","fred"));
45                 assertTrue(PermEval.evalInstance("fred,wilma","fred"));
46                 assertTrue(PermEval.evalInstance("barney,betty,fred,wilma","fred"));
47                 assertTrue(PermEval.evalInstance("*","fred"));
48                 
49                 assertTrue(PermEval.evalInstance(":fred:fred",":fred:fred"));
50                 assertTrue(PermEval.evalInstance(":fred:fred,wilma",":fred:fred"));
51                 assertTrue(PermEval.evalInstance(":fred:barney,betty,fred,wilma",":fred:fred"));
52                 assertTrue(PermEval.evalInstance("*","fred"));
53                 assertTrue(PermEval.evalInstance(":*:fred",":fred:fred"));
54                 assertTrue(PermEval.evalInstance(":fred:*",":fred:fred"));
55                 assertTrue(PermEval.evalInstance(":!f.*:fred",":fred:fred"));
56                 assertTrue(PermEval.evalInstance(":fred:!f.*",":fred:fred"));
57                 
58                 /// FALSE
59                 assertFalse(PermEval.evalInstance("fred","wilma"));
60                 assertFalse(PermEval.evalInstance("fred,barney,betty","wilma"));
61                 assertFalse(PermEval.evalInstance(":fred:fred",":fred:wilma"));
62                 assertFalse(PermEval.evalInstance(":fred:fred",":wilma:fred"));
63                 assertFalse(PermEval.evalInstance(":wilma:!f.*",":fred:fred"));
64                 assertFalse(PermEval.evalInstance(":!f.*:wilma",":fred:fred"));
65                 assertFalse(PermEval.evalInstance(":!w.*:!f.*",":fred:fred"));
66                 assertFalse(PermEval.evalInstance(":!f.*:!w.*",":fred:fred"));
67
68                 assertFalse(PermEval.evalInstance(":fred:!x.*",":fred:fred"));
69
70                 // MSO Tests 12/3/2015
71                 assertFalse(PermEval.evalInstance("/v1/services/features/*","/v1/services/features"));
72                 assertFalse(PermEval.evalInstance(":v1:services:features:*",":v1:services:features"));
73                 assertTrue(PermEval.evalInstance("/v1/services/features/*","/v1/services/features/api1"));
74                 assertTrue(PermEval.evalInstance(":v1:services:features:*",":v1:services:features:api2"));
75                 // MSO - Xue Gao
76                 assertTrue(PermEval.evalInstance(":v1:requests:*",":v1:requests:test0-service"));   
77
78
79                 
80                 // Same tests, with Slashes
81                 assertTrue(PermEval.evalInstance("/fred/fred","/fred/fred"));
82                 assertTrue(PermEval.evalInstance("/fred/fred,wilma","/fred/fred"));
83                 assertTrue(PermEval.evalInstance("/fred/barney,betty,fred,wilma","/fred/fred"));
84                 assertTrue(PermEval.evalInstance("*","fred"));
85                 assertTrue(PermEval.evalInstance("/*/fred","/fred/fred"));
86                 assertTrue(PermEval.evalInstance("/fred/*","/fred/fred"));
87                 assertTrue(PermEval.evalInstance("/!f.*/fred","/fred/fred"));
88                 assertTrue(PermEval.evalInstance("/fred/!f.*","/fred/fred"));
89                 
90                 /// FALSE
91                 assertFalse(PermEval.evalInstance("fred","wilma"));
92                 assertFalse(PermEval.evalInstance("fred,barney,betty","wilma"));
93                 assertFalse(PermEval.evalInstance("/fred/fred","/fred/wilma"));
94                 assertFalse(PermEval.evalInstance("/fred/fred","/wilma/fred"));
95                 assertFalse(PermEval.evalInstance("/wilma/!f.*","/fred/fred"));
96                 assertFalse(PermEval.evalInstance("/!f.*/wilma","/fred/fred"));
97                 assertFalse(PermEval.evalInstance("/!w.*/!f.*","/fred/fred"));
98                 assertFalse(PermEval.evalInstance("/!f.*/!w.*","/fred/fred"));
99
100                 assertFalse(PermEval.evalInstance("/fred/!x.*","/fred/fred"));
101                 
102                 assertTrue(PermEval.evalInstance(":!com.att.*:role:write",":com.att.temp:role:write"));
103
104                 // CPFSF-431 Group needed help with Wild Card
105                 // They tried
106                 assertTrue(PermEval.evalInstance(
107                                 ":topic.com.att.ecomp_test.crm.pre*",
108                                 ":topic.com.att.ecomp_test.crm.predemo100"
109                                 ));
110
111                 // Also can be
112                 assertTrue(PermEval.evalInstance(
113                                 ":!topic.com.att.ecomp_test.crm.pre.*",
114                                 ":topic.com.att.ecomp_test.crm.predemo100"
115                                 ));
116                 
117         }
118
119 }