Esempio n. 1
0
 def testRun(self, start, profile, runner, errs=[]):
     with helpers.log2str():
         pp = PyPPL({
             '_log': {
                 'file': None
             },
             'profile': {
                 'ppldir': self.testdir,
                 'runner': runner
             }
         })
     import sys
     pp.start(start)
     argv = sys.argv
     sys.argv = [sys.argv[0]]
     helpers.log2sys()
     with helpers.log2str(levels='all') as (out, err):
         pp.run(profile)
     sys.argv = argv
     for s in start:
         self.assertEqual(s.runner, runner)
     stderr = err.getvalue()
     for err in errs:
         self.assertIn(err, stderr)
         stderr = stderr[(stderr.find(err) + len(err)):]
Esempio n. 2
0
def test_run_noprofile(pset, tmp_path):
    pset.p14.props.origin = 'pOrig'
    for p in pset.values():
        p.input = {'a': [1]}
        p.output = 'a:var:{{i.a}}'
    ppl = PyPPL({
        'default': {
            'ppldir': tmp_path / 'test_run_noprofile'
        }
    }).start(pset.p14, pset.p15)
    ppl.run()
    assert pset.p14.ppldir == tmp_path / 'test_run_noprofile'
Esempio n. 3
0
def test_run(pset, caplog, tmp_path):
    p1 = Proc()
    p2 = Proc()
    p2.depends = p1
    pset.p14.props.origin = 'pOrig'
    for p in pset.values():
        p.input = {'a': [1]}
        p.output = 'a:var:{{i.a}}'
    ppl = PyPPL({
        'default': {
            'ppldir': tmp_path / 'test_run_ppldir'
        }
    }).start(pset.p14, pset.p15)
    ppl.run({'ppldir': tmp_path / 'test_run_ppldir2'})
    # see if we have the right depends
    assert 'p14: START => p14 => [p16]' in caplog.text
    assert 'p15: START => p15 => [p16]' in caplog.text
    assert 'p16: [p14, p15] => p16 => [p17, p18]' in caplog.text
    assert 'p18: [p16] => p18 => [p17]' in caplog.text
    assert 'p17: [p16, p18] => p17 => [p20, p19]' in caplog.text
    assert 'p19: [p17] => p19 => END' in caplog.text
    assert 'p20: [p17] => p20 => END' in caplog.text
    #assert "p2 won't run as path can't be reached: p2 <- p1" in caplog.text
    assert pset.p14.ppldir == tmp_path / 'test_run_ppldir2'