def test_similar_runs(root, rows_csv, **unused): rows = load_rows_csv(rows_csv) header = rows.pop(0) try: id_pos = header.index('_id') except ValueError: id_pos = None rows = rows[0:10] for row in rows: row.pop(id_pos) with tempdir(cleanup_on_error=CLEANUP_ON_ERROR): with loom.preql.get_server(root, debug=True) as preql: search_csv = 'search.csv' preql.similar(rows, result_out=search_csv)
def test_search_runs(root, rows_csv, **unused): rows = load_rows_csv(rows_csv) header = rows.pop(0) try: id_pos = header.index('_id') except ValueError: id_pos = None rows = rows[0:10] with tempdir(cleanup_on_error=CLEANUP_ON_ERROR): with loom.preql.get_server(root, debug=True) as preql: for i, row in enumerate(rows): row.pop(id_pos) search_csv = 'search.{}.csv'.format(i) preql.search(row, result_out=search_csv) open(search_csv).read()
def make_fully_observed_row(rows_csv): rows = iter(load_rows_csv(rows_csv)) header = rows.next() try: id_pos = header.index('_id') except ValueError: id_pos = None dense_row = ['' for _ in header] for row in rows: if not any(condition == '' for condition in dense_row): if id_pos is not None: dense_row.pop(id_pos) return dense_row for i, (condition, x) in enumerate(izip(dense_row, row)): if condition == '': dense_row[i] = x raise SkipTest('no dense row could be constructed')