Newer
Older
from util import invalidate_record, invalidate_records
import pandas as pd
random_dataframe = pd.DataFrame(pd.np.random.randn(10,10), columns=list('abcdefghij'))
def test_it_works():
qc_frame = check_frame(random_dataframe, {})
assert 'qc_percent' in qc_frame.columns
print(qc_frame)
def test_invalidate_record():
invalidated = invalidate_record(three_scenes.copy(), 2, 'test', .5)
assert invalidated.loc[2].test == .5
assert pd.np.isnan(invalidated.loc[3].test)
assert pd.np.isnan(invalidated.loc[1].test)
tricky_index = three_scenes.copy()
tricky_index.index = tricky_index.index - 1
invalidated = invalidate_record(tricky_index, 1, 'test', .5)
assert invalidated.loc[1].test == .5, invalidated.test
assert pd.np.isnan(invalidated.loc[2].test), invalidated
assert pd.np.isnan(invalidated.loc[0].test), invalidated
corrupt_cal = three_scenes.copy()
invalidated = invalidate_record(corrupt_cal, 3, 'test', .5)
assert invalidated.loc[2].test == .5, invalidated.test
assert invalidated.loc[4].test != .5, invalidated.test
assert invalidated.loc[5].test == .5, invalidated.test
def test_invalidate_records():
corrupt_cal = three_scenes.copy()
corrupt_cal['test'] = 0
corrupt_cal['test'][3] = 1
invalidated = invalidate_records(corrupt_cal, 'test')
assert invalidated.loc[2].test == 1, invalidated.test
assert invalidated.loc[4].test == 0, invalidated.test
assert invalidated.loc[5].test == 1, invalidated.test
def test_invalidate_record_and_annotate():
invalidated = invalidate_record(three_scenes.copy(), 2, 'test', .5, 'test annotation')
assert invalidated.loc[2].test == .5
assert pd.np.isnan(invalidated.loc[3].test)
assert pd.np.isnan(invalidated.loc[1].test)
assert invalidated.loc[2].qc_notes == 'test annotation'
tricky_index = three_scenes.copy()
tricky_index.index = tricky_index.index - 1
invalidated = invalidate_record(tricky_index, 1, 'test', .5, 'test annotation')
assert invalidated.loc[1].test == .5, invalidated.test
assert pd.np.isnan(invalidated.loc[2].test)
assert pd.np.isnan(invalidated.loc[0].test)
assert invalidated.loc[1].qc_notes == 'test annotation'
corrupt_cal = three_scenes.copy()
invalidated = invalidate_record(corrupt_cal, 3, 'test', .5)
assert invalidated.loc[2].test == .5, invalidated.test
assert invalidated.loc[2].qc_notes == 'invalid calibration:3'
assert invalidated.loc[5].test == .5, invalidated.test
assert invalidated.loc[5].qc_notes == 'invalid calibration:3'
three_scenes = pd.DataFrame({'sceneMirrorPosition': list(map(ord, 'HASAHSAHSAH')), 'qc_notes':''})