]> BookStack Code Mirror - bookstack/blobdiff - tests/Entity/PageDraftTest.php
settings.php: add missing french translation
[bookstack] / tests / Entity / PageDraftTest.php
index 218b458bd4bb171bc59d3dc60529221946db75a5..b8ac9d3aeef6d37f86022986a8371b725aa1028a 100644 (file)
@@ -1,16 +1,16 @@
-<?php
+<?php namespace Tests;
 
 
-class PageDraftTest extends TestCase
+class PageDraftTest extends BrowserKitTest
 {
     protected $page;
-    protected $pageRepo;
+    protected $entityRepo;
 
     public function setUp()
     {
         parent::setUp();
         $this->page = \BookStack\Page::first();
-        $this->pageRepo = app('\BookStack\Repos\PageRepo');
+        $this->entityRepo = app('\BookStack\Repos\EntityRepo');
     }
 
     public function test_draft_content_shows_if_available()
@@ -20,7 +20,7 @@ class PageDraftTest extends TestCase
             ->dontSeeInField('html', $addedContent);
 
         $newContent = $this->page->html . $addedContent;
-        $this->pageRepo->saveUpdateDraft($this->page, ['html' => $newContent]);
+        $this->entityRepo->updatePageDraft($this->page, ['html' => $newContent]);
         $this->asAdmin()->visit($this->page->getUrl() . '/edit')
             ->seeInField('html', $newContent);
     }
@@ -32,8 +32,8 @@ class PageDraftTest extends TestCase
             ->dontSeeInField('html', $addedContent);
 
         $newContent = $this->page->html . $addedContent;
-        $newUser = $this->getNewUser();
-        $this->pageRepo->saveUpdateDraft($this->page, ['html' => $newContent]);
+        $newUser = $this->getEditor();
+        $this->entityRepo->updatePageDraft($this->page, ['html' => $newContent]);
         $this->actingAs($newUser)->visit($this->page->getUrl() . '/edit')
             ->dontSeeInField('html', $newContent);
     }
@@ -41,22 +41,28 @@ class PageDraftTest extends TestCase
     public function test_alert_message_shows_if_editing_draft()
     {
         $this->asAdmin();
-        $this->pageRepo->saveUpdateDraft($this->page, ['html' => 'test content']);
+        $this->entityRepo->updatePageDraft($this->page, ['html' => 'test content']);
         $this->asAdmin()->visit($this->page->getUrl() . '/edit')
             ->see('You are currently editing a draft');
     }
 
     public function test_alert_message_shows_if_someone_else_editing()
     {
+        $nonEditedPage = \BookStack\Page::take(10)->get()->last();
         $addedContent = '<p>test message content</p>';
         $this->asAdmin()->visit($this->page->getUrl() . '/edit')
             ->dontSeeInField('html', $addedContent);
 
         $newContent = $this->page->html . $addedContent;
-        $newUser = $this->getNewUser();
-        $this->pageRepo->saveUpdateDraft($this->page, ['html' => $newContent]);
-        $this->actingAs($newUser)->visit($this->page->getUrl() . '/edit')
+        $newUser = $this->getEditor();
+        $this->entityRepo->updatePageDraft($this->page, ['html' => $newContent]);
+
+        $this->actingAs($newUser)
+            ->visit($this->page->getUrl() . '/edit')
             ->see('Admin has started editing this page');
+            $this->flushSession();
+        $this->visit($nonEditedPage->getUrl() . '/edit')
+            ->dontSeeInElement('.notification', 'Admin has started editing this page');
     }
 
     public function test_draft_pages_show_on_homepage()
@@ -73,14 +79,14 @@ class PageDraftTest extends TestCase
     {
         $book = \BookStack\Book::first();
         $chapter = $book->chapters->first();
-        $newUser = $this->getNewUser();
+        $newUser = $this->getEditor();
 
         $this->actingAs($newUser)->visit('/')
             ->visit($book->getUrl() . '/page/create')
             ->visit($chapter->getUrl() . '/create-page')
             ->visit($book->getUrl())
             ->seeInElement('.page-list', 'New Page');
-
+        
         $this->asAdmin()
             ->visit($book->getUrl())
             ->dontSeeInElement('.page-list', 'New Page')