From c7bc31ec5e3d838b3d48791ad13dd20600d7578f Mon Sep 17 00:00:00 2001 From: Ellie Date: Tue, 27 Aug 2024 14:14:43 +0100 Subject: add passing retrieve secrets tests --- tests/test_load_lambda.py | 23 ++++++++++++++++++----- 1 file changed, 18 insertions(+), 5 deletions(-) (limited to 'tests/test_load_lambda.py') diff --git a/tests/test_load_lambda.py b/tests/test_load_lambda.py index 3df94e4..9b0a271 100644 --- a/tests/test_load_lambda.py +++ b/tests/test_load_lambda.py @@ -3,6 +3,7 @@ import pyarrow.parquet as pq from io import BytesIO from moto import mock_aws import boto3 +import botocore.exceptions import os import pytest from src.load_lambda import * @@ -29,10 +30,6 @@ def mock_sm_client(aws_credentials): yield boto3.client("secretsmanager") -@pytest.fixture -def mock_parquet_file(mocker): - return mocker.patch("src.load_lambda.convert_parquet_files_to_dfs") - class TestLambdaHandler: pass @@ -58,6 +55,19 @@ class TestRetrieveSecrets: assert isinstance(result, dict) + def test_retrieve_secrets_returns_correct_keys_and_values(self, mock_sm_client): + secret_name = "test_secret" + + result = retrieve_secrets(mock_sm_client, secret_name) + + assert result["user"] == "test_user_id" + assert result["password"] == "test_password" + + def test_retrieve_secrets_returns_client_error_if_no_secret(self, mock_sm_client): + secret_name = "another_test_secret" + + with pytest.raises(botocore.exceptions.ClientError) as error: + retrieve_secrets(mock_sm_client, secret_name) class TestConnectToDBAndReturnEngine: @@ -112,4 +122,7 @@ class TestConvertParquetToDfs: def mock_connect_db(mocker): - return mocker.patch("src.load_lambda.connect_to_db_and_return_engine") \ No newline at end of file + return mocker.patch("src.load_lambda.connect_to_db_and_return_engine") + +class TestUploadDfsToDatabase: + pass \ No newline at end of file -- cgit v1.2.3