diff --git a/controller/lib/bookmarks.php b/controller/lib/bookmarks.php index 712b3cd6..a9238949 100644 --- a/controller/lib/bookmarks.php +++ b/controller/lib/bookmarks.php @@ -160,7 +160,9 @@ class Bookmarks { $sql .= ' AND public = 1 '; } - Bookmarks::findBookmarksBuildFilter($sql, $params, $filters, $filterTagOnly, $tagFilterConjunction, $CONFIG_DBTYPE); + if (count($filters) > 0) { + Bookmarks::findBookmarksBuildFilter($sql, $params, $filters, $filterTagOnly, $tagFilterConjunction, $CONFIG_DBTYPE); + } if (!in_array($sqlSortColumn, $tableAttributes)) { $sqlSortColumn = 'lastmodified'; diff --git a/tests/publiccontroller_test.php b/tests/publiccontroller_test.php index d49be2c3..11697da3 100644 --- a/tests/publiccontroller_test.php +++ b/tests/publiccontroller_test.php @@ -3,6 +3,7 @@ OC_App::loadApp('bookmarks'); use \OCA\Bookmarks\Controller\Rest\PublicController; +use OCA\Bookmarks\Controller\Lib\Bookmarks; class Test_PublicController_Bookmarks extends PHPUnit_Framework_TestCase { @@ -24,14 +25,33 @@ class Test_PublicController_Bookmarks extends PHPUnit_Framework_TestCase { $output = $this->publicController->returnAsJson(null, "apassword", null); $data = $output->getData(); $status = $data['status']; - $this->assertEquals($status, 'error'); + $this->assertEquals($status, 'error'); } function testPublicQueryWrongUser() { $output = $this->publicController->returnAsJson("cqc43dr4rx3x4xatr4", "apassword", null); $data = $output->getData(); $status = $data['status']; - $this->assertEquals($status, 'error'); + $this->assertEquals($status, 'error'); + } + + function testPublicQuery() { + + Bookmarks::addBookmark($this->userid, $this->db, "http://www.golem.de", "Golem", array("four"), "PublicNoTag", true); + Bookmarks::addBookmark($this->userid, $this->db, "http://www.9gag.com", "9gag", array("two", "three"), "PublicTag", true); + + $output = $this->publicController->returnAsJson($this->userid); + $data = $output->getData(); + $this->assertEquals(2, count($data)); + + $this->cleanDB(); + } + + function cleanDB() { + $query1 = OC_DB::prepare('DELETE FROM *PREFIX*bookmarks'); + $query1->execute(); + $query2 = OC_DB::prepare('DELETE FROM *PREFIX*bookmarks_tags'); + $query2->execute(); } }