Sha256: 170e2fc94d6e1a4be1dd180aadba70a96fe72eef6c024629f1e513edd948ffb7

Contents?: true

Size: 1.11 KB

Versions: 12

Compression:

Stored size: 1.11 KB

Contents

# frozen_string_literal: true

module Awspec::Generator
  module Spec
    class Nlb
      include Awspec::Helper::Finder
      def generate_by_vpc_id(vpc_id)
        describes = %w[
          load_balancer_name
        ]
        vpc = find_vpc(vpc_id)
        raise 'Not Found VPC' unless vpc

        @vpc_id = vpc[:vpc_id]
        @vpc_tag_name = vpc.tag_name
        nlbs = select_nlb_by_vpc_id(@vpc_id)

        specs = nlbs.map do |nlb|
          content = ERB.new(nlb_spec_template, nil, '-').result(binding).gsub(/^\n/, '')
        end
        specs.join("\n")
      end

      def nlb_spec_template
        <<-'EOF'
describe nlb('<%= nlb.load_balancer_name %>') do
  it { should exist }
  its(:load_balancer_arn) { should eq '<%= nlb.load_balancer_arn %>' }
  its(:dns_name) { should eq '<%= nlb.dns_name %>' }
  its(:load_balancer_name) { should eq '<%= nlb.load_balancer_name %>' }
  its(:scheme) { should eq '<%= nlb.scheme %>' }
  its(:vpc_id) { should eq '<%= nlb.vpc_id %>' }
  its(:type) { should eq '<%= nlb.type %>' }
  its(:ip_address_type) { should eq '<%= nlb.ip_address_type %>' }
end
EOF
      end
    end
  end
end

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
awspec-1.30.0 lib/awspec/generator/spec/nlb.rb
awspec-1.29.3 lib/awspec/generator/spec/nlb.rb
awspec-1.29.2 lib/awspec/generator/spec/nlb.rb
awspec-1.29.1 lib/awspec/generator/spec/nlb.rb
awspec-1.29.0 lib/awspec/generator/spec/nlb.rb
awspec-1.28.2 lib/awspec/generator/spec/nlb.rb
awspec-1.28.1 lib/awspec/generator/spec/nlb.rb
awspec-1.28.0 lib/awspec/generator/spec/nlb.rb
awspec-1.27.1 lib/awspec/generator/spec/nlb.rb
awspec-1.27.0 lib/awspec/generator/spec/nlb.rb
awspec-1.26.0 lib/awspec/generator/spec/nlb.rb
awspec-1.25.2 lib/awspec/generator/spec/nlb.rb