PyTest

Modules:

Name Description
conftest

Pytest top-level conftest.py.

test_pyobjson

Pytest test for Python Object JSON Tool code.

conftest

Pytest top-level conftest.py.

Classes:

Name Description
ChildChildClass

ChildChildClass for testing.

ChildClass

ChildClass for testing.

ParentClass

ParentClass for testing.

Functions:

Name Description
parent_class_with_nested_child_classes

Create ParentClass instance for testing.

parent_class_json_str

Create JSON string from ParentClass instance for testing.

ChildChildClass

Bases: PythonObjectJson

ChildChildClass for testing.

Source code in tests/conftest.py
20
21
22
23
24
25
26
class ChildChildClass(PythonObjectJson):
    """ChildChildClass for testing.
    """

    def __init__(self, child_child_class_param: str):
        super().__init__()
        self.child_child_class_param: str = child_child_class_param

ChildClass

Bases: PythonObjectJson

ChildClass for testing.

Source code in tests/conftest.py
29
30
31
32
33
34
35
class ChildClass(PythonObjectJson):
    """ChildClass for testing.
    """

    def __init__(self, child_child_class_list: List[ChildChildClass]):
        super().__init__()
        self.child_child_class_list: List[ChildChildClass] = child_child_class_list

ParentClass

Bases: PythonObjectJson

ParentClass for testing.

Source code in tests/conftest.py
38
39
40
41
42
43
44
45
46
class ParentClass(PythonObjectJson):
    """ParentClass for testing.
    """

    def __init__(self, child_class_list: List[ChildClass]):
        super().__init__()
        self.parent_class_file: Path = Path(__name__)
        self.parent_class_external_function: Optional[Callable] = external_function
        self.child_class_list: List[ChildClass] = child_class_list

parent_class_with_nested_child_classes

parent_class_with_nested_child_classes()

Create ParentClass instance for testing.

Returns:
  • ParentClass( ParentClass ) –

    Instance of ParentClass.

Source code in tests/conftest.py
49
50
51
52
53
54
55
56
@fixture(scope="module")
def parent_class_with_nested_child_classes() -> ParentClass:
    """Create ParentClass instance for testing.

    Returns:
        ParentClass: Instance of ParentClass.
    """
    return ParentClass([ChildClass([ChildChildClass("test_child_child_class_argument")])])

parent_class_json_str

parent_class_json_str()

Create JSON string from ParentClass instance for testing.

Returns:
  • str( str ) –

    JSON string derived from serialized ParentClass instance.

Source code in tests/conftest.py
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
@fixture(scope="module")
def parent_class_json_str() -> str:
    """Create JSON string from ParentClass instance for testing.

    Returns:
        str: JSON string derived from serialized ParentClass instance.

    """
    return json.dumps(
        {
            "conftest.parentclass": {
                "path.parent_class_file": "conftest",
                "callable.parent_class_external_function": "external_function:param1,param2",
                "child_class_list": [
                    {
                        "conftest.childclass": {
                            "child_child_class_list": [
                                {
                                    "conftest.childchildclass": {
                                        "child_child_class_param": "test_child_child_class_argument"
                                    }
                                }
                            ]
                        }
                    }
                ]
            }
        },
        ensure_ascii=False,
        indent=2
    )

test_pyobjson

Pytest test for Python Object JSON Tool code.

Note

Tests pyobjson.base module.