def test_create_raises_UnknownServiceError(self): _test_name = 'test_create_UnknownServiceError' _test_runtime_properties = {'resource_config': {}} _ctx = self.get_mock_ctx( _test_name, test_properties=NODE_PROPERTIES, test_runtime_properties=_test_runtime_properties, type_hierarchy=INSTANCE_READ_REPLICA_TH) current_ctx.set(_ctx) with self.assertRaises(UnknownServiceError) as error: instance_read_replica.create(ctx=_ctx, resource_config=None, iface=None) self.assertEqual( str(error.exception), "Unknown service: 'rds'. Valid service names are: ['rds']") self.fake_boto.assert_called_with('rds', **CLIENT_CONFIG)
def test_create(self): _test_name = 'test_create' _ctx = self.get_mock_ctx(_test_name, test_properties=NODE_PROPERTIES, test_runtime_properties=RUNTIME_PROPERTIES, type_hierarchy=INSTANCE_READ_REPLICA_TH) current_ctx.set(_ctx) self.fake_client.create_db_instance_read_replica = MagicMock( return_value={ 'DBInstance': { 'DBInstanceIdentifier': 'devdbinstance', 'DBInstanceArn': 'DBInstanceArn' } }) self.fake_client.describe_db_instances = MagicMock( return_value={'DBInstances': [{ 'DBInstanceStatus': 'available' }]}) instance_read_replica.create(ctx=_ctx, resource_config=None, iface=None) self.fake_boto.assert_called_with('rds', **CLIENT_CONFIG) self.fake_client.create_db_instance_read_replica.assert_called_with( AvailabilityZone='us-east-1d', DBInstanceClass='db.t2.small', DBInstanceIdentifier='devdbinstance-replica') self.fake_client.describe_db_instances.assert_called_with( DBInstanceIdentifier='devdbinstance') self.assertEqual(_ctx.instance.runtime_properties['aws_resource_id'], RUNTIME_PROPERTIES_AFTER_CREATE['aws_resource_id']) self.assertEqual(_ctx.instance.runtime_properties['aws_resource_arn'], RUNTIME_PROPERTIES_AFTER_CREATE['aws_resource_arn']) self.assertEqual(_ctx.instance.runtime_properties['resource_config'], RUNTIME_PROPERTIES_AFTER_CREATE['resource_config'])