def test_format_name_attribute(): """Test the the format_name attribute be set and retrieved.""" formatter = TabularOutputFormatter(format_name='plain') assert formatter.format_name == 'plain' formatter.format_name = 'simple' assert formatter.format_name == 'simple' with pytest.raises(ValueError): formatter.format_name = 'foobar'
def test_format_name_attribute(): """Test the the format_name attribute be set and retrieved.""" formatter = TabularOutputFormatter(format_name="plain") assert formatter.format_name == "plain" formatter.format_name = "simple" assert formatter.format_name == "simple" with pytest.raises(ValueError): formatter.format_name = "foobar"
def test_unsupported_format(): """Test that TabularOutputFormatter rejects unknown formats.""" formatter = TabularOutputFormatter() with pytest.raises(ValueError): formatter.format_name = 'foobar' with pytest.raises(ValueError): formatter.format_output((), (), format_name='foobar')
def test_enforce_iterable(): """Test that all output formatters accept iterable""" formatter = TabularOutputFormatter() loremipsum = 'lorem ipsum dolor sit amet consectetur adipiscing elit sed do eiusmod'.split( ' ') for format_name in formatter.supported_formats: formatter.format_name = format_name try: formatted = next( formatter.format_output(zip(loremipsum), ['lorem'])) except TypeError: assert False, "{0} doesn't return iterable".format(format_name)