import pytest from utils import conf @pytest.mark.parametrize( 'kwargs, expected', [ ( dict( env='dev', dev='value_dev', qa='value_qa', prod='value_prod', ), 'value_dev' ), ( dict( env='qa', dev='value_dev', qa='value_qa', prod='value_prod', ), 'value_qa' ), ( dict( env='prod', dev='value_dev', qa='value_qa', prod='value_prod', ), 'value_prod' ), ( dict( env='qa', dev='value_dev', prod='value_prod', ), 'value_prod' ), ] ) def test_env_default_negative(kwargs, expected): assert conf.env_default(**kwargs) == expected @pytest.mark.parametrize( 'kwargs, expected', [ ( dict( env='other', dev='value_dev', qa='value_qa', prod='value_prod', ), AssertionError, ), ( dict( env='qa', qa='value_qa', prod='value_prod', ), TypeError ), ( dict( env='dev', dev='value_dev', qa='value_qa', ), TypeError ), ] ) def test_env_default(kwargs, expected): with pytest.raises(expected): conf.env_default(**kwargs)