def test_link(self): """ / +- foo +- baz +- bar +- foo@ """ foo = path.mount("/", path.Node("foo")) self.assertFalse(path.is_link("/foo")) path.mount("/", path.Node("bar")) lfoo = path.link("/bar", foo) self.assertEqual(lfoo.path, "/bar/foo") self.assertEqual(path.get("/bar/foo"), foo) self.assertTrue(path.is_link("/bar/foo")) baz = path.mount("/bar/foo", path.Node("baz")) self.assertEqual(baz.path, "/foo/baz") path.umount("/bar/foo") self.assertEqual(path.get("/foo"), foo)
def test_depth_two(self): foo = path.Node("foo") path.mount("/", foo) bar = path.Node("bar") path.mount("/foo", bar) self.assertTrue(path.exists("/foo/bar")) self.assertEqual(path.select("/foo"), ("bar",)) self.assertEqual(path.get("/foo/bar"), bar) path.umount("/foo/bar") self.assertEqual(path.select("/foo"), ()) self.assertEqual(path.select("/"), ("foo",))
def get(val): """Return config value""" f = open(path.get("config"), 'r') for line in f: if re.search("^"+val+"=", line): result = re.sub (val, '', line) result = re.sub (r'^.*"(.+)".*\n$', r"\1", result) f.close() return result
def update_registered_mods(): """Make a list with all enabled igs mods""" global REGISTERED_MODS REGISTERED_MODS = [] # re-initializing REGISTERED_MODS f = open(path.get('registered-mods'), 'r') for line in f: mod = re.sub(r'\s*$', '', line) mod = re.sub(r'^\s*', '', mod) if not re.search(r'^#', mod) and re.search(r'^\w+$', mod) and mod not in REGISTERED_MODS: REGISTERED_MODS.append(mod) f.close() return REGISTERED_MODS