]> git.immae.eu Git - github/shaarli/Shaarli.git/blobdiff - tests/utils/ReferenceLinkDB.php
Better whitespace handling in tags
[github/shaarli/Shaarli.git] / tests / utils / ReferenceLinkDB.php
index 2cb05baeb8a8406c060691aea1dc30eacde3249a..fcc7a4f9f753ba3c4463fa798c0877932132a642 100644 (file)
@@ -4,9 +4,11 @@
  */
 class ReferenceLinkDB
 {
-    private $links = array();
-    private $publicCount = 0;
-    private $privateCount = 0;
+    public static $NB_LINKS_TOTAL = 7;
+
+    private $_links = array();
+    private $_publicCount = 0;
+    private $_privateCount = 0;
 
     /**
      * Populates the test DB with reference data
@@ -14,27 +16,36 @@ class ReferenceLinkDB
     function __construct()
     {
         $this->addLink(
-            'Free as in Freedom 2.0',
+            'Link title: @website',
+            '?WDWyig',
+            'Stallman has a beard and is part of the Free Software Foundation (or not). Seriously, read this. #hashtag',
+            0,
+            '20150310_114651',
+            'sTuff'
+        );
+
+        $this->addLink(
+            'Free as in Freedom 2.0 @website',
             'https://static.fsf.org/nosvn/faif-2.0.pdf',
-            'Richard Stallman and the Free Software Revolution',
+            'Richard Stallman and the Free Software Revolution. Read this. #hashtag',
             0,
             '20150310_114633',
-            'free gnu software stallman'
+            'free gnu software stallman -exclude stuff hashtag'
         );
 
         $this->addLink(
             'MediaGoblin',
             'http://mediagoblin.org/',
-            'A free software media publishing platform',
+            'A free software media publishing platform #hashtagOther',
             0,
             '20130614_184135',
-            'gnu media web'
+            'gnu media web .hidden hashtag'
         );
 
         $this->addLink(
             'w3c-markup-validator',
             'https://dvcs.w3.org/hg/markup-validator/summary',
-            'Mercurial repository for the W3C Validator',
+            'Mercurial repository for the W3C Validator #private',
             1,
             '20141125_084734',
             'css html w3c web Mercurial'
@@ -43,7 +54,7 @@ class ReferenceLinkDB
         $this->addLink(
             'UserFriendly - Web Designer',
             'http://ars.userfriendly.org/cartoons/?id=20121206',
-            'Naming conventions...',
+            'Naming conventions... #private',
             0,
             '20121206_142300',
             'dev cartoon web'
@@ -64,7 +75,7 @@ class ReferenceLinkDB
             '',
             1,
             '20121206_182539',
-            'dev cartoon'
+            'dev cartoon tag1  tag2   tag3  tag4   '
         );
     }
 
@@ -81,23 +92,23 @@ class ReferenceLinkDB
             'linkdate' => $date,
             'tags' => $tags,
         );
-        $this->links[$date] = $link;
+        $this->_links[$date] = $link;
 
         if ($private) {
-            $this->privateCount++;
+            $this->_privateCount++;
             return;
         }
-        $this->publicCount++;
+        $this->_publicCount++;
     }
 
     /**
      * Writes data to the datastore
      */
-    public function write($filename, $prefix, $suffix)
+    public function write($filename)
     {
         file_put_contents(
             $filename,
-            $prefix.base64_encode(gzdeflate(serialize($this->links))).$suffix
+            '<?php /* '.base64_encode(gzdeflate(serialize($this->_links))).' */ ?>'
         );
     }
 
@@ -106,7 +117,7 @@ class ReferenceLinkDB
      */
     public function countLinks()
     {
-        return $this->publicCount + $this->privateCount;
+        return $this->_publicCount + $this->_privateCount;
     }
 
     /**
@@ -114,7 +125,7 @@ class ReferenceLinkDB
      */
     public function countPublicLinks()
     {
-        return $this->publicCount;
+        return $this->_publicCount;
     }
 
     /**
@@ -122,7 +133,11 @@ class ReferenceLinkDB
      */
     public function countPrivateLinks()
     {
-        return $this->privateCount;
+        return $this->_privateCount;
+    }
+
+    public function getLinks()
+    {
+        return $this->_links;
     }
 }
-?>