diff options
Diffstat (limited to 'test/net')
-rw-r--r-- | test/net/http/test_httpresponses.rb | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/test/net/http/test_httpresponses.rb b/test/net/http/test_httpresponses.rb new file mode 100644 index 0000000000..bf7fbeef11 --- /dev/null +++ b/test/net/http/test_httpresponses.rb @@ -0,0 +1,24 @@ +require 'net/http' +require 'test/unit' + +class HTTPResponsesTest < Test::Unit::TestCase + def test_status_code_classes + Net::HTTPResponse::CODE_TO_OBJ.each_pair { |code, klass| + case code + when /\A1\d\d\z/ + group = Net::HTTPInformation + when /\A2\d\d\z/ + group = Net::HTTPSuccess + when /\A3\d\d\z/ + group = Net::HTTPRedirection + when /\A4\d\d\z/ + group = Net::HTTPClientError + when /\A5\d\d\z/ + group = Net::HTTPServerError + else + flunk "Unknown HTTP status code: #{code} => #{klass.name}" + end + assert(klass < group, "#{klass.name} (#{code}) must inherit from #{group.name}") + } + end +end |