From 94ad5b28e56ca873394b068870045008e550d619 Mon Sep 17 00:00:00 2001 From: Colin Goutte Date: Sun, 27 Aug 2023 16:16:36 +0200 Subject: [PATCH] Sample input for the whole test --- database.py | 17 ++++++++++++++--- utests/test_sql_database.py | 2 +- 2 files changed, 15 insertions(+), 4 deletions(-) diff --git a/database.py b/database.py index a1fc403..787721e 100644 --- a/database.py +++ b/database.py @@ -38,14 +38,25 @@ def adapt_movie_data(data_in: dict): def fill_db( - db=SessionLocal(), movie_input_file: str = "input_data/movies_metadata.csv" + db=SessionLocal(), + movie_input_file: str = "input_data/movies_metadata.csv", + sample_rate=100, ): import crud import csv + import random page_size = 1_00 + + def compute_rate(*dummy): + if 0 < sample_rate < 100: + return random.random() < (sample_rate / 100) + return True + with open(movie_input_file) as csvfile: - for count, movie_data in enumerate(csv.DictReader(csvfile), start=1): + for count, movie_data in enumerate( + filter(compute_rate, csv.DictReader(csvfile)), start=1 + ): if count % page_size == 0: db.commit() @@ -62,4 +73,4 @@ def fill_db( if __name__ == "__main__": create_db() - fill_db() + fill_db(sample_rate=1) diff --git a/utests/test_sql_database.py b/utests/test_sql_database.py index 46c5c42..2fde7e7 100644 --- a/utests/test_sql_database.py +++ b/utests/test_sql_database.py @@ -161,7 +161,7 @@ def test_title_is_taken_form_original_title_is_missing(): assert movie_title not in movies_by_title, "The movie should not be pre existing" with db_context() as db: - fill_db(db, file_path) + fill_db(db, file_path, sample_rate=1) movies = client.get("movies") movies_by_title = {m["title"]: m for m in movies.json()}