diff --git a/tests/test_integration/test_data_testing.py b/tests/test_integration/test_data_testing.py index 1c8dc7b..3e8a6f3 100644 --- a/tests/test_integration/test_data_testing.py +++ b/tests/test_integration/test_data_testing.py @@ -2,7 +2,7 @@ from great_expectations.core.expectation_configuration import ExpectationConfigu from lolafect.lolaconfig import build_lolaconfig from lolafect.data_testing import run_data_test_on_mysql -from lolafect.connections import open_ssh_tunnel_with_s3_pkey +from lolafect.connections import open_ssh_tunnel_with_s3_pkey, close_ssh_tunnel # __ __ _____ _ _ _____ _ _ _____ _ # \ \ / /\ | __ \| \ | |_ _| \ | |/ ____| | @@ -33,7 +33,7 @@ def test_validation_on_mysql_succeeds(): ), ExpectationConfiguration( expectation_type="expect_column_values_to_match_like_pattern", - kwargs={"column": "a_string", "like_pattern ": "%lol%"}, + kwargs={"column": "a_string", "like_pattern": "%lol%"}, ), ExpectationConfiguration( expectation_type="expect_column_values_to_be_null", @@ -60,6 +60,8 @@ def test_validation_on_mysql_succeeds(): expectations=test_expectations ) + closed_tunnel = close_ssh_tunnel.run(ssh_tunnel) + data_test_passed = validation_result["success"] == True assert data_test_passed @@ -70,7 +72,7 @@ def test_validation_on_mysql_fails(): SELECT 1 AS a_one, "lol" AS a_string, NULL AS a_null - """ + """ test_expectations = [ ExpectationConfiguration( expectation_type="expect_column_values_to_be_between", @@ -78,7 +80,7 @@ def test_validation_on_mysql_fails(): ), ExpectationConfiguration( expectation_type="expect_column_values_to_match_like_pattern", - kwargs={"column": "a_string", "like_pattern ": "%xD%"}, + kwargs={"column": "a_string", "like_pattern": "%xD%"}, ), ExpectationConfiguration( expectation_type="expect_column_values_to_not_be_null", @@ -86,13 +88,28 @@ def test_validation_on_mysql_fails(): ), ] + ssh_tunnel = open_ssh_tunnel_with_s3_pkey.run( + s3_bucket_name=TEST_LOLACONFIG.S3_BUCKET_NAME, + ssh_tunnel_credentials=TEST_LOLACONFIG.SSH_TUNNEL_CREDENTIALS, + remote_target_host=TEST_LOLACONFIG.DW_CREDENTIALS["host"], + remote_target_port=TEST_LOLACONFIG.DW_CREDENTIALS["port"], + ) + + validation_result = run_data_test_on_mysql.run( name="lolafect-testing-test_validation_on_mysql_fails", - mysql_credentials=TEST_LOLACONFIG.DW_CREDENTIALS, + mysql_credentials={ + "host": ssh_tunnel.local_bind_address[0], + "port": ssh_tunnel.local_bind_address[1], + "user": TEST_LOLACONFIG.DW_CREDENTIALS["user"], + "password": TEST_LOLACONFIG.DW_CREDENTIALS["password"] + }, query=test_query, expectations=test_expectations ) + closed_tunnel = close_ssh_tunnel.run(ssh_tunnel) + data_test_failed = validation_result["success"] == False assert data_test_failed