require "helper" require "inspec/resource" require "resources/aws/aws_route_tables" require "resource_support/aws" class EmptyAwsRouteTablesTest < Minitest::Test def setup AwsRouteTables::BackendFactory.select(AwsMRtbsB::Empty) end def test_constructor_no_args_ok AwsRouteTables.new end def test_search_miss refute AwsRouteTables.new.exists? end def test_constructor_reject_unknown_resource_params assert_raises(ArgumentError) { AwsRouteTables.new(bla: "blabla") } end end class BasicAwsRouteTablesTest2 < Minitest::Test def setup AwsRouteTables::BackendFactory.select(AwsMRtbsB::Basic) end def test_search_hit assert AwsRouteTables.new.exists? end def test_property_vpc_ids basic = AwsRouteTables.new assert_kind_of(Array, basic.vpc_ids) assert(basic.vpc_ids.include?("vpc-169f777e")) assert(basic.vpc_ids.include?("vpc-169f777d")) refute(basic.vpc_ids.include?(nil)) end def test_property_route_table_ids basic = AwsRouteTables.new assert_kind_of(Array, basic.route_table_ids) assert(basic.route_table_ids.include?("rtb-05462d2278326a79c")) assert(basic.route_table_ids.include?("rtb-58508630")) refute(basic.route_table_ids.include?(nil)) end end # MRtbB = Mock Routetable Backend module AwsMRtbsB class Empty < AwsBackendBase def describe_route_tables(query) OpenStruct.new(route_tables: []) end end class Basic < AwsBackendBase def describe_route_tables(query) fixtures = [ OpenStruct.new({ route_table_id: "rtb-05462d2278326a79c", vpc_id: "vpc-169f777e", }), OpenStruct.new({ route_table_id: "rtb-58508630", vpc_id: "vpc-169f777d", }), ] OpenStruct.new({ route_tables: fixtures }) end end end