Merge pull request #2815 from etwillbefine/set-actions-enabled
set value for actions enabled on describe-alarms
This commit is contained in:
commit
4400238c97
@ -67,6 +67,7 @@ class FakeAlarm(BaseModel):
|
||||
ok_actions,
|
||||
insufficient_data_actions,
|
||||
unit,
|
||||
actions_enabled,
|
||||
):
|
||||
self.name = name
|
||||
self.namespace = namespace
|
||||
@ -80,6 +81,7 @@ class FakeAlarm(BaseModel):
|
||||
self.dimensions = [
|
||||
Dimension(dimension["name"], dimension["value"]) for dimension in dimensions
|
||||
]
|
||||
self.actions_enabled = actions_enabled
|
||||
self.alarm_actions = alarm_actions
|
||||
self.ok_actions = ok_actions
|
||||
self.insufficient_data_actions = insufficient_data_actions
|
||||
@ -215,6 +217,7 @@ class CloudWatchBackend(BaseBackend):
|
||||
ok_actions,
|
||||
insufficient_data_actions,
|
||||
unit,
|
||||
actions_enabled,
|
||||
):
|
||||
alarm = FakeAlarm(
|
||||
name,
|
||||
@ -231,6 +234,7 @@ class CloudWatchBackend(BaseBackend):
|
||||
ok_actions,
|
||||
insufficient_data_actions,
|
||||
unit,
|
||||
actions_enabled,
|
||||
)
|
||||
self.alarms[name] = alarm
|
||||
return alarm
|
||||
|
@ -28,6 +28,7 @@ class CloudWatchResponse(BaseResponse):
|
||||
dimensions = self._get_list_prefix("Dimensions.member")
|
||||
alarm_actions = self._get_multi_param("AlarmActions.member")
|
||||
ok_actions = self._get_multi_param("OKActions.member")
|
||||
actions_enabled = self._get_param("ActionsEnabled")
|
||||
insufficient_data_actions = self._get_multi_param(
|
||||
"InsufficientDataActions.member"
|
||||
)
|
||||
@ -47,6 +48,7 @@ class CloudWatchResponse(BaseResponse):
|
||||
ok_actions,
|
||||
insufficient_data_actions,
|
||||
unit,
|
||||
actions_enabled,
|
||||
)
|
||||
template = self.response_template(PUT_METRIC_ALARM_TEMPLATE)
|
||||
return template.render(alarm=alarm)
|
||||
|
@ -102,14 +102,21 @@ def test_describe_alarms():
|
||||
conn.create_alarm(alarm_fixture(name="nbarfoo", action="abarfoo"))
|
||||
conn.create_alarm(alarm_fixture(name="nbazfoo", action="abazfoo"))
|
||||
|
||||
enabled = alarm_fixture(name="enabled1", action=["abarfoo"])
|
||||
enabled.add_alarm_action("arn:alarm")
|
||||
conn.create_alarm(enabled)
|
||||
|
||||
alarms = conn.describe_alarms()
|
||||
alarms.should.have.length_of(4)
|
||||
alarms.should.have.length_of(5)
|
||||
alarms = conn.describe_alarms(alarm_name_prefix="nfoo")
|
||||
alarms.should.have.length_of(2)
|
||||
alarms = conn.describe_alarms(alarm_names=["nfoobar", "nbarfoo", "nbazfoo"])
|
||||
alarms.should.have.length_of(3)
|
||||
alarms = conn.describe_alarms(action_prefix="afoo")
|
||||
alarms.should.have.length_of(2)
|
||||
alarms = conn.describe_alarms(alarm_name_prefix="enabled")
|
||||
alarms.should.have.length_of(1)
|
||||
alarms[0].actions_enabled.should.equal("true")
|
||||
|
||||
for alarm in conn.describe_alarms():
|
||||
alarm.delete()
|
||||
|
@ -104,6 +104,7 @@ def test_alarm_state():
|
||||
Statistic="Average",
|
||||
Threshold=2,
|
||||
ComparisonOperator="GreaterThanThreshold",
|
||||
ActionsEnabled=True,
|
||||
)
|
||||
client.put_metric_alarm(
|
||||
AlarmName="testalarm2",
|
||||
@ -128,11 +129,13 @@ def test_alarm_state():
|
||||
len(resp["MetricAlarms"]).should.equal(1)
|
||||
resp["MetricAlarms"][0]["AlarmName"].should.equal("testalarm1")
|
||||
resp["MetricAlarms"][0]["StateValue"].should.equal("ALARM")
|
||||
resp["MetricAlarms"][0]["ActionsEnabled"].should.equal(True)
|
||||
|
||||
resp = client.describe_alarms(StateValue="OK")
|
||||
len(resp["MetricAlarms"]).should.equal(1)
|
||||
resp["MetricAlarms"][0]["AlarmName"].should.equal("testalarm2")
|
||||
resp["MetricAlarms"][0]["StateValue"].should.equal("OK")
|
||||
resp["MetricAlarms"][0]["ActionsEnabled"].should.equal(False)
|
||||
|
||||
# Just for sanity
|
||||
resp = client.describe_alarms()
|
||||
|
Loading…
Reference in New Issue
Block a user