diff --git a/app/test/firehose_web/controllers/blog_controller_test.exs b/app/test/firehose_web/controllers/blog_controller_test.exs index 658cb70..a20c29a 100644 --- a/app/test/firehose_web/controllers/blog_controller_test.exs +++ b/app/test/firehose_web/controllers/blog_controller_test.exs @@ -1,6 +1,29 @@ defmodule FirehoseWeb.BlogControllerTest do use FirehoseWeb.ConnCase, async: false + describe "GET /blog/:blog_id (index) - date filtering" do + test "does not show future-dated posts", %{conn: conn} do + conn = get(conn, ~p"/blog/engineering") + html = html_response(conn, 200) + refute html =~ "Future Test Post" + end + end + + describe "GET /blog/:blog_id/:slug (show) - date filtering" do + test "still shows a future-dated post by slug", %{conn: conn} do + conn = get(conn, ~p"/blog/engineering/future-test-post") + assert html_response(conn, 200) =~ "Future Test Post" + end + end + + describe "GET /blog/:blog_id/tag/:tag - date filtering" do + test "excludes future-dated posts from tag page", %{conn: conn} do + conn = get(conn, ~p"/blog/engineering/tag/test") + html = html_response(conn, 200) + refute html =~ "Future Test Post" + end + end + describe "GET /blog/:blog_id/:slug - status banners" do test "authenticated user sees draft banner on draft post", %{conn: conn} do conn =