Exemplo n.º 1
0
def _read_log(fname):
    """
    Read a log file 'fname' to produce instance of Config and Records.
    """

    print(f'Reading data from: {fname}')

    cf = Config()
    rs = Records()

    with open(fname, 'r') as f:
        cf.readin(f)
        skip_lines(3, f)
        rs.runs = [int(f.readline().split()[2])]
        rs.seed = [int(f.readline().split()[2])]
        rs.lattice_dims = [int(x) for x in f.readline().split()[2:]]
        skip_lines(4, f)
        while True:
            r = Records.read(f)
            if r == '' or r[0] == '\n':
                break
            rs.add(r)

    print(f'read in: {len(rs.inds)} records')

    return cf, rs
Exemplo n.º 2
0
def test_record_life_cycle():
    id = '01234567890-c01'
    initial_record = dict(id=id, title='hello world', description='etc.')
    updated_record = dict(id=id, title='another title')

    store = Records()  # empty store
    assert store.read(id=id) is None

    assert id == store.write(**initial_record)
    record = store.read(id=id)
    for key in initial_record.keys():
        assert record[key] == initial_record[key]

    store.write(**updated_record)  # update some field
    record = store.read(id=id)
    for key in updated_record.keys():
        assert record[key] == updated_record[key]
    for key in initial_record.keys():
        assert key in record.keys()

    store.delete(id=id)  # delete the record
    assert store.read(id=id) is None