diff --git a/lib/resources/aws/aws_route_table.rb b/lib/resources/aws/aws_route_table.rb index 18bd5dfc9..f4f1ecc96 100644 --- a/lib/resources/aws/aws_route_table.rb +++ b/lib/resources/aws/aws_route_table.rb @@ -26,9 +26,11 @@ class AwsRouteTable < Inspec.resource(1) allowed_scalar_type: String, ) - if validated_params.key?(:route_table_id) && validated_params[:route_table_id] !~ /^rtb\-[0-9a-f]{8}/ - raise ArgumentError, 'aws_route_table Route Table ID must be in the' \ - ' format "rtb-" followed by 8 hexadecimal characters.' + if validated_params.key?(:route_table_id) && + validated_params[:route_table_id] !~ /^rtb\-[0-9a-f]{8}$/ + raise ArgumentError, + 'aws_route_table Route Table ID must be in the' \ + ' format "rtb-" followed by 8 hexadecimal characters.' end validated_params diff --git a/test/unit/resources/aws_route_table_test.rb b/test/unit/resources/aws_route_table_test.rb index 8d5a0f7f3..f08b2f212 100644 --- a/test/unit/resources/aws_route_table_test.rb +++ b/test/unit/resources/aws_route_table_test.rb @@ -22,6 +22,16 @@ class BasicAwsRouteTableTest2 < Minitest::Test def test_search_hit assert AwsRouteTable.new('rtb-2c60ec44').exists? assert AwsRouteTable.new('rtb-58508630').exists? + + # not hexadecimal + assert_raises(ArgumentError) do + AwsRouteTable.new('rtb-xyzxyzxy') + end + + # not within length constraint + assert_raises(ArgumentError) do + AwsRouteTable.new('rtb-abcdef012') + end end end