]> git.immae.eu Git - github/shaarli/Shaarli.git/blobdiff - tests/utils/ReferenceLinkDB.php
Merge pull request #841 from ArthurHoaro/feature/search-no-tag
[github/shaarli/Shaarli.git] / tests / utils / ReferenceLinkDB.php
index 6b16c9e8759600ef0e9430408ad8bf5b69dd1ca3..f09eebc13b26f701ecc8944602794bc22adbc219 100644 (file)
@@ -4,7 +4,7 @@
  */
 class ReferenceLinkDB
 {
-    public static $NB_LINKS_TOTAL = 8;
+    public static $NB_LINKS_TOTAL = 9;
 
     private $_links = array();
     private $_publicCount = 0;
@@ -21,7 +21,7 @@ class ReferenceLinkDB
             '?WDWyig',
             'Stallman has a beard and is part of the Free Software Foundation (or not). Seriously, read this. #hashtag',
             0,
-            DateTime::createFromFormat('Ymd_His', '20150310_114651'),
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20150310_114651'),
             'sTuff',
             null,
             'WDWyig'
@@ -33,19 +33,29 @@ class ReferenceLinkDB
             '?WDWyig',
             'Used to test links reordering.',
             0,
-            DateTime::createFromFormat('Ymd_His', '20100310_101010'),
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20100310_101010'),
             'ut'
         );
 
+        $this->addLink(
+            9,
+            'PSR-2: Coding Style Guide',
+            'http://www.php-fig.org/psr/psr-2/',
+            'This guide extends and expands on PSR-1, the basic coding standard.',
+            0,
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20121206_152312'),
+            ''
+        );
+
         $this->addLink(
             8,
             'Free as in Freedom 2.0 @website',
             'https://static.fsf.org/nosvn/faif-2.0.pdf',
             'Richard Stallman and the Free Software Revolution. Read this. #hashtag',
             0,
-            DateTime::createFromFormat('Ymd_His', '20150310_114633'),
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20150310_114633'),
             'free gnu software stallman -exclude stuff hashtag',
-            DateTime::createFromFormat('Ymd_His', '20160803_093033')
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20160803_093033')
         );
 
         $this->addLink(
@@ -54,9 +64,9 @@ class ReferenceLinkDB
             'http://mediagoblin.org/',
             'A free software media publishing platform #hashtagOther',
             0,
-            DateTime::createFromFormat('Ymd_His', '20130614_184135'),
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20130614_184135'),
             'gnu media web .hidden hashtag',
-            null,
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20130615_184230'),
             'IuWvgA'
         );
 
@@ -66,7 +76,7 @@ class ReferenceLinkDB
             'https://dvcs.w3.org/hg/markup-validator/summary',
             'Mercurial repository for the W3C Validator #private',
             1,
-            DateTime::createFromFormat('Ymd_His', '20141125_084734'),
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20141125_084734'),
             'css html w3c web Mercurial'
         );
 
@@ -76,7 +86,7 @@ class ReferenceLinkDB
             'http://ars.userfriendly.org/cartoons/?id=20121206',
             'Naming conventions... #private',
             0,
-            DateTime::createFromFormat('Ymd_His', '20121206_142300'),
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20121206_142300'),
             'dev cartoon web'
         );
 
@@ -86,7 +96,7 @@ class ReferenceLinkDB
             'http://ars.userfriendly.org/cartoons/?id=20010306',
             'Tropical printing',
             0,
-            DateTime::createFromFormat('Ymd_His', '20121206_172539'),
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20121206_172539'),
             'samba cartoon web'
         );
 
@@ -96,7 +106,7 @@ class ReferenceLinkDB
             'http://geek-and-poke.com/',
             '',
             1,
-            DateTime::createFromFormat('Ymd_His', '20121206_182539'),
+            DateTime::createFromFormat(LinkDB::LINK_DATE_FORMAT, '20121206_182539'),
             'dev cartoon tag1  tag2   tag3  tag4   '
         );
     }
@@ -115,7 +125,7 @@ class ReferenceLinkDB
             'tags' => $tags,
             'created' => $date,
             'updated' => $updated,
-            'shorturl' => $shorturl ? $shorturl : smallHash($date->format('Ymd_His') . $id),
+            'shorturl' => $shorturl ? $shorturl : smallHash($date->format(LinkDB::LINK_DATE_FORMAT) . $id),
         );
         $this->_links[$id] = $link;
 
@@ -161,6 +171,20 @@ class ReferenceLinkDB
         return $this->_privateCount;
     }
 
+    /**
+     * Returns the number of links without tag
+     */
+    public function countUntaggedLinks()
+    {
+        $cpt = 0;
+        foreach ($this->_links as $link) {
+            if (empty($link['tags'])) {
+                ++$cpt;
+            }
+        }
+        return $cpt;
+    }
+
     public function getLinks()
     {
         return $this->_links;