"vscode:/vscode.git/clone" did not exist on "bd693b698f948d4b786b1e00e9e4208caf4834d2"
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:
def assert_run_python_script(source_code):
"""Utility to check assertions in an independent Python subprocess.
The script provided in the source code should return 0 and not print
anything on stderr or stdout. Taken from scikit-learn test utils.
source_code (str): The Python source code to execute.
anything on stderr or stdout. Modified from scikit-learn test utils.
Args:
source_code (str): The Python source code to execute.
"""
with tempfile.NamedTemporaryFile(mode="wb") as f:
f.write(source_code.encode())
f.flush()
with get_tmp_dir() as root:
path = pathlib.Path(root) / "main.py"
with open(path, "w") as file:
file.write(source_code)
cmd = [sys.executable, f.name]
try:
out = check_output(cmd, stderr=STDOUT)
out = check_output([sys.executable, str(path)], stderr=STDOUT)
except CalledProcessError as e:
raise RuntimeError(f"script errored with output:\n{e.output.decode()}")
if out != b"":
......
......@@ -2,7 +2,6 @@ import math
import os
import random
import re
import sys
import textwrap
import warnings
from functools import partial
......@@ -2279,10 +2278,6 @@ def test_random_grayscale_with_grayscale_input():
),
)
@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):
if from_private:
import_statement = import_statement.replace("functional", "_functional")
......
......@@ -2,7 +2,6 @@ import itertools
import pathlib
import random
import re
import sys
import textwrap
import warnings
from collections import defaultdict
......@@ -2102,10 +2101,6 @@ def test_sanitize_bounding_boxes_errors():
),
)
@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):
if call_disable_warning:
source = f"""
......@@ -2125,10 +2120,6 @@ def test_warnings_v2_namespaces(import_statement, call_disable_warning):
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():
source = """
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