defmodule BerrypodWeb.Shop.ContentTest do use BerrypodWeb.ConnCase, async: false import Phoenix.LiveViewTest import Berrypod.AccountsFixtures setup do user_fixture() {:ok, _} = Berrypod.Settings.set_site_live(true) :ok end describe "About page" do test "renders about page", %{conn: conn} do {:ok, _view, html} = live(conn, ~p"/about") assert html =~ "About us" assert html =~ "Tell your customers who you are" end test "displays about content body", %{conn: conn} do {:ok, _view, html} = live(conn, ~p"/about") assert html =~ "placeholder text" end end describe "Delivery page" do test "renders delivery page", %{conn: conn} do {:ok, _view, html} = live(conn, ~p"/delivery") assert html =~ "Delivery & returns" assert html =~ "shipping and returns" end test "displays delivery content", %{conn: conn} do {:ok, _view, html} = live(conn, ~p"/delivery") assert html =~ "Production time" assert html =~ "Returns & exchanges" assert html =~ "Cancellations" end test "displays shipping fallback when no rates are configured", %{conn: conn} do {:ok, _view, html} = live(conn, ~p"/delivery") assert html =~ "worldwide" end end describe "Privacy page" do test "renders privacy page", %{conn: conn} do {:ok, _view, html} = live(conn, ~p"/privacy") assert html =~ "Privacy policy" assert html =~ "personal information" end test "displays privacy content", %{conn: conn} do {:ok, _view, html} = live(conn, ~p"/privacy") assert html =~ "What we collect" assert html =~ "Cookies" assert html =~ "Your rights" end end describe "Terms page" do test "renders terms page", %{conn: conn} do {:ok, _view, html} = live(conn, ~p"/terms") assert html =~ "Terms of service" assert html =~ "The legal bits" end test "displays terms content", %{conn: conn} do {:ok, _view, html} = live(conn, ~p"/terms") assert html =~ "Products" assert html =~ "Payment" assert html =~ "Intellectual property" end end describe "Footer links" do test "footer contains policy page links", %{conn: conn} do {:ok, _view, html} = live(conn, ~p"/about") assert html =~ ~s(href="/delivery") assert html =~ ~s(href="/privacy") assert html =~ ~s(href="/terms") assert html =~ ~s(href="/contact") end end end