Esempio n. 1
0
def test_panic_timer():
    assert_equal(RE.state, 'idle')
    panic_timer(RE, 1)  # panic in 1 second
    assert_raises(PanicError, RE, checkpoint_forever())
    # If we panic while runnning, we cannot resume. The run is aborted and we
    # land in 'idle'
    assert_equal(RE.state, 'idle')
    assert_true(RE._panic)
    RE.all_is_well()
    assert_equal(RE.state, 'idle')
Esempio n. 2
0
def test_panic_timer():
    assert_equal(RE.state, 'idle')
    panic_timer(RE, 1)  # panic in 1 second
    assert_raises(PanicError, RE, checkpoint_forever())
    # If we panic while runnning, we cannot resume. The run is aborted and we
    # land in 'idle'
    assert_equal(RE.state, 'idle')
    assert_true(RE._panic)
    RE.all_is_well()
    assert_equal(RE.state, 'idle')
Esempio n. 3
0
def test_pause_from_outside():
    assert_equal(RE.state, 'idle')

    def local_pause():
        RE.request_pause()

    loop.call_later(1, local_pause)
    RE(checkpoint_forever())
    assert_equal(RE.state, 'paused')

    # Cue up a second pause requests in 2 seconds.
    loop.call_later(2, local_pause)
    RE.resume()
    assert_equal(RE.state, 'paused')

    RE.abort()
    assert_equal(RE.state, 'idle')
Esempio n. 4
0
def test_pause_from_outside():
    assert_equal(RE.state, 'idle')

    def local_pause():
        RE.request_pause()

    loop.call_later(1, local_pause)
    RE(checkpoint_forever())
    assert_equal(RE.state, 'paused')

    # Cue up a second pause requests in 2 seconds.
    loop.call_later(2, local_pause)
    RE.resume()
    assert_equal(RE.state, 'paused')

    RE.abort()
    assert_equal(RE.state, 'idle')
Esempio n. 5
0
def test_pause_from_outside(fresh_RE):
    RE = fresh_RE
    assert RE.state == 'idle'

    def local_pause():
        RE.request_pause()

    RE.loop.call_later(1, local_pause)
    RE(checkpoint_forever())
    assert RE.state == 'paused'

    # Cue up a second pause requests in 2 seconds.
    RE.loop.call_later(2, local_pause)
    RE.resume()
    assert RE.state == 'paused'

    RE.abort()
    assert RE.state == 'idle'
Esempio n. 6
0
def test_pause_from_outside(fresh_RE):
    RE = fresh_RE
    assert RE.state == 'idle'

    def local_pause():
        RE.request_pause()

    RE.loop.call_later(1, local_pause)
    RE(checkpoint_forever())
    assert RE.state == 'paused'

    # Cue up a second pause requests in 2 seconds.
    RE.loop.call_later(2, local_pause)
    RE.resume()
    assert RE.state == 'paused'

    RE.abort()
    assert RE.state == 'idle'
Esempio n. 7
0
def test_pause_from_outside(RE):
    assert RE.state == 'idle'

    def local_pause():
        RE.request_pause()

    RE.loop.call_later(1, local_pause)
    with pytest.raises(RunEngineInterrupted):
        RE(checkpoint_forever())
    assert RE.state == 'paused'

    # Cue up a second pause requests in 2 seconds.
    RE.loop.call_later(2, local_pause)
    with pytest.raises(RunEngineInterrupted):
        RE.resume()
    assert RE.state == 'paused'

    RE.abort()
    assert RE.state == 'idle'
Esempio n. 8
0
def test_pause_from_outside(RE):
    assert RE.state == 'idle'

    def local_pause():
        RE.request_pause()

    RE.loop.call_later(1, local_pause)
    with pytest.raises(RunEngineInterrupted):
        RE(checkpoint_forever())
    assert RE.state == 'paused'

    # Cue up a second pause requests in 2 seconds.
    RE.loop.call_later(2, local_pause)
    with pytest.raises(RunEngineInterrupted):
        RE.resume()
    assert RE.state == 'paused'

    RE.abort()
    assert RE.state == 'idle'
Esempio n. 9
0
def test_pause_from_outside(RE):
    assert RE.state == 'idle'

    def local_pause(delay):
        time.sleep(delay)
        RE.request_pause()

    th = threading.Thread(target=partial(local_pause, 1))
    th.start()
    with pytest.raises(RunEngineInterrupted):
        RE(checkpoint_forever())
    assert RE.state == 'paused'

    # Cue up a second pause requests in 2 seconds.
    th = threading.Thread(target=partial(local_pause, 2))
    th.start()
    with pytest.raises(RunEngineInterrupted):
        RE.resume()
    assert RE.state == 'paused'

    RE.abort()
    assert RE.state == 'idle'