def test_intersect(self): open(pjoin(self.dir, 'reg'), 'w').close() cset = contentsSet([fs.fsFile('reg', strict=False)]) cset = cset.insert_offset(self.dir) self.assertEqual(contentsSet(livefs.intersect(cset)), cset) cset = contentsSet([fs.fsFile('reg/foon', strict=False), fs.fsFile('reg/dar', strict=False), fs.fsDir('reg/dir', strict=False)]).insert_offset(self.dir) self.assertEqual(list(livefs.intersect(cset)), []) cset = contentsSet([fs.fsDir('reg', strict=False)]) self.assertEqual(list(livefs.intersect(cset)), [])
def map_new_cset_livefs(engine, csets, cset_name='new_cset'): """Find symlinks on disk that redirect new_cset, and return a livefs localized cset.""" initial = csets[cset_name] ondisk = contents.contentsSet(livefs.intersect(initial.iterdirs(), realpath=False)) livefs.recursively_fill_syms(ondisk) ret = initial.map_directory_structure(ondisk, add_conflicting_sym=True) return ret
def _get_livefs_intersect_cset(engine, csets, cset_name, realpath=False): """generates the livefs intersection against a cset""" return contents.contentsSet(livefs.intersect(csets[cset_name], realpath=realpath))