예제 #1
0
def test_add_vehicle_group_member(pg_conn):
    created_group_name = dql_binds.create_vehicle_group(pg_conn,
                                                        group_name='group-1')
    created_vehicle_id = dql_binds.create_vehicle(pg_conn, 'CCC1010')
    result = dql_binds.add_vehicle_group_member(pg_conn, created_group_name,
                                                created_vehicle_id)
    assert result is None
예제 #2
0
def test_remove_vehicle_from_vehicle_groups(pg_conn):
    created_group_name = dql_binds.create_vehicle_group(pg_conn,
                                                        group_name='group-1')
    created_vehicle_id = dql_binds.create_vehicle(pg_conn, 'CCC1010')
    dql_binds.add_vehicle_group_member(pg_conn, created_group_name,
                                       created_vehicle_id)
    result = dql_binds.remove_vehicle_from_vehicle_groups(
        pg_conn, created_vehicle_id, (created_group_name, ))
    assert result is None
예제 #3
0
def test_retrieve_vehicle_groups_by_vehicle_id(pg_conn):
    created_group_name = dql_binds.create_vehicle_group(pg_conn,
                                                        group_name='group-1')
    created_vehicle_id = dql_binds.create_vehicle(pg_conn, 'CCC1010')
    dql_binds.add_vehicle_group_member(pg_conn, created_group_name,
                                       created_vehicle_id)
    records = dql_binds.retrieve_vehicle_groups_by_vehicle_id(
        pg_conn, created_vehicle_id)
    assert len(records) == 1
    assert records[0]['group_name'] == 'group-1'
예제 #4
0
def test_terminate_process_no_orig(pg_conn):
    dest = create_location(pg_conn, 'Dest')
    ctc = create_contact(pg_conn, 'Subject')
    ckp = create_checkpoint(pg_conn, 'Gate 1')
    vhc = create_vehicle(pg_conn, 'UUU0000')
    pk = create_process(pg_conn)
    time.sleep(0.01)
    update_process(pg_conn, pk, ctc, None, dest, ckp, vhc)
    with pytest.raises(Exception):
        terminate_process(pg_conn, pk)
예제 #5
0
def test_terminate_process_no_ckp(pg_conn):
    orig = create_location(pg_conn, 'Origin')
    dest = create_location(pg_conn, 'Dest')
    ctc = create_contact(pg_conn, 'Subject')
    vhc = create_vehicle(pg_conn, 'UUU0000')
    pk = create_process(pg_conn)
    time.sleep(0.01)
    update_process(pg_conn, pk, ctc, orig, dest, None, vhc)
    with pytest.raises(Exception):
        terminate_process(pg_conn, pk)
예제 #6
0
def test_terminate_process_no_ctc(pg_conn):
    orig = create_location(pg_conn, 'Origin')
    dest = create_location(pg_conn, 'Dest')
    ckp = create_checkpoint(pg_conn, 'Gate 1')
    vhc = create_vehicle(pg_conn, 'UUU0000')
    pk = create_process(pg_conn)
    time.sleep(0.01)
    update_process(pg_conn, pk, None, orig, dest, ckp, vhc)
    with pytest.raises(Exception):
        terminate_process(pg_conn, pk)
def test_create_process_auth_events_on_finished_process_err(pg_conn):
    orig = create_location(pg_conn, 'Origin')
    dest = create_location(pg_conn, 'Dest')
    ctc = create_contact(pg_conn, 'Subject')
    ckp = create_checkpoint(pg_conn, 'Gate 1')
    vhc = create_vehicle(pg_conn, 'UUU0000')
    proc_id = create_process(pg_conn)
    time.sleep(0.1)
    update_process(pg_conn, proc_id, ctc, orig, dest, ckp, vhc)
    terminate_process(pg_conn, proc_id)
    with pytest.raises(Exception):
        create_process_auth_event(pg_conn, proc_id, 0, 'sys/none')
예제 #8
0
def test_update_process_finished_err(pg_conn):
    orig = create_location(pg_conn, 'Origin')
    dest = create_location(pg_conn, 'Dest')
    ctc = create_contact(pg_conn, 'Subject')
    ckp = create_checkpoint(pg_conn, 'Gate 1')
    vhc = create_vehicle(pg_conn, 'UUU0000')
    pk = create_process(pg_conn)
    time.sleep(0.01)
    update_process(pg_conn, pk, ctc, orig, dest, ckp, vhc)
    terminate_process(pg_conn, pk)
    with pytest.raises(Exception):
        update_process(pg_conn, pk, ctc, orig, dest, ckp, vhc)
예제 #9
0
def test_terminate_process(pg_conn):
    orig = create_location(pg_conn, 'Origin')
    dest = create_location(pg_conn, 'Dest')
    ctc = create_contact(pg_conn, 'Subject')
    ckp = create_checkpoint(pg_conn, 'Gate 1')
    vhc = create_vehicle(pg_conn, 'UUU0000')
    pk = create_process(pg_conn)
    time.sleep(0.01)
    update_process(pg_conn, pk, ctc, orig, dest, ckp, vhc)
    terminate_process(pg_conn, pk)
    rs = retrieve_processes_by_ids(pg_conn, (pk,))
    assert rs[0]['finished_at']
예제 #10
0
def test_process_archive_with_unresolved_terminated_process_should_archive_none(
        pg_conn):
    orig = create_location(pg_conn, 'Origin')
    dest = create_location(pg_conn, 'Dest')
    ctc = create_contact(pg_conn, 'Subject')
    ckp = create_checkpoint(pg_conn, 'Gate 1')
    vhc = create_vehicle(pg_conn, 'UUU0000')
    pk = create_process(pg_conn)
    time.sleep(0.1)
    update_process(pg_conn, pk, ctc, orig, dest, ckp, vhc)
    terminate_process(pg_conn, pk)
    results = archive_finished_processes(pg_conn)
    assert results == []
