예제 #1
0
 def test_ok(self):
     getargs = {'x' : ('t1','x'), 'y': ('t2','z')}
     t = task.Task('t3', None, getargs=getargs)
     assert len(t.uptodate) == 2
     assert ['t1', 't2'] == sorted([t.uptodate[0][0].dep_name,
                                    t.uptodate[1][0].dep_name])
예제 #2
0
파일: test_task.py 프로젝트: vlcinsky/doit
 def test_task_dep(self):
     my_task = task.Task("Task X", ["taskcmd"], task_dep=["123", "4*56"])
     assert ["123"] == my_task.task_dep
     assert ["4*56"] == my_task.wild_dep
예제 #3
0
파일: test_task.py 프로젝트: vlcinsky/doit
 def test_targets_can_be_path(self):
     my_task = task.Task("Task X", ["taskcmd"],
                         targets=["123",
                                  Path("456"),
                                  PurePath("789")])
     assert ["123", "456", "789"] == my_task.targets
예제 #4
0
파일: test_task.py 프로젝트: vlcinsky/doit
 def test_str(self):
     t = task.Task("Task X", ["taskcmd"], uptodate=['my-cmd xxx'])
     assert t.uptodate[0] == ('my-cmd xxx', [], {})
예제 #5
0
파일: test_task.py 프로젝트: vlcinsky/doit
 def test_file_dep_path(self):
     my_task = task.Task("Task X", ["taskcmd"],
                         file_dep=["123",
                                   Path("456"),
                                   PurePath("789")])
     assert {"123", "456", "789"} == my_task.file_dep
예제 #6
0
 def test_setup(self):
     t = task.Task("task5", ['action'], setup=["task2"])
     assert ["task2"] == t.setup_tasks
예제 #7
0
파일: test_task.py 프로젝트: vlcinsky/doit
 def test_NoneIgnored(self):
     t = task.Task("Task X", ["taskcmd"], uptodate=[None])
     assert t.uptodate == [(None, None, None)]
예제 #8
0
 def test_many(self):
     t = task.Task("taskX",["%s hi_stdout hi2" % PROGRAM,
                            "%s hi_list hi6" % PROGRAM])
     t.execute()
     got = "".join([a.out for a in t.actions])
     assert "hi_stdouthi_list" == got, repr(got)
예제 #9
0
 def test_fail_second(self):
     t = task.Task("taskX", ["%s 1 2" % PROGRAM, "%s 1 2 3" % PROGRAM])
     got = t.execute()
     assert isinstance(got, TaskError)
예제 #10
0
 def test_success(self):
     t = task.Task("taskX", [PROGRAM])
     t.execute()
예제 #11
0
 def test_result(self):
     # task.result is the value of last action
     t = task.Task('t1', ["%s hi_list hi1" % PROGRAM,
                          "%s hi_list hi2" % PROGRAM])
     t.execute()
     assert "hi_listhi2" == t.result
예제 #12
0
 def test_repr(self):
     t = task.Task("taskX",None,('t1','t2'))
     assert "<Task: taskX>" == repr(t), repr(t)
예제 #13
0
 def test_custom_title(self):
     t = task.Task("MyName",["MyAction"], title=(lambda x: "X%sX" % x.name))
     assert "X%sX"%str(t.name) == t.title(), t.title()
예제 #14
0
 def test_title(self):
     t = task.Task("MyName",["MyAction"])
     assert "MyName" == t.title()
예제 #15
0
 def test_groupTask(self):
     # group tasks have no action
     t = task.Task("taskX", None)
     assert t.actions == []
예제 #16
0
 def test_fail(self):
     def my_raise():
         raise Exception('hoho')
     t = task.Task('t1', [], teardown=[(my_raise,)])
     got = t.execute_teardown()
     assert isinstance(got, CatchedException)
예제 #17
0
 def test_dependencySequenceIsValid(self):
     task.Task("Task X", ["taskcmd"], file_dep=["123","456"])
예제 #18
0
 def test_clean_non_existent_targets(self):
     t = task.Task('xxx', None, targets=["i_dont_exist"], clean=True)
     t.clean(StringIO(), False)
예제 #19
0
 def test_execute_value_savers(self):
     t = task.Task("Task X", ["taskcmd"])
     t.value_savers.append(lambda: {'v1':1})
     t.save_extra_values()
     assert 1 == t.values['v1']
예제 #20
0
 def test_no_doc(self):
     t = task.Task("name", ["action"])
     assert '' == t.doc
예제 #21
0
파일: test_task.py 프로젝트: vlcinsky/doit
    def test_callable_function(self):
        def custom_check():
            return True

        t = task.Task("Task X", ["taskcmd"], uptodate=[custom_check])
        assert t.uptodate[0] == (custom_check, [], {})
예제 #22
0
 def test_single_line(self):
     t = task.Task("name", ["action"], doc="  i am doc")
     assert "i am doc" == t.doc
예제 #23
0
파일: test_task.py 프로젝트: vlcinsky/doit
 def test_dependencyStringIsFile(self):
     my_task = task.Task("Task X", ["taskcmd"], file_dep=["123", "456"])
     assert set(["123", "456"]) == my_task.file_dep
예제 #24
0
 def test_multiple_lines(self):
     t = task.Task("name", ["action"], doc="i am doc  \n with many lines\n")
     assert "i am doc" == t.doc
예제 #25
0
파일: test_task.py 프로젝트: vlcinsky/doit
 def test_file_dep_unicode(self):
     unicode_name = "中文"
     my_task = task.Task("Task X", ["taskcmd"], file_dep=[unicode_name])
     assert unicode_name in my_task.file_dep
예제 #26
0
 def test_start_with_empty_lines(self):
     t = task.Task("name", ["action"], doc="\n\n i am doc \n")
     assert "i am doc" == t.doc
예제 #27
0
파일: test_task.py 프로젝트: vlcinsky/doit
 def test_calc_dep(self):
     my_task = task.Task("Task X", ["taskcmd"], calc_dep=["123"])
     assert set(["123"]) == my_task.calc_dep
예제 #28
0
 def test_just_new_line(self):
     t = task.Task("name", ["action"], doc="  \n  \n\n")
     assert "" == t.doc
예제 #29
0
파일: test_task.py 프로젝트: vlcinsky/doit
 def test_delayed_after_execution(self):
     # after `executed` creates an implicit task_dep
     delayed = task.DelayedLoader(lambda: None, executed='foo')
     t1 = task.Task('bar', None, loader=delayed)
     assert t1.task_dep == ['foo']
예제 #30
0
 def test_tuple(self):
     def custom_check(pos_arg, xxx=None): return True
     t = task.Task("Task X", ["taskcmd"],
                   uptodate=[(custom_check, [123], {'xxx':'yyy'})])
     assert t.uptodate[0] == (custom_check, [123], {'xxx':'yyy'})