Best Python code snippet using pandera_python
test_inspection_utils.py
Source:test_inspection_utils.py
...50 def static_method_child():51 return 3525354def test_is_decorated_classmethod() -> None:55 some_instance = SomeClass()56 some_child = SomeChild()5758 cls_methods_with_deco = {59 SomeMeta.class_method_meta,60 SomeClass.class_method_meta,61 SomeClass.class_method,62 SomeChild.class_method_meta,63 SomeChild.class_method,64 SomeChild.class_method_child,65 }6667 cls_methods_from_meta = {68 SomeClass.regular_method_meta,69 SomeChild.regular_method_meta,70 }7172 all_methods = {73 # from meta74 SomeMeta.class_method_meta,75 SomeMeta.static_method_meta,76 # from parent77 SomeClass.class_method_meta,78 SomeClass.regular_method_meta,79 SomeClass.static_method_meta,80 SomeClass.class_method,81 some_instance.regular_method,82 SomeClass.static_method,83 # from child84 SomeChild.class_method_meta,85 SomeChild.regular_method_meta,86 SomeChild.static_method_meta,87 SomeChild.class_method,88 some_child.regular_method,89 SomeChild.static_method,90 SomeChild.class_method_child,91 some_child.regular_method_child,92 SomeChild.static_method_child,93 }9495 for method in cls_methods_with_deco:96 assert is_decorated_classmethod(method), f"{method} is decorated"97 for method in all_methods - cls_methods_with_deco:98 assert not is_decorated_classmethod(99 method100 ), f"{method} is not decorated"101 for method in cls_methods_from_meta:102 assert is_classmethod_from_meta(method), f"{method} comes from meta"103 for method in all_methods - cls_methods_from_meta:104 assert not is_classmethod_from_meta(105 method
...
inspection_utils.py
Source:inspection_utils.py
...12 is_method = ismethod(fn)13 return is_method and isinstance(fn.__self__, type) # type: ignore[attr-defined]141516def is_decorated_classmethod(fn: Callable) -> bool:17 """Check if fn is a classmethod declared with the @classmethod decorator.1819 Adapted from:20 https://stackoverflow.com/questions/19227724/check-if-a-function-uses-classmethod21 """22 if not _is_like_classmethod(fn):23 return False24 bound_to = fn.__self__ # type: ignore[attr-defined]25 assert isinstance(bound_to, type)26 name = fn.__name__27 for cls in bound_to.__mro__:28 descriptor = vars(cls).get(name)29 if descriptor is not None:30 return isinstance(descriptor, classmethod)31 return False323334def is_classmethod_from_meta(fn: Callable) -> bool:35 """Check if fn is a regular method defined on a metaclass36 (which behaves like an @classmethod method defined on a regular class)."""
...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!