Beispiel #1
0
def test_md_jb_dep_rev():
    blocks = [
        JobScriptSpecification('block2', ['line3', 'line4'], []),
        JobScriptSpecification('block1', ['line1', 'line2'], ['block2']),
    ]

    script = generate_script_block(blocks)

    assert script == ['line3', 'line4', 'line1', 'line2']
Beispiel #2
0
def test_md_jb_dup_script_dif():
    blocks = [
        JobScriptSpecification('block2', ['line3', 'line5'], []),
        JobScriptSpecification('block2', ['line3', 'line4'], []),
    ]

    with pytest.raises(ValueError) as e:
        generate_script_block(blocks)

    assert 'block2' in str(e)
Beispiel #3
0
def test_md_jb_dep_circle():
    blocks = [
        JobScriptSpecification('block0', ['line-1', 'line0'], []),
        JobScriptSpecification('block1', ['line1', 'line2'], ['block2']),
        JobScriptSpecification('block2', ['line3', 'line4'], ['block1'])
    ]

    with pytest.raises(ValueError) as e:
        generate_script_block(blocks)

    assert 'circular' in str(e)
Beispiel #4
0
def test_md_jb_duplicate_different_depends():
    blocks = [
        JobScriptSpecification('block1', ['line1'], []),
        JobScriptSpecification('block2', ['line2'], []),
        JobScriptSpecification('block3', ['line3', 'line4'], ['block1']),
        JobScriptSpecification('block3', ['line3', 'line4'], ['block2']),
    ]

    script = generate_script_block(blocks)

    assert script == ['line1', 'line2', 'line3', 'line4']
Beispiel #5
0
def test_md_jb_single():
    'Check we correctly put a single script block into script'
    blocks = [
        JobScriptSpecification('block1', ['line1', 'line2'], [])
    ]
    script = generate_script_block(blocks)

    assert script == ['line1', 'line2']
Beispiel #6
0
def test_md_jb_no_dep():
    'Check that a missing dependency causes an error'
    blocks = [
        JobScriptSpecification('block1', ['line1', 'line2'], ['block2'])
    ]

    with pytest.raises(ValueError) as e:
        generate_script_block(blocks)

    assert 'block2' in str(e)