mirror of
https://github.com/inspec/inspec
synced 2024-11-30 16:39:20 +00:00
a5309ea392
Signed-off-by: Ryan Davis <zenspider@chef.io>
75 lines
1.9 KiB
Ruby
75 lines
1.9 KiB
Ruby
require "helper"
|
|
require "inspec/resource"
|
|
require "resources/aws/aws_route_tables"
|
|
|
|
require "resource_support/aws"
|
|
require "resources/aws/aws_route_tables"
|
|
|
|
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
|