diff --git a/testing/resources/non_ascii_pretty_formatted_json.json b/testing/resources/non_ascii_pretty_formatted_json.json new file mode 100644 index 0000000..05d0d00 --- /dev/null +++ b/testing/resources/non_ascii_pretty_formatted_json.json @@ -0,0 +1,10 @@ +{ + "alist": [ + 2, + 34, + 234 + ], + "blah": null, + "foo": "bar", + "non_ascii": "中文にほんご한국어" +} diff --git a/tests/pretty_format_json_test.py b/tests/pretty_format_json_test.py index 7bfc31f..62e37f1 100644 --- a/tests/pretty_format_json_test.py +++ b/tests/pretty_format_json_test.py @@ -20,6 +20,7 @@ def test_parse_indent(): @pytest.mark.parametrize(('filename', 'expected_retval'), ( ('not_pretty_formatted_json.json', 1), ('unsorted_pretty_formatted_json.json', 1), + ('non_ascii_pretty_formatted_json.json', 1), ('pretty_formatted_json.json', 0), )) def test_pretty_format_json(filename, expected_retval): @@ -30,6 +31,7 @@ def test_pretty_format_json(filename, expected_retval): @pytest.mark.parametrize(('filename', 'expected_retval'), ( ('not_pretty_formatted_json.json', 1), ('unsorted_pretty_formatted_json.json', 0), + ('non_ascii_pretty_formatted_json.json', 1), ('pretty_formatted_json.json', 0), )) def test_unsorted_pretty_format_json(filename, expected_retval): @@ -40,6 +42,7 @@ def test_unsorted_pretty_format_json(filename, expected_retval): @pytest.mark.parametrize(('filename', 'expected_retval'), ( ('not_pretty_formatted_json.json', 1), ('unsorted_pretty_formatted_json.json', 1), + ('non_ascii_pretty_formatted_json.json', 1), ('pretty_formatted_json.json', 1), ('tab_pretty_formatted_json.json', 0), )) @@ -48,6 +51,11 @@ def test_tab_pretty_format_json(filename, expected_retval): assert ret == expected_retval +def test_non_ascii_pretty_format_json(): + ret = pretty_format_json(['--no-ensure-ascii', get_resource_path('non_ascii_pretty_formatted_json.json')]) + assert ret == 0 + + def test_autofix_pretty_format_json(tmpdir): srcfile = tmpdir.join('to_be_json_formatted.json') shutil.copyfile(