diff options
author | root <root@yawns.default.skx.uk0.bigv.io> | 2016-02-10 12:07:42 +0000 |
---|---|---|
committer | root <root@yawns.default.skx.uk0.bigv.io> | 2016-02-10 12:07:42 +0000 |
commit | 1bda31480aa43534313e0557c0d484caaceb4a08 (patch) | |
tree | 88b15999ef2cfef95ca456ad7e28a37151f06699 | |
parent | 4dd406dd29b166d98485a09ef25ec52867bd5530 (diff) |
Don't allow limiting protocl on HTTP/HTTPS tests.
We cannot allow HTTP/HTTPS to be limited by protocol,
such as IPv4-only or IPv6-only. Raise an error in the
parser if this is attempted.
Added test-case to confirm, and this closes #12488.
-rw-r--r-- | lib/custodian/protocoltest/http.rb | 6 | ||||
-rwxr-xr-x | t/test-custodian-parser.rb | 27 |
2 files changed, 33 insertions, 0 deletions
diff --git a/lib/custodian/protocoltest/http.rb b/lib/custodian/protocoltest/http.rb index 05e71ae..4632630 100644 --- a/lib/custodian/protocoltest/http.rb +++ b/lib/custodian/protocoltest/http.rb @@ -143,6 +143,12 @@ module Custodian if line =~ /with host header '([^']+)'/ @host_override = $1.dup end + + # We can't test on IPv4-only or IPv6-only basis + if line =~ /ipv[46]_only/i + raise ArgumentError, "We cannot limit HTTP/HTTPS tests to IPv4/IPv6-only" + end + end diff --git a/t/test-custodian-parser.rb b/t/test-custodian-parser.rb index d3c3842..bc2bc2b 100755 --- a/t/test-custodian-parser.rb +++ b/t/test-custodian-parser.rb @@ -434,6 +434,33 @@ EOF # + # HTTP/HTTPS tests don't like IPv4/IPv6-limits + # + def test_http_protocols + + parser = Custodian::Parser.new + + # + # A series of tests to parse + # + text = [] + text.push('https://example.com/ must run https ipv4_only') + text.push('https://example.com/ must run https ipv6_only') + text.push('http://example.com/ must run http ipv4_only') + text.push('http://example.com/ must run http ipv6_only') + + # + # Test the parser with this text + # + text.each do |txt| + assert_raise ArgumentError do + parser.parse_lines(txt) + end + end + end + + + # # Test that the text we're going to use in alerters is present. # def test_alert_text |