1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.wss4j.policy.tests;
20
21 import org.apache.neethi.Assertion;
22 import org.apache.neethi.Policy;
23 import org.junit.jupiter.api.Test;
24
25 import java.util.Iterator;
26 import java.util.List;
27
28 import static org.junit.jupiter.api.Assertions.assertEquals;
29
30 public class PolicyNormalizationTest extends AbstractTestBase {
31
32 @Test
33 public void testWSP15_432Normalization() throws Exception {
34 String fileName = "WSP15_432-compact.xml";
35 String policyFile = loadPolicyFile("policy/" + fileName);
36 String serializedPolicyReferenceFile = loadPolicyFile("policy/WSP15_432-serialized.xml");
37 String normalizedPolicyReferenceFile = loadPolicyFile("policy/WSP15_432-normalized.xml");
38 Policy policy = loadPolicy(policyFile);
39 String serializedPolicy = serializePolicy(policy);
40 assertXMLisEqual(serializedPolicy, serializedPolicyReferenceFile);
41
42 policy = policy.normalize(true);
43 Iterator<List<Assertion>> iterator = policy.getAlternatives();
44 int count = 0;
45 while (iterator.hasNext()) {
46 iterator.next();
47 count++;
48 }
49 assertEquals(37, count);
50 serializedPolicy = serializePolicy(policy);
51 assertXMLisEqual(serializedPolicy, normalizedPolicyReferenceFile);
52 }
53 }