diff --git a/src/dbetto/textdb.py b/src/dbetto/textdb.py index afa3dd2..849eacb 100644 --- a/src/dbetto/textdb.py +++ b/src/dbetto/textdb.py @@ -307,7 +307,9 @@ def __getitem__(self, item: str | Path) -> TextDB | AttrsDict | list | None: # if directory, construct another TextDB object if obj.is_dir(): - db_ptr.__store__[item_id] = TextDB(obj, lazy=self.__lazy__) + db_ptr.__store__[item_id] = TextDB( + obj, lazy=self.__lazy__, hidden=self.__hidden__ + ) else: # try to attach an extension if file cannot be found diff --git a/tests/test_textdb.py b/tests/test_textdb.py index 094329b..7e7d4f5 100644 --- a/tests/test_textdb.py +++ b/tests/test_textdb.py @@ -324,3 +324,17 @@ def test_lazyness(): "file2", "file3", ] + + +def test_hidden(): + jdb = TextDB(testdb, hidden=True, lazy=False) + assert getattr(jdb, "__hidden__", False) is True + + assert isinstance(jdb.dir1, TextDB) + assert getattr(jdb.dir1, "__hidden__", False) is True + + assert isinstance(jdb.dir1.dir2, TextDB) + assert getattr(jdb.dir1.dir2, "__hidden__", False) is True + + assert isinstance(jdb.dir2, TextDB) + assert getattr(jdb.dir2, "__hidden__", False) is True