Unverified Commit 120e7af6 authored by Philip Meier's avatar Philip Meier Committed by GitHub
Browse files

fix assert_run_python_script on Windows (#7346)

parent af048198
...@@ -844,17 +844,20 @@ class InfoBase: ...@@ -844,17 +844,20 @@ class InfoBase:
def assert_run_python_script(source_code): def assert_run_python_script(source_code):
"""Utility to check assertions in an independent Python subprocess. """Utility to check assertions in an independent Python subprocess.
The script provided in the source code should return 0 and not print The script provided in the source code should return 0 and not print
anything on stderr or stdout. Taken from scikit-learn test utils. anything on stderr or stdout. Modified from scikit-learn test utils.
source_code (str): The Python source code to execute.
Args:
source_code (str): The Python source code to execute.
""" """
with tempfile.NamedTemporaryFile(mode="wb") as f: with get_tmp_dir() as root:
f.write(source_code.encode()) path = pathlib.Path(root) / "main.py"
f.flush() with open(path, "w") as file:
file.write(source_code)
cmd = [sys.executable, f.name]
try: try:
out = check_output(cmd, stderr=STDOUT) out = check_output([sys.executable, str(path)], stderr=STDOUT)
except CalledProcessError as e: except CalledProcessError as e:
raise RuntimeError(f"script errored with output:\n{e.output.decode()}") raise RuntimeError(f"script errored with output:\n{e.output.decode()}")
if out != b"": if out != b"":
......
...@@ -2,7 +2,6 @@ import math ...@@ -2,7 +2,6 @@ import math
import os import os
import random import random
import re import re
import sys
import textwrap import textwrap
import warnings import warnings
from functools import partial from functools import partial
...@@ -2279,10 +2278,6 @@ def test_random_grayscale_with_grayscale_input(): ...@@ -2279,10 +2278,6 @@ def test_random_grayscale_with_grayscale_input():
), ),
) )
@pytest.mark.parametrize("from_private", (True, False)) @pytest.mark.parametrize("from_private", (True, False))
@pytest.mark.skipif(
sys.platform in ("win32", "cygwin"),
reason="assert_run_python_script is broken on Windows. Possible fix in https://github.com/pytorch/vision/pull/7346",
)
def test_functional_deprecation_warning(import_statement, from_private): def test_functional_deprecation_warning(import_statement, from_private):
if from_private: if from_private:
import_statement = import_statement.replace("functional", "_functional") import_statement = import_statement.replace("functional", "_functional")
......
...@@ -2,7 +2,6 @@ import itertools ...@@ -2,7 +2,6 @@ import itertools
import pathlib import pathlib
import random import random
import re import re
import sys
import textwrap import textwrap
import warnings import warnings
from collections import defaultdict from collections import defaultdict
...@@ -2102,10 +2101,6 @@ def test_sanitize_bounding_boxes_errors(): ...@@ -2102,10 +2101,6 @@ def test_sanitize_bounding_boxes_errors():
), ),
) )
@pytest.mark.parametrize("call_disable_warning", (True, False)) @pytest.mark.parametrize("call_disable_warning", (True, False))
@pytest.mark.skipif(
sys.platform in ("win32", "cygwin"),
reason="assert_run_python_script is broken on Windows. Possible fix in https://github.com/pytorch/vision/pull/7346",
)
def test_warnings_v2_namespaces(import_statement, call_disable_warning): def test_warnings_v2_namespaces(import_statement, call_disable_warning):
if call_disable_warning: if call_disable_warning:
source = f""" source = f"""
...@@ -2125,10 +2120,6 @@ def test_warnings_v2_namespaces(import_statement, call_disable_warning): ...@@ -2125,10 +2120,6 @@ def test_warnings_v2_namespaces(import_statement, call_disable_warning):
assert_run_python_script(textwrap.dedent(source)) assert_run_python_script(textwrap.dedent(source))
@pytest.mark.skipif(
sys.platform in ("win32", "cygwin"),
reason="assert_run_python_script is broken on Windows. Possible fix in https://github.com/pytorch/vision/pull/7346",
)
def test_no_warnings_v1_namespace(): def test_no_warnings_v1_namespace():
source = """ source = """
import warnings import warnings
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment