1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 package org.apache.syncope.core.provisioning.api.serialization;
20
21 import static org.mockito.ArgumentMatchers.anyString;
22 import static org.mockito.ArgumentMatchers.eq;
23 import static org.mockito.Mockito.verify;
24
25 import com.fasterxml.jackson.core.JsonGenerator;
26 import com.fasterxml.jackson.databind.SerializerProvider;
27 import java.io.IOException;
28 import org.apache.syncope.core.provisioning.api.AbstractTest;
29 import org.identityconnectors.common.security.GuardedString;
30 import org.junit.jupiter.api.Test;
31 import org.mockito.Mock;
32
33 public class GuardedStringSerializerTest extends AbstractTest {
34
35 private static final String READONLY = "readOnly";
36
37 private static final String DISPOSED = "disposed";
38
39 private static final String ENCRYPTED_BYTES = "encryptedBytes";
40
41 private static final String BASE64_SHA1_HASH = "base64SHA1Hash";
42
43 private final GuardedStringSerializer serializer = new GuardedStringSerializer();
44
45 @Test
46 public void serialize(
47 final @Mock JsonGenerator jgen,
48 final @Mock SerializerProvider sp) throws IOException {
49
50 serializer.serialize(new GuardedString(), jgen, sp);
51 verify(jgen).writeBooleanField(READONLY, false);
52 verify(jgen).writeBooleanField(DISPOSED, false);
53 verify(jgen).writeStringField(eq(ENCRYPTED_BYTES), anyString());
54 verify(jgen).writeStringField(eq(BASE64_SHA1_HASH), anyString());
55 verify(jgen).writeEndObject();
56 }
57 }