first unit tests for Bookmark2Tag::getPopularTags
This commit is contained in:
parent
f67250a720
commit
d4ccb1d3d3
2 changed files with 85 additions and 2 deletions
|
@ -204,6 +204,88 @@ class Bookmark2TagTest extends TestBase
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Create a bookmark
|
||||||
|
*
|
||||||
|
* @param integer $user User ID the bookmark shall belong
|
||||||
|
* @param array $tags Array of tags to attach. If "null" is given,
|
||||||
|
* it will automatically be "unittest"
|
||||||
|
* @param string $date strtotime-compatible string
|
||||||
|
* @param string $title Bookmark title
|
||||||
|
*
|
||||||
|
* @return integer ID of bookmark
|
||||||
|
*/
|
||||||
|
protected function addTagBookmark($user, $tags, $date = null, $title = null)
|
||||||
|
{
|
||||||
|
return $this->addBookmark(
|
||||||
|
$user, null, 0, $tags, $title, $date
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Fetch the most popular tags in descending order
|
||||||
|
*/
|
||||||
|
public function testGetPopularTagsOrder()
|
||||||
|
{
|
||||||
|
$user = $this->addUser();
|
||||||
|
$this->addTagBookmark($user, array('one', 'two'));
|
||||||
|
$this->addTagBookmark($user, array('one', 'three'));
|
||||||
|
$this->addTagBookmark($user, array('one', 'two'));
|
||||||
|
|
||||||
|
$arTags = $this->b2ts->getPopularTags();
|
||||||
|
$this->assertInternalType('array', $arTags);
|
||||||
|
$this->assertEquals(3, count($arTags));
|
||||||
|
|
||||||
|
$this->assertInternalType('array', $arTags[0]);
|
||||||
|
|
||||||
|
$this->assertEquals(
|
||||||
|
array(
|
||||||
|
array('tag' => 'one', 'bCount' => '3'),
|
||||||
|
array('tag' => 'two', 'bCount' => '2'),
|
||||||
|
array('tag' => 'three', 'bCount' => '1')
|
||||||
|
),
|
||||||
|
$arTags
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public function testGetPopularTagsLimit()
|
||||||
|
{
|
||||||
|
$user = $this->addUser();
|
||||||
|
$this->addTagBookmark($user, array('one', 'two'));
|
||||||
|
$this->addTagBookmark($user, array('one', 'three'));
|
||||||
|
$this->addTagBookmark($user, array('one', 'two'));
|
||||||
|
|
||||||
|
$arTags = $this->b2ts->getPopularTags();
|
||||||
|
$this->assertInternalType('array', $arTags);
|
||||||
|
$this->assertEquals(3, count($arTags));
|
||||||
|
|
||||||
|
$arTags = $this->b2ts->getPopularTags(null, 2);
|
||||||
|
$this->assertInternalType('array', $arTags);
|
||||||
|
$this->assertEquals(2, count($arTags));
|
||||||
|
$this->assertEquals(
|
||||||
|
array(
|
||||||
|
array('tag' => 'one', 'bCount' => '3'),
|
||||||
|
array('tag' => 'two', 'bCount' => '2'),
|
||||||
|
),
|
||||||
|
$arTags
|
||||||
|
);
|
||||||
|
|
||||||
|
$arTags = $this->b2ts->getPopularTags(null, 1);
|
||||||
|
$this->assertInternalType('array', $arTags);
|
||||||
|
$this->assertEquals(1, count($arTags));
|
||||||
|
$this->assertEquals(
|
||||||
|
array(
|
||||||
|
array('tag' => 'one', 'bCount' => '3'),
|
||||||
|
),
|
||||||
|
$arTags
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (PHPUnit_MAIN_METHOD == 'Bookmark2TagTest::main') {
|
if (PHPUnit_MAIN_METHOD == 'Bookmark2TagTest::main') {
|
||||||
|
|
|
@ -31,6 +31,7 @@ class TestBase extends PHPUnit_Framework_TestCase
|
||||||
* @param array $tags Array of tags to attach. If "null" is given,
|
* @param array $tags Array of tags to attach. If "null" is given,
|
||||||
* it will automatically be "unittest"
|
* it will automatically be "unittest"
|
||||||
* @param string $title Bookmark title
|
* @param string $title Bookmark title
|
||||||
|
* @param string $date strtotime-compatible string
|
||||||
*
|
*
|
||||||
* @return integer ID of bookmark
|
* @return integer ID of bookmark
|
||||||
*
|
*
|
||||||
|
@ -38,7 +39,7 @@ class TestBase extends PHPUnit_Framework_TestCase
|
||||||
*/
|
*/
|
||||||
protected function addBookmark(
|
protected function addBookmark(
|
||||||
$user = null, $address = null, $status = 0,
|
$user = null, $address = null, $status = 0,
|
||||||
$tags = null, $title = null
|
$tags = null, $title = null, $date = null
|
||||||
) {
|
) {
|
||||||
if ($user === null) {
|
if ($user === null) {
|
||||||
$user = $this->addUser();
|
$user = $this->addUser();
|
||||||
|
@ -64,7 +65,7 @@ class TestBase extends PHPUnit_Framework_TestCase
|
||||||
null,
|
null,
|
||||||
$status,
|
$status,
|
||||||
$tags,
|
$tags,
|
||||||
null, null, false, false,
|
null, $date, false, false,
|
||||||
$user
|
$user
|
||||||
);
|
);
|
||||||
return $bid;
|
return $bid;
|
||||||
|
|
Loading…
Reference in a new issue