@@ -1504,7 +1504,8 @@ def test_appconf_provider_get_configuration_no_transform(mock_name, config):
1504
1504
1505
1505
try :
1506
1506
value : str = provider .get (mock_name )
1507
- assert value == json .dumps (mock_body_json )
1507
+ str_value = value .decode ("utf-8" )
1508
+ assert str_value == json .dumps (mock_body_json )
1508
1509
stubber .assert_no_pending_responses ()
1509
1510
finally :
1510
1511
stubber .deactivate ()
@@ -1515,11 +1516,12 @@ def test_appconf_get_app_config_no_transform(monkeypatch, mock_name):
1515
1516
Test get_app_config()
1516
1517
"""
1517
1518
mock_body_json = {"myenvvar1" : "Black Panther" , "myenvvar2" : 3 }
1519
+ mock_body_bytes = str .encode (json .dumps (mock_body_json ))
1518
1520
1519
1521
class TestProvider (BaseProvider ):
1520
- def _get (self , name : str , ** kwargs ) -> str :
1522
+ def _get (self , name : str , ** kwargs ) -> bytes :
1521
1523
assert name == mock_name
1522
- return json . dumps ( mock_body_json ). encode ( "utf-8" )
1524
+ return mock_body_bytes
1523
1525
1524
1526
def _get_multiple (self , path : str , ** kwargs ) -> Dict [str , str ]:
1525
1527
raise NotImplementedError ()
@@ -1531,6 +1533,30 @@ def _get_multiple(self, path: str, **kwargs) -> Dict[str, str]:
1531
1533
value = parameters .get_app_config (mock_name , environment = environment , application = application )
1532
1534
str_value = value .decode ("utf-8" )
1533
1535
assert str_value == json .dumps (mock_body_json )
1536
+ assert value == mock_body_bytes
1537
+
1538
+
1539
+ def test_appconf_get_app_config_transform_json (monkeypatch , mock_name ):
1540
+ """
1541
+ Test get_app_config()
1542
+ """
1543
+ mock_body_json = {"myenvvar1" : "Black Panther" , "myenvvar2" : 3 }
1544
+ mock_body_bytes = str .encode (json .dumps (mock_body_json ))
1545
+
1546
+ class TestProvider (BaseProvider ):
1547
+ def _get (self , name : str , ** kwargs ) -> str :
1548
+ assert name == mock_name
1549
+ return mock_body_bytes
1550
+
1551
+ def _get_multiple (self , path : str , ** kwargs ) -> Dict [str , str ]:
1552
+ raise NotImplementedError ()
1553
+
1554
+ monkeypatch .setitem (parameters .base .DEFAULT_PROVIDERS , "appconfig" , TestProvider ())
1555
+
1556
+ environment = "dev"
1557
+ application = "myapp"
1558
+ value = parameters .get_app_config (mock_name , environment = environment , application = application , transform = "json" )
1559
+ assert value == mock_body_json
1534
1560
1535
1561
1536
1562
def test_appconf_get_app_config_new (monkeypatch , mock_name , mock_value ):
0 commit comments