From 87b0023344bd8ce3b4b0186bcd9543cc05c59de6 Mon Sep 17 00:00:00 2001 From: Hong Xu Date: Sat, 1 Feb 2020 21:20:20 -0800 Subject: [PATCH] Parametrize the tests --- tests/test_tags.py | 56 +++++++++------------------------------------- 1 file changed, 10 insertions(+), 46 deletions(-) diff --git a/tests/test_tags.py b/tests/test_tags.py index a4492a8a3..ea96c9bb4 100644 --- a/tests/test_tags.py +++ b/tests/test_tags.py @@ -32,21 +32,6 @@ def example_tag(): return tags.Tag("py3", "none", "any") -@pytest.fixture -def is_x86(): - return re.match(r"(i\d86|x86_64)", platform.machine()) is not None - - -@pytest.fixture -def is_arm(): - return re.match(r"(armv\d|aarch64)", platform.machine()) is not None - - -@pytest.fixture -def is_64bit_os(): - return platform.architecture()[0] == "64bit" - - @pytest.fixture def manylinux_module(monkeypatch): monkeypatch.setattr(tags, "_have_compatible_glibc", lambda *args: False) @@ -420,37 +405,16 @@ def test_glibc_version_string_none(self, monkeypatch): monkeypatch.setattr(tags, "_glibc_version_string", lambda: None) assert not tags._have_compatible_glibc(2, 4) - def test_linux_platforms_64bit_on_64bit_os(self, is_64bit_os, is_x86, monkeypatch): - if platform.system() != "Linux" or not is_64bit_os or not is_x86: - monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") - monkeypatch.setattr(tags, "_is_manylinux_compatible", lambda *args: False) - linux_platform = list(tags._linux_platforms(is_32bit=False))[-1] - assert linux_platform == "linux_x86_64" - - def test_linux_platforms_32bit_on_64bit_os(self, is_64bit_os, is_x86, monkeypatch): - if platform.system() != "Linux" or not is_64bit_os or not is_x86: - monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64") - monkeypatch.setattr(tags, "_is_manylinux_compatible", lambda *args: False) - linux_platform = list(tags._linux_platforms(is_32bit=True))[-1] - assert linux_platform == "linux_i686" - - def test_linux_platforms_64bit_on_64bit_os_arm( - self, is_64bit_os, is_arm, monkeypatch - ): - if platform.system() != "Linux" or not is_64bit_os or not is_arm: - monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux-aarch64") - monkeypatch.setattr(tags, "_is_manylinux_compatible", lambda *args: False) - linux_platform = list(tags._linux_platforms(is_32bit=False))[-1] - assert linux_platform == "linux_aarch64" - - def test_linux_platforms_32bit_on_64bit_os_arm( - self, is_64bit_os, is_arm, monkeypatch - ): - if platform.system() != "Linux" or not is_64bit_os or not is_arm: - monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux-aarch64") - monkeypatch.setattr(tags, "_is_manylinux_compatible", lambda *args: False) - linux_platform = list(tags._linux_platforms(is_32bit=True))[-1] - assert linux_platform == "linux_armv7l" + @pytest.mark.parametrize("arch,is_32bit,expected", + [('linux-x86_64', False, "linux_x86_64"), + ('linux-x86_64', True, "linux_i686"), + ('linux-aarch64', False, "linux_aarch64"), + ('linux-aarch64', True, "linux_armv7l")]) + def test_linux_platforms_32_64bit_on_64bit_os(self, arch, is_32bit, expected, monkeypatch): + monkeypatch.setattr(distutils.util, "get_platform", lambda: arch) + monkeypatch.setattr(tags, "_is_manylinux_compatible", lambda *args: False) + linux_platform = list(tags._linux_platforms(is_32bit=is_32bit))[-1] + assert linux_platform == expected def test_linux_platforms_manylinux_unsupported(self, monkeypatch): monkeypatch.setattr(distutils.util, "get_platform", lambda: "linux_x86_64")