Example #1
0
def test_sys_fts_no_actions():
    """Sys FTS has no actions."""
    sys = sys_fts_2_states()
    sys.sys_actions_must = 'mutex'

    spec = synth.sys_to_spec(sys,
                             ignore_initial=False,
                             statevar='loc',
                             bool_actions=False)
    assert 'actions' not in spec.sys_vars
def test_sys_fts_no_actions():
    """Sys FTS has no actions."""
    sys = sys_fts_2_states()
    sys.sys_actions_must = 'mutex'

    spec = synth.sys_to_spec(
        sys,
        ignore_initial=False,
        statevar='loc',
        bool_actions=False)
    assert 'actions' not in spec.sys_vars
Example #3
0
def test_sys_ofts_int_actions():
    """Sys OpenFTS actions must become 1 int var in GR(1).
    """
    sys = env_ofts_int_actions()
    sys.owner = 'sys'
    sys.sys_actions_must = 'mutex'
    spec = synth.sys_to_spec(sys,
                             ignore_initial=False,
                             statevar='loc',
                             bool_actions=False)
    _check_ofts_int_actions(spec)
def test_sys_ofts_int_actions():
    """Sys OpenFTS actions must become 1 int var in GR(1).
    """
    sys = env_ofts_int_actions()
    sys.owner = 'sys'
    sys.sys_actions_must = 'mutex'
    spec = synth.sys_to_spec(
        sys,
        ignore_initial=False,
        statevar='loc',
        bool_actions=False)
    _check_ofts_int_actions(spec)
Example #5
0
def test_sys_ofts_int_actions():
    """Sys OpenFTS actions must become 1 int var in GR(1).
    """
    sys = env_ofts_int_actions()
    sys.actions_must='mutex'
    
    spec = synth.sys_to_spec(
        sys,
        ignore_initial=False,
        bool_states=False,
        action_vars=('eact', 'act'),
        bool_actions=False
    )
    
    _check_ofts_int_actions(spec)
Example #6
0
def test_sys_fts_no_actions():
    """Sys FTS has no actions.
    """
    sys = sys_fts_2_states()
    sys.actions_must='mutex'
    
    spec = synth.sys_to_spec(
        sys,
        ignore_initial=False,
        bool_states=False,
        action_vars=('eact', 'act'),
        bool_actions=False
    )
    
    assert('actions' not in spec.sys_vars)
Example #7
0
def test_sys_ofts_bool_actions():
    """Sys OpenFTS has 2 actions, bools requested.
    """
    sys = env_ofts_int_actions()
    sys.owner = 'sys'
    sys.sys_actions_must = 'mutex'
    sys.env_actions.remove('stop')
    sys.sys_actions.remove('hover')

    spec = synth.sys_to_spec(sys,
                             ignore_initial=False,
                             statevar='loc',
                             bool_actions=True)

    _check_ofts_bool_actions(spec)
Example #8
0
def test_sys_ofts_bool_actions():
    """Sys OpenFTS has 2 actions, bools requested.
    """
    sys = env_ofts_int_actions()
    sys.actions_must='mutex'
    sys.env_actions.remove('stop')
    sys.sys_actions.remove('hover')
    
    spec = synth.sys_to_spec(
        sys,
        ignore_initial=False,
        bool_states=False,
        action_vars=('eact', 'act'),
        bool_actions=True
    )
    
    _check_ofts_bool_actions(spec)
def test_sys_ofts_bool_actions():
    """Sys OpenFTS has 2 actions, bools requested.
    """
    sys = env_ofts_int_actions()
    sys.owner = 'sys'
    sys.sys_actions_must = 'mutex'
    sys.env_actions.remove('stop')
    sys.sys_actions.remove('hover')

    spec = synth.sys_to_spec(
        sys,
        ignore_initial=False,
        statevar='loc',
        bool_actions=True
    )

    _check_ofts_bool_actions(spec)
Example #10
0
def test_sys_fts_int_states():
    """Sys FTS has 3 states, must become 1 int var in GR(1).
    """
    sys = sys_fts_2_states()
    sys.sys_actions_must = 'mutex'
    sys.states.add('X2')

    spec = synth.sys_to_spec(sys,
                             ignore_initial=False,
                             statevar='loc',
                             bool_actions=False)

    assert 'X0' not in spec.sys_vars
    assert 'X1' not in spec.sys_vars
    assert 'X2' not in spec.sys_vars

    assert 'eloc' not in spec.sys_vars
    assert 'loc' in spec.sys_vars
    assert sorted(spec.sys_vars['loc']) == ['X0', 'X1', 'X2']
Example #11
0
def test_sys_fts_int_states():
    """Sys FTS has 3 states, must become 1 int var in GR(1).
    """
    sys = sys_fts_2_states()
    sys.sys_actions_must = 'mutex'
    sys.states.add('X2')

    spec = synth.sys_to_spec(
        sys,
        ignore_initial=False,
        statevar='loc',
        bool_actions=False
    )

    assert 'X0' not in spec.sys_vars
    assert 'X1' not in spec.sys_vars
    assert 'X2' not in spec.sys_vars

    assert 'eloc' not in spec.sys_vars
    assert 'loc' in spec.sys_vars
    assert sorted(spec.sys_vars['loc']) == ['X0', 'X1', 'X2']
Example #12
0
def test_sys_fts_bool_states():
    """Sys FTS has 2 states, must become 2 bool vars in GR(1)
    """
    sys = sys_fts_2_states()
    sys.actions_must = 'mutex'

    spec = synth.sys_to_spec(
        sys,
        ignore_initial=False,
        bool_states=False,
        action_vars=('eact', 'act'),
        bool_actions=False
    )
    
    assert('loc' not in spec.sys_vars)
    assert('eloc' not in spec.sys_vars)
    
    assert('X0' in spec.sys_vars)
    assert(spec.sys_vars['X0'] == 'boolean')
    
    assert('X1' in spec.sys_vars)
    assert(spec.sys_vars['X1'] == 'boolean')
Example #13
0
def test_sys_fts_int_states():
    """Sys FTS has 3 states, must become 1 int var in GR(1).
    """
    sys = sys_fts_2_states()
    sys.actions_must='mutex'
    sys.states.add('X2')
    
    spec = synth.sys_to_spec(
        sys,
        ignore_initial=False,
        bool_states=False,
        action_vars=('eact', 'act'),
        bool_actions=False
    )
    
    assert('X0' not in spec.sys_vars)
    assert('X1' not in spec.sys_vars)
    assert('X2' not in spec.sys_vars)
    
    assert('eloc' not in spec.sys_vars)
    assert('loc' in spec.sys_vars)
    assert(spec.sys_vars['loc'] == (0, 2))