Skip to content

Commit da9224b

Browse files
committed
Test namespace packages
1 parent 9ba4cf3 commit da9224b

1 file changed

Lines changed: 15 additions & 0 deletions

File tree

tests/test_encoders.py

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
from jsonschema import ValidationError, validate
1010

1111
from griffe import Attribute, Class, Function, GriffeLoader, Kind, Module, Object, temporary_visited_module
12+
from griffe._internal.tests import temporary_pypackage
1213

1314

1415
def test_minimal_data_is_enough() -> None:
@@ -35,6 +36,20 @@ def test_minimal_data_is_enough() -> None:
3536
Function.from_json(minimal)
3637

3738

39+
def test_namespace_packages() -> None:
40+
with temporary_pypackage("namespace_package", init=False):
41+
loader = GriffeLoader()
42+
module = loader.load("namespace_package")
43+
dump_options = {"indent": 2, "sort_keys": True}
44+
minimal = module.as_json(full=False, **dump_options)
45+
full = module.as_json(full=True, **dump_options)
46+
reloaded = Module.from_json(minimal)
47+
assert reloaded.as_json(full=False, **dump_options) == minimal
48+
assert reloaded.as_json(full=True, **dump_options) == full
49+
assert Object.from_json(minimal)
50+
assert Object.from_json(full)
51+
52+
3853
@pytest.mark.parametrize(
3954
"symbol",
4055
[

0 commit comments

Comments
 (0)