From b6e2c52857056b41de8391816fe373de47f32c84 Mon Sep 17 00:00:00 2001 From: nobu Date: Wed, 21 Mar 2018 16:03:59 +0000 Subject: Docs and tests on URI.hierarchical?, URI.absolute? Improve code coverage and clarify meaning of hierarchical based on RFC text. [Fix GH-1846] From: Xavier Riley git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62882 b2dd03c8-39d4-4d8f-98ff-823fe69b080e --- lib/uri/generic.rb | 24 +++++++++++++++++++++--- 1 file changed, 21 insertions(+), 3 deletions(-) (limited to 'lib/uri') diff --git a/lib/uri/generic.rb b/lib/uri/generic.rb index 140fb055de..16cc8885bb 100644 --- a/lib/uri/generic.rb +++ b/lib/uri/generic.rb @@ -946,7 +946,25 @@ module URI end # - # Checks if URI has a path + # Returns true if URI is hierarchical + # + # == Description + # + # URI has components listed in order of decreashing signficance from left to right + # see RFC3986 https://tools.ietf.org/html/rfc3986 1.2.3 + # + # == Usage + # + # require 'uri' + # + # uri = URI.parse("http://my.example.com/") + # => # + # uri.hierarchical? + # # => true + # uri = URI.parse("mailto:joe@example.com") + # => # + # uri.hierarchical? + # # => false # def hierarchical? if @path @@ -957,7 +975,7 @@ module URI end # - # Checks if URI is an absolute one + # Returns true if URI has a scheme (e.g. http:// or https://) specified # def absolute? if @scheme @@ -969,7 +987,7 @@ module URI alias absolute absolute? # - # Checks if URI is relative + # Returns true if URI does not have a scheme (e.g. http:// or https://) specified # def relative? !absolute? -- cgit v1.2.3