diff --git a/packages/@aws-cdk/aws-events/lib/rule.ts b/packages/@aws-cdk/aws-events/lib/rule.ts index 14e1fa20f241a..fd71ec2473987 100644 --- a/packages/@aws-cdk/aws-events/lib/rule.ts +++ b/packages/@aws-cdk/aws-events/lib/rule.ts @@ -74,6 +74,7 @@ export class EventRule extends EventRuleRef { super(parent, name); const resource = new cloudformation.RuleResource(this, 'Resource', { + ruleName: props.ruleName, description: props.description, state: props.enabled == null ? 'ENABLED' : (props.enabled ? 'ENABLED' : 'DISABLED'), scheduleExpression: new Token(() => this.scheduleExpression), diff --git a/packages/@aws-cdk/aws-events/test/test.rule.ts b/packages/@aws-cdk/aws-events/test/test.rule.ts index 7ef0d9a0fd19d..d21ce1552b6a6 100644 --- a/packages/@aws-cdk/aws-events/test/test.rule.ts +++ b/packages/@aws-cdk/aws-events/test/test.rule.ts @@ -1,4 +1,4 @@ -import { expect } from '@aws-cdk/assert'; +import { expect, haveResource } from '@aws-cdk/assert'; import iam = require('@aws-cdk/aws-iam'); import cdk = require('@aws-cdk/cdk'); import { resolve } from '@aws-cdk/cdk'; @@ -30,6 +30,24 @@ export = { test.done(); }, + 'rule with physical name'(test: Test) { + // GIVEN + const stack = new cdk.Stack(); + + // WHEN + new EventRule(stack, 'MyRule', { + ruleName: 'PhysicalName', + scheduleExpression: 'rate(10 minutes)' + }); + + // THEN + expect(stack).to(haveResource('AWS::Events::Rule', { + Name: 'PhysicalName' + })); + + test.done(); + }, + 'eventPattern is rendered properly'(test: Test) { const stack = new cdk.Stack();