@@ -3176,24 +3176,42 @@ def test_NoClean(self) -> None:
31763176
31773177 def test_Dump (self ) -> None :
31783178 """Test the Dump() method"""
3179-
31803179 env = self .TestEnvironment (FOO = 'foo' , FOOFLAGS = CLVar ('--bar --baz' ))
3181- assert env .Dump ('FOO' ) == "'foo'" , env .Dump ('FOO' )
3182- assert len (env .Dump ()) > 200 , env .Dump () # no args version
31833180
3184- assert env .Dump ('FOO' , 'json' ) == '"foo"' # JSON key version
3185- expect = """[\n "--bar",\n "--baz"\n ]"""
3186- self .assertEqual (env .Dump ('FOOFLAGS' , 'json' ), expect )
3187- import json
3188- env_dict = json .loads (env .Dump (format = 'json' ))
3189- assert env_dict ['FOO' ] == 'foo' # full JSON version
3181+ # changed in NEXT_VERSION: single arg now displays as a dict,
3182+ # not a bare value; more than one arg is allowed.
3183+ with self .subTest (): # one-arg version
3184+ self .assertEqual (env .Dump ('FOO' ), "{'FOO': 'foo'}" )
3185+
3186+ with self .subTest (): # multi-arg version
3187+ expect = "{'FOO': 'foo', 'FOOFLAGS': ['--bar', '--baz']}"
3188+ self .assertEqual (env .Dump ('FOO' , 'FOOFLAGS' ), expect )
3189+
3190+ with self .subTest (): # no-arg version
3191+ self .assertGreater (len (env .Dump ()), 200 )
3192+
3193+ with self .subTest (): # one-arg JSON version, simple value
3194+ expect = '{\n "FOO": "foo"\n }'
3195+ self .assertEqual (env .Dump ('FOO' , format = 'json' ), expect )
3196+
3197+ with self .subTest (): # one-arg JSON version, list value
3198+ expect = '{\n "FOOFLAGS": [\n "--bar",\n "--baz"\n ]\n }'
3199+ self .assertEqual (env .Dump ('FOOFLAGS' , format = 'json' ), expect )
3200+
3201+ with self .subTest (): # multi--arg JSON version, list value
3202+ expect = '{\n "FOO": "foo",\n "FOOFLAGS": [\n "--bar",\n "--baz"\n ]\n }'
3203+ self .assertEqual (env .Dump ('FOO' , 'FOOFLAGS' , format = 'json' ), expect )
3204+
3205+ with self .subTest (): # full JSON version
3206+ import json
3207+ env_dict = json .loads (env .Dump (format = 'json' ))
3208+ self .assertEqual (env_dict ['FOO' ], 'foo' )
3209+
3210+ with self .subTest (): # unsupported format type
3211+ with self .assertRaises (ValueError ) as cm :
3212+ env .Dump (format = 'markdown' )
3213+ self .assertEqual (str (cm .exception ), "Unsupported serialization format: markdown." )
31903214
3191- try :
3192- env .Dump (format = 'markdown' )
3193- except ValueError as e :
3194- assert str (e ) == "Unsupported serialization format: markdown."
3195- else :
3196- self .fail ("Did not catch expected ValueError." )
31973215
31983216 def test_Environment (self ) -> None :
31993217 """Test the Environment() method"""
0 commit comments