Skip to content

Commit

Permalink
Add tests for dataset#details
Browse files Browse the repository at this point in the history
  • Loading branch information
vdegove committed Oct 8, 2024
1 parent 6a27f86 commit e5da3cc
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 1 deletion.
Original file line number Diff line number Diff line change
Expand Up @@ -257,7 +257,9 @@
</div>
<%= if Enum.count(@dataset.legal_owners_aom) > 0 || Enum.count(@dataset.legal_owners_region) > 0 do %>
<div class="pt-12">
<span class="dataset-metas-info-title"><%= dgettext("page-dataset-details", "Data under the responsibility of") %></span>
<span class="dataset-metas-info-title">
<%= dgettext("page-dataset-details", "Data under the responsibility of") %>
</span>
<div>
<%= legal_owners_link_tags_list(@conn, @dataset.legal_owners_aom, @dataset.legal_owners_region) %>
</div>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -893,6 +893,41 @@ defmodule TransportWeb.DatasetControllerTest do
]
end

describe "Legal owner display" do
test "dataset#details with no legal owners", %{conn: conn} do
dataset = insert(:dataset, is_active: true)

mock_empty_history_resources()

doc = conn |> get(dataset_path(conn, :details, dataset.slug)) |> html_response(200) |> Floki.parse_document!()
refute Floki.text(doc) =~ "Données sous la responsabilité de"
end

test "dataset#details with AOM legal owner", %{conn: conn} do
aom = insert(:aom, nom: "Angers Métropole", siren: "siren")
dataset = insert(:dataset, is_active: true, legal_owners_aom: [aom])

mock_empty_history_resources()

doc = conn |> get(dataset_path(conn, :details, dataset.slug)) |> html_response(200) |> Floki.parse_document!()
assert Floki.text(doc) =~ "Données sous la responsabilité de"
assert Floki.text(doc) =~ "Angers Métropole"
end

test "dataset#details with both Region and AOM legal owner", %{conn: conn} do
region = DB.Region |> Ecto.Query.where(insee: "52") |> DB.Repo.one!()
aom = insert(:aom, nom: "Angers Métropole", siren: "siren")
dataset = insert(:dataset, is_active: true, legal_owners_aom: [aom], legal_owners_region: [region])

mock_empty_history_resources()

doc = conn |> get(dataset_path(conn, :details, dataset.slug)) |> html_response(200) |> Floki.parse_document!()
assert Floki.text(doc) =~ "Données sous la responsabilité de"
# Region is displayed first
assert Floki.text(doc) =~ "Pays de la Loire, Angers Métropole"
end
end

defp dataset_page_title(content) do
content
|> Floki.parse_document!()
Expand Down

0 comments on commit e5da3cc

Please sign in to comment.