| From da83bd7ca0959027086115f23534957b0917aaa5 Mon Sep 17 00:00:00 2001 |
| From: Khem Raj <raj.khem@gmail.com> |
| Date: Thu, 27 Apr 2023 22:21:24 -0700 |
| Subject: [PATCH] tests: Fix test_bytes_args |
| |
| sys.stdin.encoding is readonly therefore use Mocking to wrap it. |
| Sourced from - Alpine |
| |
| Upstream-Status: Pending |
| Signed-off-by: Khem Raj <raj.khem@gmail.com> |
| --- |
| tests/test_arguments.py | 6 +++++- |
| 1 file changed, 5 insertions(+), 1 deletion(-) |
| |
| diff --git a/tests/test_arguments.py b/tests/test_arguments.py |
| index 735df4b..3395c55 100644 |
| --- a/tests/test_arguments.py |
| +++ b/tests/test_arguments.py |
| @@ -1,4 +1,5 @@ |
| import sys |
| +from unittest import mock |
| |
| import pytest |
| |
| @@ -86,9 +87,12 @@ def test_bytes_args(runner, monkeypatch): |
| ), "UTF-8 encoded argument should be implicitly converted to Unicode" |
| |
| # Simulate empty locale environment variables |
| - monkeypatch.setattr(sys.stdin, "encoding", "utf-8") |
| monkeypatch.setattr(sys, "getfilesystemencoding", lambda: "utf-8") |
| monkeypatch.setattr(sys, "getdefaultencoding", lambda: "utf-8") |
| + # sys.stdin.encoding is readonly, needs some extra effort to patch. |
| + stdin = mock.Mock(wraps=sys.stdin) |
| + stdin.encoding = "utf-8" |
| + monkeypatch.setattr(sys, "stdin", stdin) |
| |
| runner.invoke( |
| from_bytes, |
| -- |
| 2.40.1 |
| |