def testGetPathsToStarts(self, procs, starts, proc, paths): for p in procs: ProcTree.register(p) pt = ProcTree() pt.setStarts(starts) ps = pt.getPathsToStarts(proc) self.assertListEqual(ps, paths)
def test_proctree_getpathstostarts(set2): # p15 -> p16 -> p17 -> 19 # p14 _/ \_ p18_/ \_ p20 # hide pt = ProcTree() pt.init() pt.setStarts([set2.p15]) assert pt.getPathsToStarts(set2.p15) == [] assert pt.getPathsToStarts( set2.p19) == [[set2.p17, set2.p16, set2.p15], [set2.p17, set2.p18, set2.p16, set2.p15]] assert pt.getPathsToStarts( set2.p20) == [[set2.p17, set2.p16, set2.p15], [set2.p17, set2.p18, set2.p16, set2.p15]] # assert pt.getPathsToStarts(set2.p19, check_hide = True) == [[set2.p17, set2.p16, set2.p15]] # assert pt.getPathsToStarts(set2.p20, check_hide = True) == [[set2.p17, set2.p16, set2.p15]] pt.setStarts([set2.p14, set2.p15]) assert pt.getPathsToStarts(set2.p14) == [] assert pt.getPathsToStarts(set2.p15) == [] assert pt.getPathsToStarts(set2.p16) == [[set2.p14], [set2.p15]] assert pt.getPathsToStarts(set2.p18) == [[set2.p16, set2.p14], [set2.p16, set2.p15]] assert pt.getPathsToStarts(set2.p17) == [ [set2.p16, set2.p14], [set2.p16, set2.p15], [set2.p18, set2.p16, set2.p14], [set2.p18, set2.p16, set2.p15], ] assert pt.getPathsToStarts(set2.p19) == [ [set2.p17, set2.p16, set2.p14], [set2.p17, set2.p16, set2.p15], [set2.p17, set2.p18, set2.p16, set2.p14], [set2.p17, set2.p18, set2.p16, set2.p15], ] assert pt.getPathsToStarts(set2.p20) == [ [set2.p17, set2.p16, set2.p14], [set2.p17, set2.p16, set2.p15], [set2.p17, set2.p18, set2.p16, set2.p14], [set2.p17, set2.p18, set2.p16, set2.p15], ]