1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00
ruby--ruby/spec/ruby/library/uri/uri_spec.rb
eregon 1d15d5f080 Move spec/rubyspec to spec/ruby for consistency
* Other ruby implementations use the spec/ruby directory.
  [Misc #13792] [ruby-core:82287]

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59979 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-09-20 20:18:52 +00:00

29 lines
1,002 B
Ruby

require File.expand_path('../../../spec_helper', __FILE__)
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
lambda {Object.new.URI("http://ruby-lang.org/")}.should raise_error(NoMethodError)
end
end