1919
2020public class ConfigHelperTest {
2121 // Test environment variables
22- private static final String TEST_DD_VAR = "DD_TEST_CONFIG" ;
23- private static final String TEST_DD_VAR_VAL = "test_dd_var" ;
24- private static final String TEST_OTEL_VAR = "OTEL_TEST_CONFIG" ;
25- private static final String TEST_OTEL_VAR_VAL = "test_otel_var" ;
26- private static final String TEST_REGULAR_VAR = "REGULAR_TEST_CONFIG" ;
27- private static final String TEST_REGULAR_VAR_VAL = "test_regular_var" ;
22+ private static final String DD_VAR = "DD_TEST_CONFIG" ;
23+ private static final String DD_VAR_VAL = "test_dd_var" ;
24+ private static final String OTEL_VAR = "OTEL_TEST_CONFIG" ;
25+ private static final String OTEL_VAR_VAL = "test_otel_var" ;
26+ private static final String REGULAR_VAR = "REGULAR_TEST_CONFIG" ;
27+ private static final String REGULAR_VAR_VAL = "test_regular_var" ;
2828
2929 private static final String ALIAS_DD_VAR = "DD_TEST_CONFIG_ALIAS" ;
3030 private static final String ALIAS_DD_VAL = "test_alias_val" ;
@@ -45,16 +45,15 @@ static void setUp() {
4545 env = ControllableEnvironmentVariables .setup ();
4646
4747 // Set up test configurations using SupportedConfigurationSource
48- Set <String > testSupported =
49- new HashSet <>(Arrays .asList (TEST_DD_VAR , TEST_OTEL_VAR , TEST_REGULAR_VAR ));
48+ Set <String > testSupported = new HashSet <>(Arrays .asList (DD_VAR , OTEL_VAR , REGULAR_VAR ));
5049
5150 Map <String , List <String >> testAliases = new HashMap <>();
52- testAliases .put (TEST_DD_VAR , Arrays .asList (ALIAS_DD_VAR , NON_DD_ALIAS_VAR ));
51+ testAliases .put (DD_VAR , Arrays .asList (ALIAS_DD_VAR , NON_DD_ALIAS_VAR ));
5352 testAliases .put (NEW_ALIAS_TARGET , Arrays .asList (NEW_ALIAS_KEY_1 ));
5453
5554 Map <String , String > testAliasMapping = new HashMap <>();
56- testAliasMapping .put (ALIAS_DD_VAR , TEST_DD_VAR );
57- testAliasMapping .put (NON_DD_ALIAS_VAR , TEST_DD_VAR );
55+ testAliasMapping .put (ALIAS_DD_VAR , DD_VAR );
56+ testAliasMapping .put (NON_DD_ALIAS_VAR , DD_VAR );
5857 testAliasMapping .put (NEW_ALIAS_KEY_2 , NEW_ALIAS_TARGET );
5958
6059 // Create and set test configuration source
@@ -80,49 +79,49 @@ void reset() {
8079
8180 @ Test
8281 void testBasicConfigHelper () {
83- env .set (TEST_DD_VAR , TEST_DD_VAR_VAL );
84- env .set (TEST_OTEL_VAR , TEST_OTEL_VAR_VAL );
85- env .set (TEST_REGULAR_VAR , TEST_REGULAR_VAR_VAL );
82+ env .set (DD_VAR , DD_VAR_VAL );
83+ env .set (OTEL_VAR , OTEL_VAR_VAL );
84+ env .set (REGULAR_VAR , REGULAR_VAR_VAL );
8685
87- assertEquals (TEST_DD_VAR_VAL , ConfigHelper .get ().getEnvironmentVariable (TEST_DD_VAR ));
88- assertEquals (TEST_OTEL_VAR_VAL , ConfigHelper .get ().getEnvironmentVariable (TEST_OTEL_VAR ));
89- assertEquals (TEST_REGULAR_VAR_VAL , ConfigHelper .get ().getEnvironmentVariable (TEST_REGULAR_VAR ));
86+ assertEquals (DD_VAR_VAL , ConfigHelper .get ().getEnvironmentVariable (DD_VAR ));
87+ assertEquals (OTEL_VAR_VAL , ConfigHelper .get ().getEnvironmentVariable (OTEL_VAR ));
88+ assertEquals (REGULAR_VAR_VAL , ConfigHelper .get ().getEnvironmentVariable (REGULAR_VAR ));
9089
9190 Map <String , String > result = ConfigHelper .get ().getEnvironmentVariables ();
92- assertEquals (TEST_DD_VAR_VAL , result .get (TEST_DD_VAR ));
93- assertEquals (TEST_OTEL_VAR_VAL , result .get (TEST_OTEL_VAR ));
94- assertEquals (TEST_REGULAR_VAR_VAL , result .get (TEST_REGULAR_VAR ));
91+ assertEquals (DD_VAR_VAL , result .get (DD_VAR ));
92+ assertEquals (OTEL_VAR_VAL , result .get (OTEL_VAR ));
93+ assertEquals (REGULAR_VAR_VAL , result .get (REGULAR_VAR ));
9594 }
9695
9796 @ Test
9897 void testAliasSupport () {
9998 env .set (ALIAS_DD_VAR , ALIAS_DD_VAL );
10099
101- assertEquals (ALIAS_DD_VAL , ConfigHelper .get ().getEnvironmentVariable (TEST_DD_VAR ));
100+ assertEquals (ALIAS_DD_VAL , ConfigHelper .get ().getEnvironmentVariable (DD_VAR ));
102101 Map <String , String > result = ConfigHelper .get ().getEnvironmentVariables ();
103- assertEquals (ALIAS_DD_VAL , result .get (TEST_DD_VAR ));
102+ assertEquals (ALIAS_DD_VAL , result .get (DD_VAR ));
104103 assertFalse (result .containsKey (ALIAS_DD_VAR ));
105104 }
106105
107106 @ Test
108107 void testMainConfigPrecedence () {
109108 // When both main variable and alias are set, main should take precedence
110- env .set (TEST_DD_VAR , TEST_DD_VAR_VAL );
109+ env .set (DD_VAR , DD_VAR_VAL );
111110 env .set (ALIAS_DD_VAR , ALIAS_DD_VAL );
112111
113- assertEquals (TEST_DD_VAR_VAL , ConfigHelper .get ().getEnvironmentVariable (TEST_DD_VAR ));
112+ assertEquals (DD_VAR_VAL , ConfigHelper .get ().getEnvironmentVariable (DD_VAR ));
114113 Map <String , String > result = ConfigHelper .get ().getEnvironmentVariables ();
115- assertEquals (TEST_DD_VAR_VAL , result .get (TEST_DD_VAR ));
114+ assertEquals (DD_VAR_VAL , result .get (DD_VAR ));
116115 assertFalse (result .containsKey (ALIAS_DD_VAR ));
117116 }
118117
119118 @ Test
120119 void testNonDDAliases () {
121120 env .set (NON_DD_ALIAS_VAR , NON_DD_ALIAS_VAL );
122121
123- assertEquals (NON_DD_ALIAS_VAL , ConfigHelper .get ().getEnvironmentVariable (TEST_DD_VAR ));
122+ assertEquals (NON_DD_ALIAS_VAL , ConfigHelper .get ().getEnvironmentVariable (DD_VAR ));
124123 Map <String , String > result = ConfigHelper .get ().getEnvironmentVariables ();
125- assertEquals (NON_DD_ALIAS_VAL , result .get (TEST_DD_VAR ));
124+ assertEquals (NON_DD_ALIAS_VAL , result .get (DD_VAR ));
126125 assertFalse (result .containsKey (NON_DD_ALIAS_VAR ));
127126 }
128127
@@ -150,11 +149,11 @@ void testAliasWithEmptyList() {
150149
151150 @ Test
152151 void testAliasSkippedWhenBaseAlreadyPresent () {
153- env .set (TEST_DD_VAR , TEST_DD_VAR_VAL );
152+ env .set (DD_VAR , DD_VAR_VAL );
154153 env .set (NON_DD_ALIAS_VAR , NON_DD_ALIAS_VAL );
155154
156155 Map <String , String > result = ConfigHelper .get ().getEnvironmentVariables ();
157- assertEquals (TEST_DD_VAR_VAL , result .get (TEST_DD_VAR ));
156+ assertEquals (DD_VAR_VAL , result .get (DD_VAR ));
158157 assertFalse (result .containsKey (NON_DD_ALIAS_VAR ));
159158 }
160159
@@ -180,4 +179,17 @@ void testUnsupportedEnvWarningNotInTestMode() {
180179 // Cleanup
181180 ConfigHelper .get ().setConfigInversionStrict (ConfigHelper .StrictnessPolicy .STRICT );
182181 }
182+
183+ @ Test
184+ void testCache () {
185+ env .set (DD_VAR , DD_VAR_VAL );
186+
187+ Map <String , String > result = ConfigHelper .get ().getEnvironmentVariables ();
188+ assertEquals (DD_VAR_VAL , result .get (DD_VAR ));
189+
190+ // Ensure that the cached value is returned
191+ env .set (DD_VAR , ALIAS_DD_VAL );
192+ assertEquals (DD_VAR_VAL , result .get (DD_VAR ));
193+ assertEquals (DD_VAR_VAL , ConfigHelper .get ().getEnvironmentVariable (DD_VAR ));
194+ }
183195}
0 commit comments