from util import BaseCheckList, annotate_all
import numpy as np
import pandas as pd

global_checks = BaseCheckList()

@global_checks.check(depends=['missingDataFlag'])
def missing_data_flag_check(frame, parameters):
    missing_records = set(np.arange(frame.sum_index.max())).difference(frame.sum_index)
    
    frame = pd.concat([frame,
        pd.DataFrame({'sum_index':list(missing_records), 'datetime':pd.NaT, 'missing_data_flag_check':1.0, 'qc_notes':'missing data'}).set_index('datetime')])
    return frame