11"""SSOT for all tests."""
2-
3- from collections .abc import Iterator
2+ # pyright: standard
3+ from astToolkit import Be , Make
4+ from collections .abc import Callable , Iterator
45from functools import cache
56from tests .dataSamples .Make import allSubclasses
67from typing import Any
@@ -69,67 +70,59 @@ def beNegativeTestData(request: pytest.FixtureRequest) -> tuple[str, str, str, d
6970 """
7071 return request .param
7172
72-
7373# IfThis test data and fixtures
7474
75- def generateIdentifierTestData ():
75+ def generateIdentifierTestData () -> Iterator [ tuple [ str , str , Callable , bool ]] :
7676 """Generate test data for IfThis identifier-based methods."""
77- from astToolkit import Make
78-
77+
7978 # Basic identifier patterns
8079 test_cases = [
81- # (method_name, test_identifier, node_factory, expected_result)
82- ("isNameIdentifier" , "test_var" , lambda id : Make .Name (id ), True ),
83- ("isNameIdentifier" , "different_var" , lambda id : Make .Name ("test_var" ), False ),
84- ("isFunctionDefIdentifier" , "test_func" , lambda id : Make .FunctionDef (name = id ), True ),
85- ("isFunctionDefIdentifier" , "other_func" , lambda id : Make .FunctionDef (name = "test_func" ), False ),
86- ("isClassDefIdentifier" , "TestClass" , lambda id : Make .ClassDef (name = id ), True ),
87- ("isClassDefIdentifier" , "OtherClass" , lambda id : Make .ClassDef (name = "TestClass" ), False ),
88- ("isCallIdentifier" , "print" , lambda id : Make .Call (callee = Make .Name (id )), True ),
89- ("isCallIdentifier" , "input" , lambda id : Make .Call (callee = Make .Name ("print" )), False ),
90- ("is_argIdentifier" , "param" , lambda id : Make .arg (id ), True ),
91- ("is_argIdentifier" , "other_param" , lambda id : Make .arg ("param" ), False ),
92- ("is_keywordIdentifier" , "key" , lambda id : Make .keyword (id , Make .Constant ("value" )), True ),
93- ("is_keywordIdentifier" , "other_key" , lambda id : Make .keyword ("key" , Make .Constant ("value" )), False ),
80+ # NOTE (method_name, test_identifier, node_factory, expected_result)
81+ ("isNameIdentifier" , "test_var" , lambda identifier : Make .Name (identifier ), True ),
82+ ("isNameIdentifier" , "different_var" , lambda identifier : Make .Name ("test_var" ), False ),
83+ ("isFunctionDefIdentifier" , "test_func" , lambda identifier : Make .FunctionDef (name = identifier ), True ),
84+ ("isFunctionDefIdentifier" , "other_func" , lambda identifier : Make .FunctionDef (name = "test_func" ), False ),
85+ ("isClassDefIdentifier" , "TestClass" , lambda identifier : Make .ClassDef (name = identifier ), True ),
86+ ("isClassDefIdentifier" , "OtherClass" , lambda identifier : Make .ClassDef (name = "TestClass" ), False ),
87+ ("isCallIdentifier" , "print" , lambda identifier : Make .Call (callee = Make .Name (identifier )), True ),
88+ ("isCallIdentifier" , "input" , lambda identifier : Make .Call (callee = Make .Name ("print" )), False ),
89+ ("is_argIdentifier" , "param" , lambda identifier : Make .arg (identifier ), True ),
90+ ("is_argIdentifier" , "other_param" , lambda identifier : Make .arg ("param" ), False ),
91+ ("is_keywordIdentifier" , "key" , lambda identifier : Make .keyword (identifier , Make .Constant ("value" )), True ),
92+ ("is_keywordIdentifier" , "other_key" , lambda identifier : Make .keyword ("key" , Make .Constant ("value" )), False ),
9493 ]
95-
96- for method_name , test_id , node_factory , expected in test_cases :
97- yield (method_name , test_id , node_factory , expected )
9894
99- def generateSimplePredicateTestData ():
95+ yield from test_cases
96+
97+ def generateSimplePredicateTestData () -> Iterator [tuple [str , tuple , Callable , bool ]]:
10098 """Generate test data for simple predicate methods."""
101- from astToolkit import Make , Be
102-
99+
103100 test_cases = [
104- # ( method_name, test_args, node_factory, expected_result)
101+ # method_name, test_args, node_factory, expected_result
105102 ("isConstant_value" , (42 ,), lambda : Make .Constant (42 ), True ),
106103 ("isConstant_value" , (24 ,), lambda : Make .Constant (42 ), False ),
107104 ]
108-
109- for method_name , args , node_factory , expected in test_cases :
110- yield (method_name , args , node_factory , expected )
111105
112- def generateDirectPredicateTestData ():
106+ yield from test_cases
107+
108+ def generateDirectPredicateTestData () -> Iterator [tuple [str , Callable , bool ]]:
113109 """Generate test data for direct predicate methods that take node directly."""
114- from astToolkit import Make
115-
110+
116111 test_cases = [
117- # ( method_name, node_factory, expected_result)
112+ # method_name, node_factory, expected_result
118113 ("isAttributeName" , lambda : Make .Attribute (Make .Name ("obj" ), "attr" ), True ),
119114 ("isAttributeName" , lambda : Make .Name ("obj" ), False ),
120115 ("isCallToName" , lambda : Make .Call (callee = Make .Name ("func" )), True ),
121116 ("isCallToName" , lambda : Make .Call (callee = Make .Attribute (Make .Name ("obj" ), "method" )), False ),
122117 ]
123-
124- for method_name , node_factory , expected in test_cases :
125- yield (method_name , node_factory , expected )
126118
127- def generateComplexPredicateTestData ():
119+ yield from test_cases
120+
121+ def generateComplexPredicateTestData () -> Iterator [tuple [str , tuple , Callable , bool ]]:
128122 """Generate test data for complex predicate methods."""
129- from astToolkit import Make
130-
123+
131124 test_cases = [
132- # ( method_name, test_args, node_factory, expected_result)
125+ # method_name, test_args, node_factory, expected_result
133126 ("isAttributeNamespaceIdentifier" , ("obj" , "method" ), lambda : Make .Attribute (Make .Name ("obj" ), "method" ), True ),
134127 ("isAttributeNamespaceIdentifier" , ("other_obj" , "method" ), lambda : Make .Attribute (Make .Name ("obj" ), "method" ), False ),
135128 ("isCallAttributeNamespaceIdentifier" , ("obj" , "method" ), lambda : Make .Call (callee = Make .Attribute (Make .Name ("obj" ), "method" )), True ),
@@ -141,26 +134,25 @@ def generateComplexPredicateTestData():
141134 ("isUnaryNotAttributeNamespaceIdentifier" , ("obj" , "flag" ), lambda : Make .UnaryOp (op = Make .Not (), operand = Make .Attribute (Make .Name ("obj" ), "flag" )), True ),
142135 ("isUnaryNotAttributeNamespaceIdentifier" , ("other_obj" , "flag" ), lambda : Make .UnaryOp (op = Make .Not (), operand = Make .Attribute (Make .Name ("obj" ), "flag" )), False ),
143136 ]
144-
145- for method_name , args , node_factory , expected in test_cases :
146- yield (method_name , args , node_factory , expected )
137+
138+ yield from test_cases
147139
148140@pytest .fixture (params = list (generateIdentifierTestData ()), ids = lambda param : f"{ param [0 ]} _{ param [1 ]} _{ param [3 ]} " )
149- def identifierTestData (request ) :
141+ def identifierTestData (request : pytest . FixtureRequest ) -> tuple [ str , str , Callable , bool ] :
150142 """Fixture providing test data for identifier-based IfThis methods."""
151143 return request .param
152144
153145@pytest .fixture (params = list (generateSimplePredicateTestData ()), ids = lambda param : f"{ param [0 ]} _{ param [3 ]} " )
154- def simplePredicateTestData (request ) :
146+ def simplePredicateTestData (request : pytest . FixtureRequest ) -> tuple [ str , tuple , Callable , bool ] :
155147 """Fixture providing test data for simple IfThis predicate methods."""
156148 return request .param
157149
158150@pytest .fixture (params = list (generateDirectPredicateTestData ()), ids = lambda param : f"{ param [0 ]} _{ param [2 ]} " )
159- def directPredicateTestData (request ) :
151+ def directPredicateTestData (request : pytest . FixtureRequest ) -> tuple [ str , Callable , bool ] :
160152 """Fixture providing test data for direct IfThis predicate methods."""
161153 return request .param
162154
163155@pytest .fixture (params = list (generateComplexPredicateTestData ()), ids = lambda param : f"{ param [0 ]} _{ param [3 ]} " )
164- def complexPredicateTestData (request ) :
156+ def complexPredicateTestData (request : pytest . FixtureRequest ) -> tuple [ str , tuple , Callable , bool ] :
165157 """Fixture providing test data for complex IfThis predicate methods."""
166158 return request .param
0 commit comments