spec/riak/link_spec.rb in ripple-0.5.0 vs spec/riak/link_spec.rb in ripple-0.5.1

- old
+ new

@@ -19,15 +19,33 @@ result = Riak::Link.parse('</raw/foo/bar>; rel="tag", </raw/foo>; rel="up"') result.should be_kind_of(Array) result.should be_all {|i| Riak::Link === i } end - it "should set the url and rel parameters properly" do + it "should set the bucket, key, url and rel parameters properly" do result = Riak::Link.parse('</raw/foo/bar>; riaktag="tag", </raw/foo>; rel="up"') result[0].url.should == "/raw/foo/bar" + result[0].bucket.should == "foo" + result[0].key.should == "bar" result[0].rel.should == "tag" result[1].url.should == "/raw/foo" + result[1].bucket.should == "foo" + result[1].key.should == nil result[1].rel.should == "up" + end + + it "should set url properly, and set bucket and key to nil for non-Riak links" do + result = Riak::Link.parse('<http://www.example.com/123.html>; riaktag="tag", </raw/foo>; rel="up"') + result[0].url.should == "http://www.example.com/123.html" + result[0].bucket.should == nil + result[0].key.should == nil + result[0].rel.should == "tag" + + result = Riak::Link.parse('<http://www.example.com/>; riaktag="tag", </raw/foo>; rel="up"') + result[0].url.should == "http://www.example.com/" + result[0].bucket.should == nil + result[0].key.should == nil + result[0].rel.should == "tag" end end it "should convert to a string appropriate for use in the Link header" do Riak::Link.new("/raw/foo", "up").to_s.should == '</raw/foo>; riaktag="up"'