Sha256: 3f3f11969eefdf944c997e4d139c48d9ece0a1680847894fdcfc294f9f55e863
Contents?: true
Size: 1.36 KB
Versions: 33
Compression:
Stored size: 1.36 KB
Contents
module Awspec::Generator module Spec class CloudwatchAlarm include Awspec::Helper::Finder def generate_all alarms = select_all_cloudwatch_alarms alarms.empty? && fail('Not Found alarm') ERB.new(alarm_spec_template, nil, '-').result(binding).chomp end def alarm_spec_template template = <<-'EOF' <% alarms.each do |alarm| %> describe cloudwatch_alarm('<%= alarm.alarm_name %>') do it { should exist } <%- alarm.ok_actions.each do |action| -%> it { should have_ok_action('<%= action %>') } <%- end -%> <%- alarm.alarm_actions.each do |action| -%> it { should have_alarm_action('<%= action %>') } <%- end -%> <%- alarm.insufficient_data_actions.each do |action| -%> it { should have_insufficient_data_action('<%= action %>') } <%- end -%> it { should belong_to_metric('<%= alarm.metric_name %>').namespace('<%= alarm.namespace %>') } its(:state_value) { should eq '<%= alarm.state_value %>' } its(:statistic) { should eq '<%= alarm.statistic %>' } its(:period) { should eq <%= alarm.period %> } its(:unit) { should eq '<%= alarm.unit %>' } its(:evaluation_periods) { should eq <%= alarm.evaluation_periods %> } its(:threshold) { should eq <%= alarm.threshold %> } its(:comparison_operator) { should eq '<%= alarm.comparison_operator %>' } end <% end %> EOF template end end end end
Version data entries
33 entries across 33 versions & 1 rubygems