X-Git-Url: http://source.bookstackapp.com/bookstack/blobdiff_plain/fcfb9470c96c9bff054dbc28a7dea1d7b87ccb91..refs/pull/262/head:/tests/Entity/EntityTest.php diff --git a/tests/Entity/EntityTest.php b/tests/Entity/EntityTest.php index 3bf6a3f2a..9fd4eb9ad 100644 --- a/tests/Entity/EntityTest.php +++ b/tests/Entity/EntityTest.php @@ -136,7 +136,7 @@ class EntityTest extends TestCase $this->asAdmin() ->visit('/books') // Choose to create a book - ->click('Add new book') + ->click('Create New Book') ->seePageIs('/books/create') // Fill out form & save ->type($book->name, '#name') @@ -151,8 +151,10 @@ class EntityTest extends TestCase ->visit('/books/create') ->type($book->name, '#name') ->type($book->description, '#description') - ->press('Save Book') - ->seePageIs('/books/my-first-book-2'); + ->press('Save Book'); + + $expectedPattern = '/\/books\/my-first-book-[0-9a-zA-Z]{3}/'; + $this->assertRegExp($expectedPattern, $this->currentUri, "Did not land on expected page [$expectedPattern].\n"); $book = \BookStack\Book::where('slug', '=', 'my-first-book')->first(); return $book; @@ -166,7 +168,7 @@ class EntityTest extends TestCase $entities = $this->createEntityChainBelongingToUser($creator, $updater); $this->actingAs($creator); app('BookStack\Repos\UserRepo')->destroy($creator); - app('BookStack\Repos\PageRepo')->saveRevision($entities['page']); + app('BookStack\Repos\EntityRepo')->savePageRevision($entities['page']); $this->checkEntitiesViewable($entities); } @@ -179,7 +181,7 @@ class EntityTest extends TestCase $entities = $this->createEntityChainBelongingToUser($creator, $updater); $this->actingAs($updater); app('BookStack\Repos\UserRepo')->destroy($updater); - app('BookStack\Repos\PageRepo')->saveRevision($entities['page']); + app('BookStack\Repos\EntityRepo')->savePageRevision($entities['page']); $this->checkEntitiesViewable($entities); } @@ -216,15 +218,27 @@ class EntityTest extends TestCase public function test_old_page_slugs_redirect_to_new_pages() { - $page = \BookStack\Page::all()->first(); + $page = \BookStack\Page::first(); $pageUrl = $page->getUrl(); $newPageUrl = '/books/' . $page->book->slug . '/page/super-test-page'; + // Need to save twice since revisions are not generated in seeder. $this->asAdmin()->visit($pageUrl) + ->clickInElement('#content', 'Edit') + ->type('super test', '#name') + ->press('Save Page'); + + $page = \BookStack\Page::first(); + $pageUrl = $page->getUrl(); + + // Second Save + $this->visit($pageUrl) ->clickInElement('#content', 'Edit') ->type('super test page', '#name') ->press('Save Page') - ->seePageIs($newPageUrl) - ->visit($pageUrl) + // Check redirect + ->seePageIs($newPageUrl); + + $this->visit($pageUrl) ->seePageIs($newPageUrl); }