require 'yaml'
describe 'compiled component <%= @component_name %>' do
context 'cftest' do it 'compiles test' do expect(system("cfhighlander cftest #{@validate} --tests tests/<%= @test_name %>.test.yaml")).to be_truthy end end let(:template) { YAML.load_file("#{File.dirname(__FILE__)}/../out/tests/<%= @test_name %>/<%= @component_name %>.compiled.yaml") } context "Resource" do <% config['Resources'].each do |resource, details| %> context "<%= resource %>" do let(:resource) { template["Resources"]["<%= resource %>"] } it "is of type <%= details['Type'] %>" do expect(resource["Type"]).to eq("<%= details['Type'] %>") end <% if details.has_key?('Properties')%><% details['Properties'].each do |property, value| %> it "to have property <%= property %>" do expect(resource["Properties"]["<%= property %>"]).to eq(<%= value.is_a?(String) ? "\"#{value}\"" : value %>) end <% end %><% end %> end <% end %> end
end