diff options
author | Ricardo Soares de Lima <ricardo.soaresdelima@gmail.com> | 2012-12-09 16:08:02 -0200 |
---|---|---|
committer | Christian Weiske <cweiske@cweiske.de> | 2013-03-21 06:42:13 +0100 |
commit | 2f865db5132c65311f277586459bcbf4c026a8e6 (patch) | |
tree | 7c4e4d7052ee9b62af2a07355506d51b2e86c150 | |
parent | 3e2d817fc7fecf6b97c5989ca75a52414fbdf0af (diff) | |
download | semanticscuttle-2f865db5132c65311f277586459bcbf4c026a8e6.tar.gz semanticscuttle-2f865db5132c65311f277586459bcbf4c026a8e6.tar.bz2 |
The method attachTags was raising a Notice error, fix it and adds a test for this situation.
-rw-r--r-- | src/SemanticScuttle/Service/Bookmark2Tag.php | 13 | ||||
-rw-r--r-- | tests/Bookmark2TagTest.php | 15 |
2 files changed, 22 insertions, 6 deletions
diff --git a/src/SemanticScuttle/Service/Bookmark2Tag.php b/src/SemanticScuttle/Service/Bookmark2Tag.php index 6e8e28c..ed5e328 100644 --- a/src/SemanticScuttle/Service/Bookmark2Tag.php +++ b/src/SemanticScuttle/Service/Bookmark2Tag.php @@ -97,12 +97,13 @@ class SemanticScuttle_Service_Bookmark2Tag extends SemanticScuttle_DbService $tags_count = is_array($tags)?count($tags):0; - - foreach($tags as $i => $tag) { - $tags[$i] = trim(utf8_strtolower($tags[$i])); - if ($fromApi) { - include_once 'SemanticScuttle/functions.php'; - $tags[$i] = convertTag($tags[$i], 'in'); + if (is_array($tags)) { + foreach($tags as $i => $tag) { + $tags[$i] = trim(utf8_strtolower($tags[$i])); + if ($fromApi) { + include_once 'SemanticScuttle/functions.php'; + $tags[$i] = convertTag($tags[$i], 'in'); + } } } diff --git a/tests/Bookmark2TagTest.php b/tests/Bookmark2TagTest.php index b0eccd1..fdfc42e 100644 --- a/tests/Bookmark2TagTest.php +++ b/tests/Bookmark2TagTest.php @@ -88,6 +88,21 @@ class Bookmark2TagTest extends TestBase $this->b2ts->getTagsForBookmark($bid, true) ); } + + public function testAttachTagsWithEmptyStringAddsSystemUnfiled() + { + $originalDisplayErros = ini_get('display_errors'); + $originalErrorReporting = ini_get('error_reporting'); + ini_set('display_errors', 1); + error_reporting(E_ALL); + $bid = $this->addBookmark(null, null, 0, ''); + $this->assertEquals( + array('system:unfiled'), + $this->b2ts->getTagsForBookmark($bid, true) + ); + ini_set('display_errors', $originalDisplayErros); + error_reporting($originalErrorReporting); + } public function testAttachTagsWithSomeEmptyTags() { |