cadCAD/testing/utils.py

28 lines
904 B
Python

def gen_metric_row(row):
return ((row['run'], row['timestep'], row['substep']), {'s1': row['s1'], 'policies': row['policies']})
def gen_metric_row(row):
return {
'run': row['run'],
'timestep': row['timestep'],
'substep': row['substep'],
's1': row['s1'],
'policies': row['policies']
}
def gen_metric_dict(df):
return [gen_metric_row(row) for index, row in df.iterrows()]
def generate_assertions_df(df, expected_results, target_cols):
def df_filter(run, timestep, substep):
return df[
(df['run'] == run) & (df['timestep'] == timestep) & (df['substep'] == substep)
][target_cols].to_dict(orient='records')[0]
df['test'] = df.apply(
lambda x: \
df_filter(x['run'], x['timestep'], x['substep']) == expected_results[(x['run'], x['timestep'], x['substep'])]
, axis=1
)
return df