From bb3814198e50ed4d322fb2bcefdcd3061600e96b Mon Sep 17 00:00:00 2001 From: Chris Novakovic Date: Mon, 27 Oct 2025 12:41:31 +0000 Subject: [PATCH] Rewrite wheel_resolver tests to run under unittest The wheel_resolver tests run under pytest, but don't actually rely on any pytest-specific functionality - rewrite them so they run under unittest instead. --- tools/wheel_resolver/BUILD | 2 -- tools/wheel_resolver/__init___test.py | 3 ++- tools/wheel_resolver/wheel_test.py | 12 ++++++------ 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/tools/wheel_resolver/BUILD b/tools/wheel_resolver/BUILD index 3bfa371f..16ed06c8 100644 --- a/tools/wheel_resolver/BUILD +++ b/tools/wheel_resolver/BUILD @@ -36,9 +36,7 @@ python_test( "__init___test.py", "wheel_test.py", ], - test_runner="pytest", deps=[ ":wheel", - "//third_party/python:pytest", ], ) diff --git a/tools/wheel_resolver/__init___test.py b/tools/wheel_resolver/__init___test.py index 28ec7c76..f8028e0c 100644 --- a/tools/wheel_resolver/__init___test.py +++ b/tools/wheel_resolver/__init___test.py @@ -1,9 +1,10 @@ import click.testing +import unittest import unittest.mock import tools.wheel_resolver as sut -class TestMain: +class TestMain(unittest.TestCase): def test_help(self) -> None: runner = click.testing.CliRunner() result = runner.invoke(cli=sut.main, args=["--help"]) diff --git a/tools/wheel_resolver/wheel_test.py b/tools/wheel_resolver/wheel_test.py index 28bb7ac3..87603db5 100644 --- a/tools/wheel_resolver/wheel_test.py +++ b/tools/wheel_resolver/wheel_test.py @@ -1,7 +1,7 @@ -import pytest import tools.wheel_resolver.wheel as sut import collections import typing +import unittest import unittest.mock import distlib.locators import distlib.database @@ -13,7 +13,7 @@ ) -class TestUrl: +class TestUrl(unittest.TestCase): def _mock_locator( self, *, @@ -36,7 +36,7 @@ def _mock_locator( ) def test_no_distribution(self) -> None: - with pytest.raises(sut.DistributionNotFoundError): + with self.assertRaises(sut.DistributionNotFoundError): sut.url( package_name="", package_version=None, @@ -45,7 +45,7 @@ def test_no_distribution(self) -> None: ) def test_no_compatible_urls(self) -> None: - with pytest.raises(sut.CompatibleUrlNotFoundError): + with self.assertRaises(sut.CompatibleUrlNotFoundError): sut.url( package_name="", package_version=None, @@ -53,7 +53,7 @@ def test_no_compatible_urls(self) -> None: locator=self._mock_locator(), ) - @pytest.mark.skip("caplog doesn't capture logging") + @unittest.skip("caplog doesn't capture logging") def test_warns_multiple_compatible_urls(self, caplog) -> None: with caplog.at_level(logging.WARNING, logger=sut.__name__): sut.url( @@ -73,7 +73,7 @@ def test_warns_multiple_compatible_urls(self, caplog) -> None: assert len(caplog.records) > 0 assert any(x.level == logging.WARNING for x in caplog.records) - @pytest.mark.skip( + @unittest.skip( "ordering and selection is unclear; this test case should be updated if we have a preference for a specific URL when collissions happen." ) def test_preferred_url(self) -> None: