mock_provider "aws" { mock_data "aws_ec2_instance_type_offerings" { defaults = { locations = ["eu-west-1a", "eu-west-1b"] } } mock_data "aws_region" { defaults = { region = "eu-west-1" } } mock_data "aws_availability_zones" { defaults = { names = ["eu-west-1a", "eu-west-1b"] } } mock_data "aws_ami" { defaults = { id = "ami-0123456789abcdef0" } } mock_resource "aws_s3_bucket" { defaults = { arn = "arn:aws:s3:::mock-test-bucket", id = "mock-test-bucket" } } mock_resource "aws_iam_role" { defaults = { arn = "arn:aws:iam::123456789012:role/test" } } } variables { aws_account_id = "123456789012" name = "test-carlos" apps_domain = "apps.example.com" release_public_key = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA=" } run "topology" { command = plan assert { condition = module.region.host_count == 1 error_message = "Unexpected host count." } } run "reject_invalid_public_key" { command = plan variables { release_public_key = "not-a-public-key" } expect_failures = [var.release_public_key] } run "reject_shell_in_domain" { command = plan variables { apps_domain = "apps.example.com\nENVEOF\necho bad" } expect_failures = [var.apps_domain] }