def test_init_state_fail(gstate: GlobalState, fs: fake_filesystem.FakeFilesystem) -> None: from gravel.controllers.nodes.mgr import NodeError if fs.exists("/etc/aquarium/node.json"): fs.remove("/etc/aquarium/node.json") nodemgr = NodeMgr(gstate) assert fs.exists("/etc/aquarium/node.json") for f in fs.listdir("/etc/aquarium"): fs.remove(f"/etc/aquarium/{f}") assert fs.exists("/etc/aquarium") fs.rmdir("/etc/aquarium") fs.create_dir("/etc/aquarium", perm_bits=0o500) throws = False try: nodemgr._init_state() except NodeError: throws = True assert throws # clean up for f in fs.listdir("/etc/aquarium"): fs.remove(f"/etc/aquarium/{f}") fs.rmdir("/etc/aquarium")
def test_fail_ctor(gstate: GlobalState, fs: fake_filesystem.FakeFilesystem) -> None: from gravel.controllers.nodes.mgr import NodeError if fs.exists("/etc/aquarium/node.json"): fs.remove("/etc/aquarium/node.json") fs.create_dir("/etc/aquarium/node.json") throws = False try: NodeMgr(gstate) except NodeError: throws = True except Exception: assert False assert throws # clean up fs.rmdir("/etc/aquarium/node.json")