예제 #11
0
def test_process_archive_with_resolved_terminated_process_should_archive_one(
        pg_conn, basic_flow):
    orig = create_location(pg_conn, 'Origin')
    dest = create_location(pg_conn, 'Dest')
    ctc = create_contact(pg_conn, 'Subject')
    ckp = create_checkpoint(pg_conn, 'Gate 1')
    vhc = create_vehicle(pg_conn, 'UUU0000')
    pk = create_process(pg_conn)
    time.sleep(0.1)
    update_process(pg_conn, pk, ctc, orig, dest, ckp, vhc)
    create_process_auth_event(pg_conn, pk, ctc, 'sys/acc')
    terminate_process(pg_conn, pk)
    results = archive_finished_processes(pg_conn)
    assert results[0]['archived_proc_id'] == pk
예제 #12
0
def test_update_process(pg_conn):
    orig = create_location(pg_conn, 'Origin')
    dest = create_location(pg_conn, 'Dest')
    ctc = create_contact(pg_conn, 'Subject')
    ckp = create_checkpoint(pg_conn, 'Gate 1')
    vhc = create_vehicle(pg_conn, 'UUU0000')
    pk = create_process(pg_conn)
    update_process(pg_conn, pk, ctc, orig, dest, ckp, vhc)
    rs = retrieve_processes_by_ids(pg_conn, (pk,))
    assert len(rs) == 1
    assert rs[0]['proc_id'] == pk
    assert rs[0]['ctc'] == ctc
    assert rs[0]['vhc'] == vhc
    assert rs[0]['ckp'] == ckp
    assert rs[0]['loc_orig'] == orig
    assert rs[0]['loc_dest'] == dest
예제 #13
0
def vhc_b1(pg_conn, vhcgrp_b):
    vhc = create_vehicle(pg_conn, 'UUU0002')
    add_vehicle_group_member(pg_conn, 'vhcgrp_b', vhc)
    return vhc
예제 #14
0
def vhc_nogrp(pg_conn):
    return create_vehicle(pg_conn, 'UUU0003')
예제 #15
0
def test_create_vehicle(pg_conn):
    pk = create_vehicle(pg_conn, 'IUY5644')
    rs = retrieve_vehicles_by_ids(pg_conn, (pk, ))
    assert len(rs) == 1
    assert rs[0]['vehicle_id'] == pk
    assert rs[0]['plate'] == 'IUY5644'
예제 #16
0
def test_update_vehicle(pg_conn):
    created_id = dql_binds.create_vehicle(pg_conn, 'CCC1010')
    result = dql_binds.update_vehicle(pg_conn,
                                      vehicle_id=created_id,
                                      plate='CCC1020')
    assert result is None
예제 #17
0
def test_update_vehicle(pg_conn):
    pk = create_vehicle(pg_conn, 'IUY5644')
    update_vehicle(pg_conn, pk, plate='AAA0000')
    rs = retrieve_vehicles_by_ids(pg_conn, (pk, ))
    assert rs[0]['plate'] == 'AAA0000'
예제 #18
0
def vhc_a1(pg_conn, vhcgrp_a):
    vhc = create_vehicle(pg_conn, 'UUU0001')
    add_vehicle_group_member(pg_conn, 'vhcgrp_a', vhc)
    return vhc
예제 #19
0
def vhc_a1(pg_conn):
    return create_vehicle(pg_conn, 'GGG0000')
예제 #20
0
def vhc_a2(pg_conn):
    return create_vehicle(pg_conn, 'AAA9999')
예제 #21
0
def test_create_vehicle(pg_conn):
    created_id = dql_binds.create_vehicle(pg_conn, plate='CCC1010')
    assert (isinstance(created_id, int))
예제 #22
0
def test_delete_vehicles_by_ids(pg_conn):
    created_id = dql_binds.create_vehicle(pg_conn, 'CCC1010')
    result = dql_binds.delete_vehicles_by_ids(pg_conn, (created_id, ))
    assert result is None
예제 #23
0
def test_update_vehicle_pk_should_err(pg_conn):
    pk = create_vehicle(pg_conn, 'IUY5644')
    with pytest.raises(Exception):
        pg_conn.execute(
            'update ac_vehicles set vehicle_id=9090 where vehicle_id = %(pk)s',
            {'pk': pk})
예제 #24
0
def test_delete_vehicles_by_ids(pg_conn):
    pk = create_vehicle(pg_conn, 'IUY5644')
    delete_vehicles_by_ids(pg_conn, (pk, ))
    rs = retrieve_vehicles_by_ids(pg_conn, (pk, ))
    assert len(rs) == 0
예제 #25
0
def test_retrieve_vehicles_by_ids(pg_conn):
    plates = ['IUY5644', 'Place 2', 'Place 3', 'Place 4', 'Place 5']
    pks = [create_vehicle(pg_conn, plate) for plate in plates]
    rs = retrieve_vehicles_by_ids(pg_conn, tuple(pks))
    assert [r['vehicle_id'] for r in rs] == pks
    assert [r['plate'] for r in rs] == plates
예제 #26
0
def test_retrieve_vehicles_by_ids(pg_conn):
    created_id = dql_binds.create_vehicle(pg_conn, 'CCC1010')
    records = dql_binds.retrieve_vehicles_by_ids(pg_conn, (created_id, ))
    assert (len(records) == 1)
    assert (records[0]['vehicle_id'] == created_id)
    assert (records[0]['plate'] == 'CCC1010')