1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
|
<?php
/**
* SemanticScuttle - your social bookmark manager.
*
* PHP version 5.
*
* @category Bookmarking
* @package SemanticScuttle
* @author Benjamin Huynh-Kim-Bang <mensonge@users.sourceforge.net>
* @author Christian Weiske <cweiske@cweiske.de>
* @author Eric Dane <ericdane@users.sourceforge.net>
* @license GPL http://www.gnu.org/licenses/gpl.html
* @link http://sourceforge.net/projects/semanticscuttle
*/
require_once 'prepare.php';
if (!defined('PHPUnit_MAIN_METHOD')) {
define('PHPUnit_MAIN_METHOD', 'Bookmark2TagTest::main');
}
/**
* Unit tests for the SemanticScuttle bookmark-tag combination service.
*
* @category Bookmarking
* @package SemanticScuttle
* @author Benjamin Huynh-Kim-Bang <mensonge@users.sourceforge.net>
* @author Christian Weiske <cweiske@cweiske.de>
* @author Eric Dane <ericdane@users.sourceforge.net>
* @license GPL http://www.gnu.org/licenses/gpl.html
* @link http://sourceforge.net/projects/semanticscuttle
*/
class Bookmark2TagTest extends TestBase
{
protected $us;
protected $bs;
protected $ts;
protected $tts;
/**
* Used to run this test class standalone
*
* @return void
*/
public static function main()
{
require_once 'PHPUnit/TextUI/TestRunner.php';
PHPUnit_TextUI_TestRunner::run(
new PHPUnit_Framework_TestSuite(__CLASS__)
);
}
protected function setUp()
{
$this->us = SemanticScuttle_Service_Factory::get('User');
$this->bs = SemanticScuttle_Service_Factory::get('Bookmark');
$this->bs->deleteAll();
$this->b2ts= SemanticScuttle_Service_Factory::get('Bookmark2Tag');
$this->b2ts->deleteAll();
$this->tts = SemanticScuttle_Service_Factory::get('Tag2Tag');
$this->tts->deleteAll();
$this->tsts = SemanticScuttle_Service_Factory::get('TagStat');
$this->tsts->deleteAll();
$this->vs = SemanticScuttle_Service_Factory::get('Vote');
$this->vs->deleteAll();
}
/**
* Test getTagsForBookmark() when the bookmark has no tags
*
* @return void
*/
public function testGetTagsForBookmarkNone()
{
$this->addBookmark(null, null, 0, array('forz', 'barz'));
$bid = $this->addBookmark(null, null, 0, array());
$this->assertEquals(
array(),
$this->b2ts->getTagsForBookmark($bid)
);
}
/**
* Test getTagsForBookmark() when the bookmark has one tag
*
* @return void
*/
public function testGetTagsForBookmarkOne()
{
$this->addBookmark(null, null, 0, array('forz', 'barz'));
$bid = $this->addBookmark(null, null, 0, array());
$this->b2ts->attachTags($bid, array('foo'));
$this->assertEquals(
array('foo'),
$this->b2ts->getTagsForBookmark($bid)
);
}
/**
* Test getTagsForBookmark() when the bookmark has three tags
*
* @return void
*/
public function testGetTagsForBookmarkThree()
{
$this->addBookmark(null, null, 0, array('forz', 'barz'));
$bid = $this->addBookmark(null, null, 0, array());
$this->b2ts->attachTags($bid, array('foo', 'bar', 'fuu'));
$tags = $this->b2ts->getTagsForBookmark($bid);
$this->assertType('array', $tags);
$this->assertContains('foo', $tags);
$this->assertContains('bar', $tags);
$this->assertContains('fuu', $tags);
}
}
if (PHPUnit_MAIN_METHOD == 'Bookmark2TagTest::main') {
Bookmark2TagTest::main();
}
?>
|