@@ -275,6 +275,27 @@ def test_fetch_single_key_secrets_with_empty_values(self, mock_get_secret):
275275 assert "empty" not in result
276276 assert "null" not in result
277277
278+ @patch ("application_sdk.services.secretstore.SecretStore.get_secret" )
279+ def test_fetch_single_key_secrets_preserves_falsy_values (self , mock_get_secret ):
280+ """Test that valid falsy values (False, 0) are preserved and not filtered out."""
281+ credential_config = {
282+ "enabled" : "enabled_secret_key" ,
283+ "port" : "port_secret_key" ,
284+ "count" : "count_secret_key" ,
285+ }
286+
287+ mock_get_secret .side_effect = [
288+ {"enabled_secret_key" : False }, # Boolean False should be preserved
289+ {"port_secret_key" : 0 }, # Integer 0 should be preserved
290+ {"count_secret_key" : 0.0 }, # Float 0.0 should be preserved
291+ ]
292+
293+ result = SecretStore ._fetch_single_key_secrets (credential_config )
294+
295+ assert result ["enabled_secret_key" ] is False
296+ assert result ["port_secret_key" ] == 0
297+ assert result ["count_secret_key" ] == 0.0
298+
278299 @patch ("application_sdk.services.secretstore.SecretStore.get_secret" )
279300 def test_fetch_single_key_secrets_with_exceptions (self , mock_get_secret ):
280301 """Test fetching secrets in single-key mode when some lookups fail."""
0 commit comments