Fixing incorrectly generated document URIs with testing

Signed-off-by: Marcos Tapajós <tapajos@gmail.com>
This commit is contained in:
Sam Lown iMac 2009-09-28 21:42:17 +02:00 committed by Marcos Tapajós
parent 118c944b85
commit 08cf9e59b6
2 changed files with 10 additions and 2 deletions

View file

@ -65,7 +65,7 @@ module CouchRest
# Returns the CouchDB uri for the document
def uri(append_rev = false)
return nil if new?
couch_uri = "http://#{database.root}/#{CGI.escape(id)}"
couch_uri = "#{database.root}/#{CGI.escape(id)}"
if append_rev == true
couch_uri << "?rev=#{rev}"
elsif append_rev.kind_of?(Integer)

View file

@ -83,6 +83,14 @@ describe CouchRest::Document do
@doc.id.should == @resp["id"]
@doc.rev.should == @resp["rev"]
end
it "should generate a correct URI" do
@doc.uri.should == "#{@db.root}/#{@doc.id}"
URI.parse(@doc.uri).to_s.should == @doc.uri
end
it "should generate a correct URI with revision" do
@doc.uri(true).should == "#{@db.root}/#{@doc.id}?rev=#{@doc.rev}"
URI.parse(@doc.uri(true)).to_s.should == @doc.uri(true)
end
end
describe "bulk saving" do
@ -264,4 +272,4 @@ describe "dealing with attachments" do
end
end
end
end