diff options
Diffstat (limited to 'spec/ruby/library/uri/uri_spec.rb')
| -rw-r--r-- | spec/ruby/library/uri/uri_spec.rb | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/spec/ruby/library/uri/uri_spec.rb b/spec/ruby/library/uri/uri_spec.rb new file mode 100644 index 0000000000..eab4e7176c --- /dev/null +++ b/spec/ruby/library/uri/uri_spec.rb @@ -0,0 +1,29 @@ +require_relative '../../spec_helper' +require 'uri' + +#the testing is light here as this is an alias for URI.parse + +#we're just testing that the method ends up in the right place +describe "the URI method" do + it "parses a given URI, returning a URI object" do + result = URI.parse("http://ruby-lang.org") + URI("http://ruby-lang.org").should == result + Kernel::URI("http://ruby-lang.org").should == result + end + + it "converts its argument with to_str" do + str = mock('string-like') + str.should_receive(:to_str).and_return("http://ruby-lang.org") + URI(str).should == URI.parse("http://ruby-lang.org") + end + + it "returns the argument if it is a URI object" do + result = URI.parse("http://ruby-lang.org") + URI(result).should.equal?(result) + end + + #apparently this was a concern? imported from MRI tests + it "does not add a URI method to Object instances" do + -> {Object.new.URI("http://ruby-lang.org/")}.should.raise(NoMethodError) + end +end |
