def test_google_download_state(self, mocker: MockFixture) -> None: layer = mocker.Mock(spec=Layer) layer.gen_providers.return_value = { "terraform": { "backend": { "gcs": { "bucket": "opta-tf-state-test-dev1", "prefix": "dev1" } } }, "provider": { "google": { "region": "us-central1", "project": "dummy-project" } }, } layer.name = "blah" layer.cloud = "google" mocker.patch("opta.core.terraform.Terraform._gcp_verify_storage", return_value=True) patched_init = mocker.patch("opta.core.terraform.Terraform.init", return_value=True) mocked_credentials = mocker.Mock() mocked_gcp_credentials = mocker.patch( "opta.core.terraform.GCP.get_credentials", return_value=[mocked_credentials, "dummy-project"], ) mocked_storage_client = mocker.Mock() mocked_client_constructor = mocker.patch( "opta.core.terraform.storage.Client", return_value=mocked_storage_client) mocked_bucket_object = mocker.Mock() mocked_storage_client.get_bucket.return_value = mocked_bucket_object read_data = '{"a": 1}' mocked_file = mocker.mock_open(read_data=read_data) mocker.patch("opta.core.terraform.os.remove") mocked_open = mocker.patch("opta.core.terraform.open", mocked_file) assert Terraform.download_state(layer) patched_init.assert_not_called() mocked_gcp_credentials.assert_called_once_with() mocked_client_constructor.assert_called_once_with( project="dummy-project", credentials=mocked_credentials) mocked_storage_client.get_bucket.assert_called_once_with( "opta-tf-state-test-dev1") mocked_open.assert_has_calls( [ mocker.call("./tmp.tfstate", "wb"), mocker.call("./tmp.tfstate", "r") ], any_order=True, ) mocked_storage_client.download_blob_to_file.assert_called_once_with( mocker.ANY, mocker.ANY)
def test_password(mocker: MockFixture) -> None: """Runs the start cipher method with different passwords args: mocker: Wrapper for pytest of the mock package """ # No password mocker.patch("tests.main_gui_test.WINDOW.password_entry.get", return_value=0) WINDOW.start_cipher() # Sets password mocker.patch("tests.main_gui_test.WINDOW.password_entry.get", return_value='example_password') # Contents of file mocker.patch('builtins.open', mocker.mock_open(read_data='example content')) WINDOW.start_cipher()
def test_aws_download_state(self, mocker: MockFixture) -> None: layer = mocker.Mock(spec=Layer) layer.gen_providers.return_value = { "terraform": { "backend": { "s3": { "bucket": "opta-tf-state-test-dev1", "key": "dev1", "dynamodb_table": "opta-tf-state-test-dev1", "region": "us-east-1", } } } } layer.name = "blah" layer.cloud = "aws" mocker.patch("opta.core.terraform.Terraform._aws_verify_storage", return_value=True) patched_init = mocker.patch("opta.core.terraform.Terraform.init", return_value=True) mocked_s3_client = mocker.Mock() mocked_boto_client = mocker.patch("opta.core.terraform.boto3.client", return_value=mocked_s3_client) read_data = '{"a": 1}' mocked_file = mocker.mock_open(read_data=read_data) mocker.patch("opta.core.terraform.os.remove") mocked_open = mocker.patch("opta.core.terraform.open", mocked_file) assert Terraform.download_state(layer) layer.gen_providers.assert_called_once_with(0) mocked_s3_client.download_file.assert_called_once_with( Bucket="opta-tf-state-test-dev1", Key="dev1", Filename="./tmp.tfstate") mocked_open.assert_called_once_with("./tmp.tfstate", "r") patched_init.assert_not_called() mocked_boto_client.assert_called_once_with("s3", config=mocker.ANY)
def test_azure_download_state(self, mocker: MockFixture) -> None: layer = mocker.Mock(spec=Layer) layer.parent = None layer.cloud = "azurerm" layer.name = "blah" layer.providers = { "azurerm": { "location": "centralus", "tenant_id": "blahbc17-blah-blah-blah-blah291d395b", "subscription_id": "blah99ae-blah-blah-blah-blahd2a04788", } } layer.root.return_value = layer layer.gen_providers.return_value = { "terraform": { "backend": { "azurerm": { "resource_group_name": "dummy_resource_group", "storage_account_name": "dummy_storage_account", "container_name": "dummy_container_name", "key": "dummy_key", } } }, "provider": { "azurerm": { "location": "centralus", "tenant_id": "blahbc17-blah-blah-blah-blah291d395b", "subscription_id": "blah99ae-blah-blah-blah-blahd2a04788", } }, } mocked_azure = mocker.patch("opta.core.terraform.Azure") mocked_credentials = mocker.Mock() mocked_azure.get_credentials.return_value = mocked_credentials mocker.patch("opta.core.terraform.Terraform._azure_verify_storage", return_value=True) mocked_blob_service_client_instance = mocker.Mock() mocked_blob_service_client = mocker.patch( "opta.core.terraform.BlobServiceClient", return_value=mocked_blob_service_client_instance, ) mocked_container_client = mocker.Mock() mocked_blob_service_client_instance.get_container_client.return_value = ( mocked_container_client) mocked_blob_client = mocker.Mock() mocked_container_client.get_blob_client.return_value = mocked_blob_client read_data = '{"a": 1}' mocked_file = mocker.mock_open(read_data=read_data) mocker.patch("opta.core.terraform.os.remove") mocked_open = mocker.patch("opta.core.terraform.open", mocked_file) assert Terraform.download_state(layer) mocked_blob_service_client.assert_called_once_with( "https://dummy_storage_account.blob.core.windows.net/", credential=mocked_credentials, ) mocked_blob_service_client_instance.get_container_client.assert_called_once_with( "dummy_container_name") mocked_container_client.get_blob_client.assert_called_once_with( "dummy_key") mocked_open.assert_has_calls( [ mocker.call("./tmp.tfstate", "wb"), mocker.call("./tmp.tfstate", "r") ], any_order=True, )