first pass RT4 merge, RT#13852
[freeside.git] / rt / t / api / bookmarks.t
diff --git a/rt/t/api/bookmarks.t b/rt/t/api/bookmarks.t
new file mode 100644 (file)
index 0000000..65b1945
--- /dev/null
@@ -0,0 +1,24 @@
+use strict;
+use warnings;
+use RT::Test tests => 36;
+
+my ( $url, $m ) = RT::Test->started_ok;
+my $root = RT::Test->load_or_create_user( Name => 'root' );
+
+my @tickets = RT::Test->create_tickets( { },  map { { Subject => "Test $_" } } ( 1 .. 9 ) );
+
+# 4.2 gives us $user->ToggleBookmark which is nicer
+$root->SetAttribute( Name => 'Bookmarks', Content => { map { $_ => 1 } (3,6,9) } );
+
+my $cu = RT::CurrentUser->new($root);
+my $bookmarks = RT::Tickets->new($cu);
+for my $search ( "Queue = 'General' AND id = '__Bookmarked__'",
+                 "id = '__Bookmarked__' AND Queue = 'General'",
+                 "id > 0 AND id = '__Bookmarked__'",
+                 "id = '__Bookmarked__' AND id > 0",
+                 "id = 3 OR id = '__Bookmarked__'",
+                 "id = '__Bookmarked__' OR id = 3",
+             ) {
+    $bookmarks->FromSQL($search);
+    is($bookmarks->Count,3,"Found my 3 bookmarks for [$search]");
+}