]> git.immae.eu Git - github/shaarli/Shaarli.git/blobdiff - tests/HistoryTest.php
namespacing: \Shaarli\Http\Base64Url
[github/shaarli/Shaarli.git] / tests / HistoryTest.php
index 79322249d0da8ddf3b099dafe9f5c49388e73709..7723c4617767be50e21af98779fa14a34cac9291 100644 (file)
@@ -1,9 +1,12 @@
 <?php
 
-require_once 'application/History.php';
+namespace Shaarli;
 
+use DateTime;
+use Exception;
+use FileUtils;
 
-class HistoryTest extends PHPUnit_Framework_TestCase
+class HistoryTest extends \PHPUnit\Framework\TestCase
 {
     /**
      * @var string History file path
@@ -21,9 +24,19 @@ class HistoryTest extends PHPUnit_Framework_TestCase
     /**
      * Test that the history file is created if it doesn't exist.
      */
-    public function testConstructFileCreated()
+    public function testConstructLazyLoading()
     {
         new History(self::$historyFilePath);
+        $this->assertFileNotExists(self::$historyFilePath);
+    }
+
+    /**
+     * Test that the history file is created if it doesn't exist.
+     */
+    public function testAddEventCreateFile()
+    {
+        $history = new History(self::$historyFilePath);
+        $history->updateSettings();
         $this->assertFileExists(self::$historyFilePath);
     }
 
@@ -37,7 +50,8 @@ class HistoryTest extends PHPUnit_Framework_TestCase
     {
         touch(self::$historyFilePath);
         chmod(self::$historyFilePath, 0440);
-        new History(self::$historyFilePath);
+        $history = new History(self::$historyFilePath);
+        $history->updateSettings();
     }
 
     /**
@@ -49,8 +63,9 @@ class HistoryTest extends PHPUnit_Framework_TestCase
     public function testConstructNotParsable()
     {
         file_put_contents(self::$historyFilePath, 'not parsable');
+        $history = new History(self::$historyFilePath);
         // gzinflate generates a warning
-        @new History(self::$historyFilePath);
+        @$history->updateSettings();
     }
 
     /**
@@ -62,21 +77,21 @@ class HistoryTest extends PHPUnit_Framework_TestCase
         $history->addLink(['id' => 0]);
         $actual = $history->getHistory()[0];
         $this->assertEquals(History::CREATED, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEquals(0, $actual['id']);
 
         $history = new History(self::$historyFilePath);
         $history->addLink(['id' => 1]);
         $actual = $history->getHistory()[0];
         $this->assertEquals(History::CREATED, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEquals(1, $actual['id']);
 
         $history = new History(self::$historyFilePath);
         $history->addLink(['id' => 'str']);
         $actual = $history->getHistory()[0];
         $this->assertEquals(History::CREATED, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEquals('str', $actual['id']);
     }
 
@@ -89,7 +104,7 @@ class HistoryTest extends PHPUnit_Framework_TestCase
         $history->updateLink(['id' => 1]);
         $actual = $history->getHistory()[0];
         $this->assertEquals(History::UPDATED, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEquals(1, $actual['id']);
     }
 
@@ -102,7 +117,7 @@ class HistoryTest extends PHPUnit_Framework_TestCase
         $history->deleteLink(['id' => 1]);
         $actual = $history->getHistory()[0];
         $this->assertEquals(History::DELETED, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEquals(1, $actual['id']);
     }
 
@@ -115,7 +130,7 @@ class HistoryTest extends PHPUnit_Framework_TestCase
         $history->updateSettings();
         $actual = $history->getHistory()[0];
         $this->assertEquals(History::SETTINGS, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEmpty($actual['id']);
     }
 
@@ -128,13 +143,13 @@ class HistoryTest extends PHPUnit_Framework_TestCase
         $history->updateLink(['id' => 1]);
         $actual = $history->getHistory()[0];
         $this->assertEquals(History::UPDATED, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEquals(1, $actual['id']);
 
         $history->addLink(['id' => 1]);
         $actual = $history->getHistory()[0];
         $this->assertEquals(History::CREATED, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEquals(1, $actual['id']);
     }
 
@@ -148,7 +163,7 @@ class HistoryTest extends PHPUnit_Framework_TestCase
         $history = new History(self::$historyFilePath);
         $actual = $history->getHistory()[0];
         $this->assertEquals(History::UPDATED, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEquals(1, $actual['id']);
     }
 
@@ -164,12 +179,12 @@ class HistoryTest extends PHPUnit_Framework_TestCase
         $history = new History(self::$historyFilePath);
         $actual = $history->getHistory()[0];
         $this->assertEquals(History::CREATED, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEquals(1, $actual['id']);
 
         $actual = $history->getHistory()[1];
         $this->assertEquals(History::UPDATED, $actual['event']);
-        $this->assertTrue(new DateTime('-2 seconds') < DateTime::createFromFormat(DateTime::ATOM, $actual['datetime']));
+        $this->assertTrue(new DateTime('-2 seconds') < $actual['datetime']);
         $this->assertEquals(1, $actual['id']);
     }
 
@@ -182,7 +197,7 @@ class HistoryTest extends PHPUnit_Framework_TestCase
         $history->updateLink(['id' => 1]);
         $this->assertEquals(1, count($history->getHistory()));
         $arr = $history->getHistory();
-        $arr[0]['datetime'] = (new DateTime('-1 hour'))->format(DateTime::ATOM);
+        $arr[0]['datetime'] = new DateTime('-1 hour');
         FileUtils::writeFlatDB(self::$historyFilePath, $arr);
 
         $history = new History(self::$historyFilePath, 60);