return $book;
}
- public function test_page_search()
- {
- $book = \BookStack\Book::all()->first();
- $page = $book->pages->first();
-
- $this->asAdmin()
- ->visit('/')
- ->type($page->name, 'term')
- ->press('header-search-box-button')
- ->see('Search Results')
- ->see($page->name)
- ->click($page->name)
- ->seePageIs($page->getUrl());
- }
-
- public function test_invalid_page_search()
- {
- $this->asAdmin()
- ->visit('/')
- ->type('<p>test</p>', 'term')
- ->press('header-search-box-button')
- ->see('Search Results')
- ->seeStatusCode(200);
- }
-
- public function test_empty_search_redirects_back()
- {
- $this->asAdmin()
- ->visit('/')
- ->visit('/search/all')
- ->seePageIs('/');
- }
-
- public function test_book_search()
- {
- $book = \BookStack\Book::all()->first();
- $page = $book->pages->last();
- $chapter = $book->chapters->last();
-
- $this->asAdmin()
- ->visit('/search/book/' . $book->id . '?term=' . urlencode($page->name))
- ->see($page->name)
-
- ->visit('/search/book/' . $book->id . '?term=' . urlencode($chapter->name))
- ->see($chapter->name);
- }
-
- public function test_empty_book_search_redirects_back()
- {
- $book = \BookStack\Book::all()->first();
- $this->asAdmin()
- ->visit('/books')
- ->visit('/search/book/' . $book->id . '?term=')
- ->seePageIs('/books');
- }
-
-
public function test_entities_viewable_after_creator_deletion()
{
// Create required assets and revisions
->seeInNthElement('.entity-list .page', 0, $content['page']->name);
}
+ public function test_old_page_slugs_redirect_to_new_pages()
+ {
+ $page = \BookStack\Page::all()->first();
+ $pageUrl = $page->getUrl();
+ $newPageUrl = '/books/' . $page->book->slug . '/page/super-test-page';
+ $this->asAdmin()->visit($pageUrl)
+ ->clickInElement('#content', 'Edit')
+ ->type('super test page', '#name')
+ ->press('Save Page')
+ ->seePageIs($newPageUrl)
+ ->visit($pageUrl)
+ ->seePageIs($newPageUrl);
+ }
+
+ public function test_recently_updated_pages_on_home()
+ {
+ $page = \BookStack\Page::orderBy('updated_at', 'asc')->first();
+ $this->asAdmin()->visit('/')
+ ->dontSeeInElement('#recently-updated-pages', $page->name);
+ $this->visit($page->getUrl() . '/edit')
+ ->press('Save Page')
+ ->visit('/')
+ ->seeInElement('#recently-updated-pages', $page->name);
+ }
+
+ public function test_recently_created_pages_on_home()
+ {
+ $entityChain = $this->createEntityChainBelongingToUser($this->getNewUser());
+ $this->asAdmin()->visit('/')
+ ->seeInElement('#recently-created-pages', $entityChain['page']->name);
+ }
}