class documentation

class TestGenericAlias: (source)

View In Hierarchy

Method test_copy Undocumented
Method test_dir Undocumented
Method test_getattr Test that getattr wraps around the underlying type, aka __origin__.
Method test_pass Compare types.GenericAlias with its numpy-based backport.
Method test_py311_features Test Python 3.11 features.
Method test_raise Test operations that are supposed to raise.
Method test_weakref Test __weakref__.
@pytest.mark.parametrize('name,func', [('__copy__', (lambda n: n == copy.copy(n))), ('__deepcopy__', (lambda n: n == copy.deepcopy(n)))])
def test_copy(self, name: str, func: FuncType): (source)

Undocumented

def test_dir(self): (source)

Undocumented

@pytest.mark.parametrize('name', GETATTR_NAMES)
def test_getattr(self, name: str): (source)

Test that getattr wraps around the underlying type, aka __origin__.

@pytest.mark.parametrize('name,func', [('__init__', (lambda n: n)), ('__init__', (lambda n: _GenericAlias(np.ndarray, Any))), ('__init__', (lambda n: _GenericAlias(np.ndarray, (Any,)))), ('__init__', (lambda n: _GenericAlias(np.ndarray, (Any, Any)))), ('__init__', (lambda n: _GenericAlias(np.ndarray, T1))), ('__init__', (lambda n: _GenericAlias(np.ndarray, (T1,)))), ('__init__', (lambda n: _GenericAlias(np.ndarray, (T1, T2)))), ('__origin__', (lambda n: n.__origin__)), ('__args__', (lambda n: n.__args__)), ('__parameters__', (lambda n: n.__parameters__)), ('__mro_entries__', (lambda n: n.__mro_entries__([object]))), ('__hash__', (lambda n: hash(n))), ('__repr__', (lambda n: repr(n))), ('__getitem__', (lambda n: n[np.float64])), ('__getitem__', (lambda n: n[ScalarType][np.float64])), ('__getitem__', (lambda n: n[Union[np.int64, ScalarType]][np.float64])), ('__getitem__', (lambda n: n[Union[T1, T2]][np.float32, np.float64])), ('__eq__', (lambda n: n == n)), ('__ne__', (lambda n: n != np.ndarray)), ('__call__', (lambda n: n((1,), np.int64, BUFFER))), ('__call__', (lambda n: n(shape=(1,), dtype=np.int64, buffer=BUFFER))), ('subclassing', (lambda n: _get_subclass_mro(n))), ('pickle', (lambda n: n == pickle.loads(pickle.dumps(n))))])
def test_pass(self, name: str, func: FuncType): (source)

Compare types.GenericAlias with its numpy-based backport.

Checker whether func runs as intended and that both GenericAlias and _GenericAlias return the same result.

@pytest.mark.parametrize('name,func,dev_version', [('__iter__', (lambda n: len(list(n))), ('beta', 1)), ('__iter__', (lambda n: next(iter(n))), ('beta', 1)), ('__unpacked__', (lambda n: n.__unpacked__), ('beta', 1)), ('Unpack', (lambda n: Unpack[n]), ('beta', 1)), ('__ne__', (lambda n: n != next(iter(n))), ('beta', 1)), ('__typing_unpacked_tuple_args__', (lambda n: n.__typing_unpacked_tuple_args__), ('beta', 3)), ('__class__', (lambda n: n.__class__ == type(n)), ('beta', 4))])
def test_py311_features(self, name: str, func: FuncType, dev_version: tuple[str, int]): (source)

Test Python 3.11 features.

@pytest.mark.parametrize('name,exc_type,func', [('__getitem__', TypeError, (lambda n: n[()])), ('__getitem__', TypeError, (lambda n: n[Any, Any])), ('__getitem__', TypeError, (lambda n: n[Any][Any])), ('isinstance', TypeError, (lambda n: isinstance(np.array(1), n))), ('issublass', TypeError, (lambda n: issubclass(np.ndarray, n))), ('setattr', AttributeError, (lambda n: setattr(n, '__origin__', int))), ('setattr', AttributeError, (lambda n: setattr(n, 'test', int))), ('getattr', AttributeError, (lambda n: getattr(n, 'test')))])
def test_raise(self, name: str, exc_type: type[BaseException], func: FuncType): (source)

Test operations that are supposed to raise.

def test_weakref(self): (source)

Test __weakref__.