Exemplo n.º 1
0
    def test_pEqual(self):
        p1 = Plan("1")
        p2 = Plan("2")

        p1.add(self.routine)
        p2.add(self.routine)

        self.assertEqual(p1,p2)
        self.assertNotEqual(id(p1),id(p2))
Exemplo n.º 2
0
def combineEntriesAndStructure(theme: str, structure: list, entries: list):
    entrie_index = 0
    plan = Plan(theme)
    for struc in structure:
        if struc.count == 1:
            plan.add(entries[entrie_index])
            entrie_index += 1
        elif struc.count > 1:
            r = Routine(struc.theme)
            r.start = struc.start
            c = struc.count
            for i in range(c):
                r.add(entries[entrie_index + i])
            entrie_index += c
            plan.add(r)
    return plan
Exemplo n.º 3
0
    def test_insertTime(self):
        test_source = """00:01 hi wie gehts?

        00:03 mir gehts gut!"""
        plan= Plan("heute")
        plan.add(Entry("00:02","hi wie gehts?",start="00:01"))
        plan.add(Entry("00:05","mir gehts gut!",start="00:03"))

        string = ParseText.insertEndTime( plan,test_source,1)  
        string = string.split("\n")
        l = test_source.split("\n")
        self.assertEqual(len(string),len(l))
        self.assertEqual(l[0],string[0])
        self.assertNotEqual(l[1],string[1])
        self.assertEqual(string[1].strip(),"00:03")
        self.assertEqual(l[2],string[2])
Exemplo n.º 4
0
    def test_insertTimeWithTemplates(self):
        test_source = """00:01 hi wie gehts?\n00:03 mir gehts gut!
        """
        plan= Plan("heute")
        r = Routine("test")
        r.add(Entry("00:02","hi wie gehts?",start="00:01"))
        r.add(Entry("00:05","mir gehts gut!",start="00:03"))
        plan.add(r)
        plan.updateStarts("00:01",0)


        string = ParseText.insertEndTime( plan,test_source,2)  
        string = string.split("\n")
        l = test_source.split("\n")
        self.assertEqual(len(string),len(l))
        self.assertEqual(l[0],string[0])
        self.assertEqual(string[1],l[1])
        self.assertEqual(string[2].strip(),"00:08")
        self.assertNotEqual(l[2],string[2])
Exemplo n.º 5
0
    def test_removeElement(self):
        r1 = self.routine.clone()
        r2 = self.routine.clone()
 
        p = Plan("Today")
        p.add(r1)
        p.add(self.routine)
        p.add(r2)
        
        endBefore = p.end
        p.splitRoutine(1,2)

        self.assertEqual(endBefore,p.end)
        self.assertEqual(len(p.step_list),4)
        self.assertEqual(p.step_list[0].theme,r1.theme)
        self.assertEqual(p.step_list[3].theme,r2.theme)
Exemplo n.º 6
0
        bootstrap_packages = set(iter_packages(bootstrap_path))
        plan |= bootstrap_packages

        for package in bootstrap_packages:
            plan.packageorigins.add(package, 'bootstrap')

    for arg in args:
        if arg == "-" or os.path.exists(arg):
            subplan = Plan.init_from_file(arg, cpp_opts, pool_path)
            plan |= subplan

            for package in subplan:
                plan.packageorigins.add(package, arg)

        else:
            plan.add(arg)
            plan.packageorigins.add(arg, '_')

    trap = StdTrap(stdout=(output_path is None), stderr=False)
    try:
        spec = plan.resolve()
    finally:
        trap.close()

    if output_path is None:
        trapped_output = trap.stdout.read()
        print >> sys.stderr, trapped_output,

    spec = annotate_spec(spec, plan.packageorigins)

    if output_path is None:
Exemplo n.º 7
0
 def test_doesAddingFirstEntryChangeStart(self):
     p = Plan("h")
     p.add(Entry("00:00","h",start="10:00"))
     self.assertEqual(p.start,"10:00")
     p.add(Entry("01:00","h",start="12:00"))
     self.assertEqual(p.end,"11:00")
Exemplo n.º 8
0
    try:
        opts, args = gnu_getopt(args, 'p:', ['pool='])
    except getopt.GetoptError, e:
        usage(e)

    if not args:
        usage()

    pool_path = None

    for opt, val in opts:
        if opt in ('-p', '--pool'):
            pool_path = val

    if pool_path is None:
        pool_path = os.environ.get('FAB_POOL_PATH')

    plan = Plan(pool_path=pool_path)
    for arg in args:
        if arg == "-" or exists(arg):
            plan |= Plan.init_from_file(arg, cpp_opts, pool_path)
        else:
            plan.add(arg)

    dctrls = plan.dctrls()
    print generate_index(dctrls)


if __name__ == "__main__":
    main()