get('/blog'); $response->assertViewIs('articles.index'); } #[Test] public function single_article_page_loads() { $article = Article::factory()->create(); $response = $this->get($article->link); $response->assertViewIs('articles.show'); } #[Test] public function wrong_date_in_url_redirects_to_correct_date() { $article = Article::factory()->create(); $response = $this->get('/blog/1900/01/' . $article->titleurl); $response->assertRedirect('/blog/' . date('Y') . '/' . date('m') . '/' . $article->titleurl); } #[Test] public function old_urls_with_id_are_redirected() { $article = Article::factory()->create(); $num60Id = resolve(Numbers::class)->numto60($article->id); $response = $this->get('/blog/s/' . $num60Id); $response->assertRedirect($article->link); } #[Test] public function unknown_slug_gets_not_found_response() { $response = $this->get('/blog/' . date('Y') . '/' . date('m') . '/unknown-slug'); $response->assertNotFound(); } #[Test] public function unknown_article_id_gets_not_found_response() { $response = $this->get('/blog/s/22'); $response->assertNotFound(); } #[Test] public function some_urls_do_not_parse_correctly(): void { $response = $this->get('/blog/feed.js'); $response->assertNotFound(); } }