1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package test.de.smartics.properties.spi.config.proxy;
17
18 import java.io.IOException;
19
20 import org.junit.BeforeClass;
21 import org.junit.experimental.theories.DataPoint;
22
23 import test.de.smartics.properties.spi.config.proxy.examples.MoreProperties;
24 import test.de.smartics.properties.spi.config.proxy.examples.TestProperties;
25 import de.smartics.properties.api.config.domain.key.ApplicationId;
26 import de.smartics.properties.api.config.domain.key.ConfigurationKey;
27 import de.smartics.properties.api.config.domain.key.EnvironmentId;
28 import de.smartics.properties.api.core.security.Base64PropertyValueSecurity;
29 import de.smartics.properties.impl.config.domain.key.envapp.EnvAppConfigurationKey;
30 import de.smartics.properties.impl.config.properties.PropertiesConfigurationProperties;
31 import de.smartics.properties.spi.config.proxy.PropertyConfigurationObjectBuilder;
32 import de.smartics.testdoc.annotations.Uut;
33 import de.smartics.util.test.theories.SerializationTheory;
34
35
36
37
38 @Uut(type = MoreProperties.class)
39 public class PropertiesSerializableTest extends SerializationTheory
40 {
41
42
43
44
45
46
47
48
49
50
51
52 private static PropertyConfigurationObjectBuilder builder;
53
54 private static PropertiesConfigurationProperties configurationProperties;
55
56 @BeforeClass
57 public static void setUpClass()
58 {
59 final EnvironmentId environmentId = new EnvironmentId("test");
60 final ApplicationId applicationId =
61 new ApplicationId("groupId", "artefactId", "version");
62 final ConfigurationKey<?> key =
63 new EnvAppConfigurationKey(environmentId, applicationId);
64 configurationProperties =
65 new PropertiesConfigurationProperties(key,
66 new Base64PropertyValueSecurity());
67
68 configurationProperties.addClassPathProperties(TestProperties.class);
69
70 builder = new PropertyConfigurationObjectBuilder();
71
72 }
73
74
75
76
77
78 @DataPoint
79 public MoreProperties allProxyImplementationsOfAPropertyInterfaceAreSerializable()
80 throws IOException, ClassNotFoundException
81 {
82 final MoreProperties properties =
83 builder.build(MoreProperties.class, configurationProperties);
84 return properties;
85 }
86
87 }