From 8249bc1ed4ae8dbd7df104bc9afc17de35ad1628 Mon Sep 17 00:00:00 2001 From: mark Date: Wed, 10 Jul 2024 14:37:32 +0000 Subject: [PATCH] add unit tests to show, that encoding parameter in open_resource method is necessary --- tests/test_helpers.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/tests/test_helpers.py b/tests/test_helpers.py index 3566385c..8b335f06 100644 --- a/tests/test_helpers.py +++ b/tests/test_helpers.py @@ -341,6 +341,19 @@ class TestHelpers: with app.open_resource("static/index.html", mode) as f: assert "

Hello World!

" in str(f.read()) + @pytest.mark.skip(reason="this feature is not yet implemented") + @pytest.mark.parametrize("encoding", ("utf-8", 'utf-16-le')) + def test_open_resource_with_encoding(self, encoding): + app = flask.Flask(__name__) + if os.path.isfile('tests/static/test.txt'): + os.remove('tests/static/test.txt') + + with open('tests/static/test.txt', 'w', encoding=encoding) as f: + f.write(u'' + 'Hello World!') + + with app.open_resource("static/test.txt", mode='r', encoding=encoding) as f: + assert "Hello World!" in f.read() + @pytest.mark.parametrize("mode", ("w", "x", "a", "r+")) def test_open_resource_exceptions(self, mode): app = flask.Flask(__name__)