Beispiel #1
0
def test_first_subfield_default():
    """Test sub-field acessor ^* in field without subfields"""
    record = MasterRecord()
    record.update(test_data)
    first_subfield = format("v50^*", record)
    assert first_subfield == 'Incl. bibl.', 'Failed to extract first subfield'
    record.v13 = "First ^ok"
    assert format(
        "v13^*", record) == 'First ', 'Failed during first subfield extraction'
Beispiel #2
0
def test_numfunc():
    """Test Numerical functions"""
    record = MasterRecord()
    record.update(test_data)
    record.v13 = ["a 10", "b 20", "c 30"]
    expr_list = (
        ('val(26)', '26'),
        ('val(v26)', '-1965'),
        ('val(V26)', '-1965'),
        ("v26^c*1", '1965'),
        ("val('xxxx7yyyy8zzzz')", "7"),
        ("val('water')", "0"),
        ("val(10)*val(2)", "20"),
        ("val('10')*val('2')", "20"),
        ("val('dfsdf sdfsdf sdfsdfds')=0", "True"),
        ("val('dfsdf sdfsdf sdfsdfds')", "0"),
        ("val(v26)/10*-1", "196.5"),
        ("val(val(1))", "1"),
        ("val(-1)", "-1"),
        ("rsum(10,20,30)", "60"),
        ("rmax(10,20,30)", "30"),
        ("rmin(10,20,30)", "10"),
        ("ravr(10,20,30)", "20"),
        ("RSUM(10,20,30)", "60"),
        ("RMAX(10,20,30)", "30"),
        ("RMIN(10,20,30)", "10"),
        ("RAVR(10,20,30)", "20"),
        ("rsum('10')", "10"),
        ("rsum(10)", "10"),
        ("rsum('10,20,30')", "60"),
        ("rsum('a,10,b,20,c,30')", "60"),
        ("rsum(v26)", "-1965"),
        ("rsum(v26,1965)", "0"),
        ("rsum(v70)", "0"),
        ("rsum(v13)", "60"),
        ("rmax(v13)", "30"),
        ("rmin(v13)", "10"),
        ("ravr(v13)", "20"),
        ("rsum(v30)", "-13"),
    )
    run_list(expr_list, record)