def test_provision_db_instance(): client = RDSClient() db_instance = RDSDBInstance({}) db_instance.region = AWSAccount.get_aws_region() db_instance.id = "instance-db-test-1" db_instance.db_instance_class = "db.t3.medium" db_instance.db_cluster_identifier = "cluster-db-test" db_instance.db_subnet_group_name = "db_subnet-test" db_instance.db_parameter_group_name = "param-group-test" db_instance.engine = "aurora-mysql" db_instance.engine_version = "5.7.mysql_aurora.2.09.2" db_instance.preferred_maintenance_window = "sun:03:30-sun:04:00" db_instance.storage_encrypted = True db_instance.copy_tags_to_snapshot = True db_instance.tags = [{ 'Key': 'lvl', 'Value': "tst" }, { 'Key': 'name', 'Value': db_instance.id }] client.provision_db_instance(db_instance) assert db_instance.arn is not None
def test_dispose_db_cluster(): client = RDSClient() cluster = RDSDBCluster({}) cluster.region = AWSAccount.get_aws_region() cluster.skip_final_snapshot = True cluster.id = "cluster-db-test" client.dispose_db_cluster(cluster)
def test_provision_db_cluster_parameter_group(): client = RDSClient() db_cluster_parameter_group = RDSDBClusterParameterGroup({}) db_cluster_parameter_group.region = AWSAccount.get_aws_region() db_cluster_parameter_group.name = "cluster-param-group-test" db_cluster_parameter_group.db_parameter_group_family = "aurora-mysql5.7" db_cluster_parameter_group.description = "test" db_cluster_parameter_group.tags = [{ 'Key': 'lvl', 'Value': "tst" }, { 'Key': 'name', 'Value': db_cluster_parameter_group.name }] client.provision_db_cluster_parameter_group(db_cluster_parameter_group) assert db_cluster_parameter_group.arn is not None
def test_provision_subnet_group(): client = RDSClient() subnet_group = RDSDBSubnetGroup({}) subnet_group.region = AWSAccount.get_aws_region() subnet_group.name = "db_subnet-test" subnet_group.db_subnet_group_description = "db subnet test" subnet_group.subnet_ids = ["subnet-yy", "subnet-xx"] subnet_group.tags = [{ 'Key': 'lvl', 'Value': "tst" }, { 'Key': 'name', 'Value': subnet_group.name }] client.provision_db_subnet_group(subnet_group) assert subnet_group.arn is not None
def test_copy_db_cluster_snapshot(): client = RDSClient() snapshot_src = RDSDBClusterSnapshot({}) snapshot_src.region = Region.get_region("us-east-1") snapshot_src.db_cluster_identifier = mock_values[ "snapshot_src.db_cluster_identifier"] snapshot_dst = RDSDBClusterSnapshot({}) snapshot_dst.region = Region.get_region("us-west-2") snapshot_dst.id = "horey-test-snapshot-id" snapshot_dst.tags = [{ 'Key': 'lvl', 'Value': "tst" }, { 'Key': 'name', 'Value': snapshot_dst.id }] client.copy_db_cluster_snapshot(snapshot_src, snapshot_dst)
def test_provision_cluster_from_snapshot(): client = RDSClient() cluster = RDSDBCluster({}) cluster.region = AWSAccount.get_aws_region() cluster.db_subnet_group_name = "db_subnet-test" cluster.db_cluster_parameter_group_name = "cluster-param-group-test" cluster.backup_retention_period = 35 cluster.database_name = "db_test" cluster.id = "cluster-db-test" cluster.vpc_security_group_ids = [ mock_values["cluster.vpc_security_group_ids"] ] cluster.engine = "aurora-mysql" cluster.engine_version = "5.7.mysql_aurora.2.09.2" cluster.port = 3306 cluster.master_username = "******" cluster.master_user_password = "******" cluster.preferred_backup_window = "09:23-09:53" cluster.preferred_maintenance_window = "sun:03:30-sun:04:00" cluster.storage_encrypted = True #cluster.kms_key_id = True cluster.engine_mode = "provisioned" cluster.deletion_protection = False cluster.copy_tags_to_snapshot = True cluster.enable_cloudwatch_logs_exports = [ "audit", "error", "general", "slowquery" ] cluster.tags = [{ 'Key': 'lvl', 'Value': "tst" }, { 'Key': 'name', 'Value': cluster.id }] client.provision_db_cluster(cluster, snapshot_id="horey-test-snapshot-id") assert cluster.arn is not None
def test_init_rds_client(): assert isinstance(RDSClient(), RDSClient)