35
35
36
36
@ ExtendWith (SystemStubsExtension .class )
37
37
@ ResourceLock (value = Resources .SYSTEM_PROPERTIES )
38
- public class PropertiesUtilOrderTest {
38
+ class PropertiesUtilOrderTest {
39
39
40
- public static class NonEnumerablePropertySource implements PropertySource {
40
+ private static class NonEnumerablePropertySource implements PropertySource {
41
41
42
42
private final Properties props ;
43
43
@@ -67,14 +67,6 @@ public boolean containsProperty(final String key) {
67
67
}
68
68
}
69
69
70
- public static class NullPropertySource implements PropertySource {
71
-
72
- @ Override
73
- public int getPriority () {
74
- return Integer .MIN_VALUE ;
75
- }
76
- }
77
-
78
70
private final Properties properties = new Properties ();
79
71
80
72
@ BeforeEach
@@ -85,7 +77,7 @@ public void setUp() throws Exception {
85
77
}
86
78
87
79
@ Test
88
- public void testNormalizedOverrideLegacy () {
80
+ void testNormalizedOverrideLegacy () {
89
81
final PropertiesUtil util = new PropertiesUtil (properties );
90
82
final String legacy = "props.legacy" ;
91
83
final String normalized = "props.normalized" ;
@@ -104,20 +96,7 @@ public void testNormalizedOverrideLegacy() {
104
96
}
105
97
106
98
@ Test
107
- public void testFallsBackToTokenMatching () {
108
- final PropertiesUtil util = new PropertiesUtil (properties );
109
- for (int i = 1 ; i <= 4 ; i ++) {
110
- final String key = "log4j2.tokenBasedProperty" + i ;
111
- assertTrue (util .hasProperty (key ));
112
- assertEquals ("props.token" , util .getStringProperty (key ));
113
- }
114
- // No fall back (a normalized property is present)
115
- assertTrue (util .hasProperty ("log4j2.normalizedProperty" ));
116
- assertEquals ("props.normalized" , util .getStringProperty ("log4j2.normalizedProperty" ));
117
- }
118
-
119
- @ Test
120
- public void testOrderOfNormalizedProperties (final EnvironmentVariables env , final SystemProperties sysProps ) {
99
+ void testOrderOfNormalizedProperties (final EnvironmentVariables env , final SystemProperties sysProps ) {
121
100
properties .remove ("log4j2.normalizedProperty" );
122
101
properties .remove ("LOG4J_normalized.property" );
123
102
final PropertiesUtil util = new PropertiesUtil (properties );
@@ -128,29 +107,26 @@ public void testOrderOfNormalizedProperties(final EnvironmentVariables env, fina
128
107
assertEquals (null , util .getStringProperty ("log4j2.normalizedProperty" ));
129
108
130
109
properties .setProperty ("log4j2.normalizedProperty" , "props.normalized" );
131
- util .reload ();
132
110
assertTrue (util .hasProperty ("Log4jNormalizedProperty" ));
133
111
assertEquals ("props.normalized" , util .getStringProperty ("Log4jNormalizedProperty" ));
134
112
assertTrue (util .hasProperty ("log4j2.normalizedProperty" ));
135
113
assertEquals ("props.normalized" , util .getStringProperty ("log4j2.normalizedProperty" ));
136
114
137
115
env .set ("LOG4J_NORMALIZED_PROPERTY" , "env" );
138
- util .reload ();
139
116
assertTrue (util .hasProperty ("Log4jNormalizedProperty" ));
140
117
assertEquals ("env" , util .getStringProperty ("Log4jNormalizedProperty" ));
141
118
assertTrue (util .hasProperty ("log4j2.normalizedProperty" ));
142
119
assertEquals ("env" , util .getStringProperty ("log4j2.normalizedProperty" ));
143
120
144
121
sysProps .set ("log4j2.normalizedProperty" , "sysProps" );
145
- util .reload ();
146
122
assertTrue (util .hasProperty ("Log4jNormalizedProperty" ));
147
123
assertEquals ("sysProps" , util .getStringProperty ("Log4jNormalizedProperty" ));
148
124
assertTrue (util .hasProperty ("log4j2.normalizedProperty" ));
149
125
assertEquals ("sysProps" , util .getStringProperty ("log4j2.normalizedProperty" ));
150
126
}
151
127
152
128
@ Test
153
- public void testLegacySystemPropertyHasHigherPriorityThanEnv (
129
+ void testLegacySystemPropertyHasHigherPriorityThanEnv (
154
130
final EnvironmentVariables env , final SystemProperties sysProps ) {
155
131
env .set ("LOG4J_CONFIGURATION_FILE" , "env" );
156
132
final PropertiesUtil util = new PropertiesUtil (properties );
@@ -159,18 +135,16 @@ public void testLegacySystemPropertyHasHigherPriorityThanEnv(
159
135
assertEquals ("env" , util .getStringProperty ("log4j.configurationFile" ));
160
136
161
137
sysProps .set ("log4j.configurationFile" , "legacy" );
162
- util .reload ();
163
138
assertTrue (util .hasProperty ("log4j.configurationFile" ));
164
139
assertEquals ("legacy" , util .getStringProperty ("log4j.configurationFile" ));
165
140
166
141
sysProps .set ("log4j2.configurationFile" , "new" );
167
- util .reload ();
168
142
assertTrue (util .hasProperty ("log4j.configurationFile" ));
169
143
assertEquals ("new" , util .getStringProperty ("log4j.configurationFile" ));
170
144
}
171
145
172
146
@ Test
173
- public void testHighPriorityNonEnumerableSource (final SystemProperties sysProps ) {
147
+ void testHighPriorityNonEnumerableSource (final SystemProperties sysProps ) {
174
148
// In both datasources
175
149
assertNotNull (properties .getProperty ("log4j2.normalizedProperty" ));
176
150
assertNotNull (properties .getProperty ("log4j.onlyLegacy" ));
@@ -201,22 +175,19 @@ public void testHighPriorityNonEnumerableSource(final SystemProperties sysProps)
201
175
}
202
176
203
177
/**
204
- * Checks the for missing null checks. The {@link NullPropertySource} returns
178
+ * Checks the for missing null checks, using a {@link PropertySource}, which returns
205
179
* {@code null} in almost every call.
206
- *
207
- * @param sysProps
208
180
*/
209
181
@ Test
210
- public void testNullChecks (final SystemProperties sysProps ) {
182
+ void testNullChecks (final SystemProperties sysProps ) {
211
183
sysProps .set ("log4j2.someProperty" , "sysProps" );
212
184
sysProps .set ("Log4jLegacyProperty" , "sysProps" );
213
- final PropertiesUtil util = new PropertiesUtil (new NullPropertySource ());
214
- assertTrue (util .hasProperty ("log4j2.someProperty" ));
215
- assertEquals ("sysProps" , util .getStringProperty ("log4j2.someProperty" ));
185
+ final PropertiesUtil util = new PropertiesUtil (() -> Integer .MIN_VALUE );
186
+
187
+ assertTrue (util .hasProperty ("Log4jSomeProperty" ));
188
+ assertEquals ("sysProps" , util .getStringProperty ("log4jSomeProperty" ));
216
189
assertTrue (util .hasProperty ("Log4jLegacyProperty" ));
217
190
assertEquals ("sysProps" , util .getStringProperty ("Log4jLegacyProperty" ));
218
- assertTrue (util .hasProperty ("log4j.legacyProperty" ));
219
- assertEquals ("sysProps" , util .getStringProperty ("log4j.legacyProperty" ));
220
191
assertFalse (util .hasProperty ("log4j2.nonExistentProperty" ));
221
192
assertNull (util .getStringProperty ("log4j2.nonExistentProperty" ));
222
193
}
0 commit comments