2008-01-23 17:58:00 +01:00
|
|
|
<?php
|
|
|
|
require_once 'PHPUnit/Framework.php';
|
|
|
|
|
|
|
|
/*
|
2008-12-18 11:59:43 +01:00
|
|
|
To launch this test, type the following line into a shell
|
|
|
|
into the tests/ directory :
|
|
|
|
phpunit BookmarksTest tests/boomarksTest.php
|
|
|
|
*/
|
2008-01-23 17:58:00 +01:00
|
|
|
|
|
|
|
class BookmarksTest extends PHPUnit_Framework_TestCase
|
|
|
|
{
|
2008-12-18 11:59:43 +01:00
|
|
|
protected $us;
|
|
|
|
protected $bs;
|
|
|
|
protected $ts;
|
|
|
|
protected $tts;
|
2008-01-23 17:58:00 +01:00
|
|
|
|
2008-12-18 11:59:43 +01:00
|
|
|
protected function setUp()
|
|
|
|
{
|
|
|
|
global $dbhost, $dbuser, $dbpass, $dbname, $dbport, $dbpersist, $dbtype, $tableprefix, $TEMPLATES_DIR, $filetypes, $debugMode;
|
|
|
|
require_once('./header.inc.php');
|
2008-02-19 14:51:18 +01:00
|
|
|
|
2008-12-18 11:59:43 +01:00
|
|
|
$this->us =& ServiceFactory::getServiceInstance('UserService');
|
|
|
|
$this->bs =& ServiceFactory::getServiceInstance('BookmarkService');
|
|
|
|
$this->bs->deleteAll();
|
|
|
|
$this->b2ts=& ServiceFactory::getServiceInstance('Bookmark2TagService');
|
|
|
|
$this->b2ts->deleteAll();
|
|
|
|
$this->tts =& ServiceFactory::getServiceInstance('Tag2TagService');
|
|
|
|
$this->tts->deleteAll();
|
|
|
|
$this->tsts =& ServiceFactory::getServiceInstance('TagStatService');
|
|
|
|
$this->tsts->deleteAll();
|
|
|
|
}
|
2008-02-19 14:51:18 +01:00
|
|
|
|
2008-12-18 11:59:43 +01:00
|
|
|
public function testHardCharactersInBookmarks()
|
|
|
|
{
|
|
|
|
$bs = $this->bs;
|
|
|
|
$title = "title&é\"'(-è_çà)=";
|
|
|
|
$desc = "description#{[|`\^@]}³<> ¹¡÷׿&é\"'(-è\\_çà)=";
|
|
|
|
$tag1 = "#{|`^@]³¹¡¿<&é\"'(-è\\_çà)";
|
|
|
|
$tag2 = "&é\"'(-è.[?./§!_çà)";
|
2008-02-19 14:51:18 +01:00
|
|
|
|
2008-12-18 11:59:43 +01:00
|
|
|
$bs->addBookmark("http://site1.com", $title, $desc, "status", array($tag1, $tag2), null, false, false, 1);
|
2008-02-19 14:51:18 +01:00
|
|
|
|
2008-12-18 11:59:43 +01:00
|
|
|
$bookmarks =& $bs->getBookmarks(0, 1, NULL, NULL, NULL, getSortOrder(), NULL, 0);
|
2008-01-23 17:58:00 +01:00
|
|
|
|
2008-12-18 11:59:43 +01:00
|
|
|
$b0 = $bookmarks['bookmarks'][0];
|
|
|
|
$this->assertEquals($title, $b0['bTitle']);
|
|
|
|
$this->assertEquals($desc, $b0['bDescription']);
|
|
|
|
$this->assertEquals(str_replace(array('"', '\'', '/'), "_", $tag1), $b0['tags'][0]);
|
|
|
|
$this->assertEquals(str_replace(array('"', '\'', '/'), "_", $tag2), $b0['tags'][1]);
|
|
|
|
}
|
2008-01-23 17:58:00 +01:00
|
|
|
|
2008-12-18 11:59:43 +01:00
|
|
|
public function testUnificationOfBookmarks()
|
|
|
|
{
|
|
|
|
$bs = $this->bs;
|
2008-01-23 18:13:45 +01:00
|
|
|
|
2008-12-18 11:59:43 +01:00
|
|
|
$bs->addBookmark("http://site1.com", "title", "description", "status", array('tag1'), null, false, false, 1);
|
|
|
|
$bs->addBookmark("http://site1.com", "title2", "description2", "status", array('tag2'), null, false, false, 2);
|
2008-02-19 09:07:23 +01:00
|
|
|
|
2008-12-18 11:59:43 +01:00
|
|
|
$bookmarks =& $bs->getBookmarks(0, 1, NULL, NULL, NULL, getSortOrder(), NULL, 0);
|
|
|
|
$this->assertEquals(1, $bookmarks['total']);
|
|
|
|
}
|
|
|
|
|
|
|
|
/*public function testSearchingBookmarksAccentsInsensible()
|
|
|
|
{
|
|
|
|
$bs = $this->bs;
|
|
|
|
|
|
|
|
$bs->addBookmark("http://site1.com", "title", "éèüaàê", "status", array('tag1'), null, false, false, 1);
|
|
|
|
$bookmarks =& $bs->getBookmarks(0, NULL, NULL, NULL, $terms = "eeaae"); //void
|
|
|
|
$this->assertEquals(0, $bookmarks['total']);
|
|
|
|
$bookmarks =& $bs->getBookmarks(0, NULL, NULL, NULL, $terms = "eeuaae");
|
|
|
|
$this->assertEquals(1, $bookmarks['total']);
|
|
|
|
}*/
|
2008-02-19 09:07:23 +01:00
|
|
|
|
2008-01-23 17:58:00 +01:00
|
|
|
}
|
|
|
|
?>
|