This is an automated email from the ASF dual-hosted git repository.

skrawcz pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/hamilton.git

commit 357a43ac812109eb8296fd895354cfa1694a0a29
Author: Dev-iL <[email protected]>
AuthorDate: Sat Feb 14 16:57:11 2026 +0200

    Remove tests for pre-3.9 types (Dict, Tuple)
---
 tests/function_modifiers/test_expanders.py | 18 +-----------------
 tests/test_type_utils.py                   |  3 +--
 2 files changed, 2 insertions(+), 19 deletions(-)

diff --git a/tests/function_modifiers/test_expanders.py 
b/tests/function_modifiers/test_expanders.py
index 7a9942ca..55ae3718 100644
--- a/tests/function_modifiers/test_expanders.py
+++ b/tests/function_modifiers/test_expanders.py
@@ -367,9 +367,6 @@ class MyDictInheritanceBadCase(TypedDict):
 @pytest.mark.parametrize(
     "return_type_str,fields",
     [
-        ("Dict[str, int]", ("A", "B")),
-        ("Dict[str, int]", (["A", "B"])),
-        ("Dict", {"A": str, "B": int}),
         ("MyDict", ()),
         ("MyDict", {"test2": str}),
         ("MyDictInheritance", {"test": InheritedObject}),
@@ -394,10 +391,6 @@ def 
test_extract_fields_valid_annotations_for_inferred_types(return_type_str, fi
 @pytest.mark.parametrize(
     "return_type_str,fields",
     [
-        ("Dict", ("A", "B")),
-        ("Dict", (["A", "B"])),
-        ("Dict", (["A"])),
-        ("Dict", (["A", "B", "C"])),
         ("int", {"A": int}),
         ("list", {"A": int}),
         ("np.ndarray", {"A": int}),
@@ -774,9 +767,6 @@ def test_unpack_fields_transform_on_indeterminate_tuple():
 @pytest.mark.parametrize(
     "return_type_str,fields",
     [
-        ("Tuple[int, int]", ("A", "B")),
-        ("Tuple[int, int, str]", ("A", "B", "C")),
-        ("Tuple[int, ...]", ("A", "B")),
         ("tuple[int, int]", ("A", "B")),
         ("tuple[int, int, str]", ("A", "B", "C")),
         ("tuple[int, ...]", ("A", "B")),
@@ -798,11 +788,6 @@ def 
test_unpack_fields_valid_type_annotations(return_type_str, fields):
         ("int", ("A",)),
         ("list", ("A",)),
         ("dict", ("A",)),
-        ("Tuple", ("A",)),
-        ("Tuple[int, int]", ("A", "B", "C")),
-        pytest.param("Tuple[...]", ("A", "B", "C"), 
marks=skipif(**prior_to_py311)),
-        pytest.param("Tuple[int, int, ...]", ("A", "B"), 
marks=skipif(**prior_to_py311)),
-        pytest.param("Tuple[..., int, int]", ("A", "B"), 
marks=skipif(**prior_to_py311)),
         ("tuple", ("A",)),
         ("tuple[int, int]", ("A", "B", "C")),
         ("tuple[...]", ("A", "B", "C")),
@@ -811,8 +796,7 @@ def 
test_unpack_fields_valid_type_annotations(return_type_str, fields):
     ],
 )
 def test_unpack_fields_invalid_type_annotations(return_type_str, fields):
-    # NOTE: Prior to Python 3.11, improper use of the ellipsis in a 
typing.Tuple was an error.
-    # However, improper use of an ellipsis in a (bare) tuple (python 3.9+) was 
not an error.
+    # Note: improper use of an ellipsis in a (bare) tuple (python 3.9+) is not 
an error.
 
     return_type = eval(return_type_str)
 
diff --git a/tests/test_type_utils.py b/tests/test_type_utils.py
index fd343860..9931b246 100644
--- a/tests/test_type_utils.py
+++ b/tests/test_type_utils.py
@@ -149,12 +149,11 @@ def test_validate_types_sad(type_):
 @pytest.mark.parametrize(
     "candidate,type_,expected",
     [
-        (int, int, True),
+        (int, int, True),  # a class is always a subclass of itself.
         (int, float, False),
         # Not safe so we return false
         (list[int], list, False),
         (frozenset[int], set[int], False),
-        (dict, dict, False),
     ],
 )
 def test__safe_subclass(candidate, type_, expected):

Reply via email to