Beispiel #1
0
def test_serverprocess_output(tmpdir):
    script = tmpdir.join('script.sh')
    script.write("for i in $(seq 20); do echo $i; done")
    server = testing.ServerProcess(['bash', str(script)])
    with server:
        server.ps.wait()
    assert server.output == [str(i) for i in range(1, 21)]
Beispiel #2
0
def test_serverprocess_output_wait(tmpdir):
    script = tmpdir.join('script.sh')
    script.write("echo 1; echo 2; echo 'here'; read; echo 3; echo 4;")
    server = testing.ServerProcess(['bash', str(script)])
    with server:
        server.wait_for_output('here', timeout=30)
        assert server.output == ['1', '2', 'here']
        server.ps.stdin.write('bar\n')
        server.ps.wait()

    assert server.output == ['1', '2', 'here', '3', '4']
Beispiel #3
0
def test_serverprocess_failure():
    server = testing.ServerProcess(['false'])
    with pytest.raises(testing.ServerProcessError):
        with server:
            while 1:
                server.check()
Beispiel #4
0
def test_serverprocess_success():
    server = testing.ServerProcess(['true'])
    with server:
        server.ps.wait()
    assert server.finished