1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.common.lib;
20
21 import static org.junit.jupiter.api.Assertions.assertEquals;
22
23 import com.fasterxml.jackson.databind.ObjectMapper;
24 import java.io.IOException;
25 import java.io.StringWriter;
26 import java.net.URI;
27 import org.apache.syncope.common.lib.policy.AccessPolicyTO;
28 import org.apache.syncope.common.lib.policy.DefaultAccessPolicyConf;
29 import org.junit.jupiter.api.Test;
30
31 public abstract class SerializationTest {
32
33 protected abstract ObjectMapper objectMapper();
34
35 @Test
36 public void accessPolicyConf() throws IOException {
37 AccessPolicyTO policy = new AccessPolicyTO();
38 policy.setName("Test Access policy");
39
40 DefaultAccessPolicyConf conf = new DefaultAccessPolicyConf();
41 conf.setOrder(11);
42 conf.setEnabled(true);
43 conf.setUnauthorizedRedirectUrl(URI.create("https://syncope.apache.org"));
44 conf.getRequiredAttrs().put("cn", "admin,Admin,TheAdmin");
45 conf.getRejectedAttrs().put("uid", "plain");
46 policy.setConf(conf);
47
48 StringWriter writer = new StringWriter();
49 objectMapper().writeValue(writer, policy);
50
51 AccessPolicyTO actual = objectMapper().readValue(writer.toString(), AccessPolicyTO.class);
52 assertEquals(policy, actual);
53 }
54 }