From 79bea382fd2c0753ca9ace79a11bb74c9a1d722b Mon Sep 17 00:00:00 2001 From: Robin Edwards Date: Wed, 20 Apr 2011 14:38:43 +0100 Subject: merged pbc branch to master --- t/06_links.t | 40 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 40 insertions(+) create mode 100644 t/06_links.t (limited to 't/06_links.t') diff --git a/t/06_links.t b/t/06_links.t new file mode 100644 index 0000000..d5effb0 --- /dev/null +++ b/t/06_links.t @@ -0,0 +1,40 @@ +use lib 't/lib'; +use Test::More; +use Test::Riak; + +# store and get links +test_riak { + my ($client, $bucket_name) = @_; + + my $bucket = $client->bucket($bucket_name); + my $obj = $bucket->new_object("foo", [2]); + my $obj1 = $bucket->new_object("foo1", {test => 1})->store; + my $obj2 = $bucket->new_object("foo2", {test => 2})->store; + my $obj3 = $bucket->new_object("foo3", {test => 3})->store; + $obj->add_link($obj1); + $obj->add_link($obj2, "tag"); + $obj->add_link($obj3, "tag2!@&"); + $obj->store; + $obj = $bucket->get("foo"); + is $obj->has_links, 3, 'got 3 links'; +}; + +# link walking +test_riak { + my ($client, $bucket_name) = @_; + + my $bucket = $client->bucket($bucket_name); + my $obj = $bucket->new_object("foo", [2]); + my $obj1 = $bucket->new_object("foo1", {test => 1})->store; + my $obj2 = $bucket->new_object("foo2", {test => 2})->store; + my $obj3 = $bucket->new_object("foo3", {test => 3})->store; + $obj->add_link($obj1)->add_link($obj2, "tag")->add_link($obj3, "tag2!@&"); + $obj->store; + $obj = $bucket->get("foo"); + my $results = $obj->link($bucket_name)->run(); + is scalar @$results, 3, 'got 3 links via links walking'; + $results = $obj->link($bucket_name, 'tag')->run; + is scalar @$results, 1, 'got one link via link walking'; +}; + + -- cgit v1.2.3