Example #1
0
def test_complex():
    fsm = create_fsm("[{%hid-|}%hq/{%hempty|%hid|nop}] RO")

    result = fsm(None)
    assert result == '["None"/nop] RO'

    result = fsm('aaa')
    assert result == '[aaa-"aaa"/aaa] RO'
Example #2
0
def test_alt_handler_with_additional_symbols():
    fsm = create_fsm("{%hid:|sss}")

    result = fsm(None)
    assert result == 'sss'

    result = fsm('aaa')
    assert result == 'aaa:'
Example #3
0
def test_alt_handler():
    fsm = create_fsm("{%hid|sss}")

    result = fsm(None)
    assert result == 'sss'

    result = fsm('aaa')
    assert result == 'aaa'
Example #4
0
def test_alt_handler_with_empty_section():
    fsm = create_fsm("{%hid|}")

    result = fsm(None)
    assert result == ''
Example #5
0
def test_no_handler():
    fsm = create_fsm("str")
    result = fsm('aaa')
    assert result == 'str'
Example #6
0
def test_simple_handler():
    fsm = create_fsm("%hq")
    result = fsm('aaa')
    assert result == '"aaa"'