From 9fc8c3b74a790207b47fe7bda73c23b88d886774 Mon Sep 17 00:00:00 2001 From: carla Date: Tue, 24 Feb 2026 09:36:42 +0100 Subject: [PATCH] test: updated for country --- .../membership/import/header_mapper_test.exs | 47 +++++++++++++++---- .../components/sort_header_component_test.exs | 2 + .../live/global_settings_live_config_test.exs | 4 +- test/mv_web/live/import_live_test.exs | 8 ++-- .../index_member_fields_display_test.exs | 1 + test/mv_web/member_live/index_test.exs | 1 + 6 files changed, 49 insertions(+), 14 deletions(-) diff --git a/test/mv/membership/import/header_mapper_test.exs b/test/mv/membership/import/header_mapper_test.exs index 5e7efbd..2f4fcad 100644 --- a/test/mv/membership/import/header_mapper_test.exs +++ b/test/mv/membership/import/header_mapper_test.exs @@ -207,9 +207,15 @@ defmodule Mv.Membership.Import.HeaderMapperTest do "Email", "First Name", "Last Name", + "Join Date", + "Exit Date", + "Notes", + "Country", + "City", "Street", + "House Number", "Postal Code", - "City" + "Membership Fee Start Date" ] assert {:ok, %{member: member_map, custom: custom_map, unknown: unknown}} = @@ -218,15 +224,34 @@ defmodule Mv.Membership.Import.HeaderMapperTest do assert member_map[:email] == 0 assert member_map[:first_name] == 1 assert member_map[:last_name] == 2 - assert member_map[:street] == 3 - assert member_map[:postal_code] == 4 - assert member_map[:city] == 5 + assert member_map[:join_date] == 3 + assert member_map[:exit_date] == 4 + assert member_map[:notes] == 5 + assert member_map[:country] == 6 + assert member_map[:city] == 7 + assert member_map[:street] == 8 + assert member_map[:house_number] == 9 + assert member_map[:postal_code] == 10 + assert member_map[:membership_fee_start_date] == 11 assert custom_map == %{} assert unknown == [] end test "maps German member field variants" do - headers = ["E-Mail", "Vorname", "Nachname", "Straße", "PLZ", "Stadt"] + headers = [ + "E-Mail", + "Vorname", + "Nachname", + "Beitrittsdatum", + "Austrittsdatum", + "Notizen", + "Land", + "Stadt", + "Straße", + "Hausnummer", + "PLZ", + "Beitragsbeginn" + ] assert {:ok, %{member: member_map, custom: custom_map, unknown: unknown}} = HeaderMapper.build_maps(headers, []) @@ -234,9 +259,15 @@ defmodule Mv.Membership.Import.HeaderMapperTest do assert member_map[:email] == 0 assert member_map[:first_name] == 1 assert member_map[:last_name] == 2 - assert member_map[:street] == 3 - assert member_map[:postal_code] == 4 - assert member_map[:city] == 5 + assert member_map[:join_date] == 3 + assert member_map[:exit_date] == 4 + assert member_map[:notes] == 5 + assert member_map[:country] == 6 + assert member_map[:city] == 7 + assert member_map[:street] == 8 + assert member_map[:house_number] == 9 + assert member_map[:postal_code] == 10 + assert member_map[:membership_fee_start_date] == 11 assert custom_map == %{} assert unknown == [] end diff --git a/test/mv_web/components/sort_header_component_test.exs b/test/mv_web/components/sort_header_component_test.exs index bdde4ae..d8247dc 100644 --- a/test/mv_web/components/sort_header_component_test.exs +++ b/test/mv_web/components/sort_header_component_test.exs @@ -24,6 +24,7 @@ defmodule MvWeb.Components.SortHeaderComponentTest do :house_number, :postal_code, :city, + :country, :join_date ] @@ -100,6 +101,7 @@ defmodule MvWeb.Components.SortHeaderComponentTest do assert has_element?(view, "[data-testid='street'] .opacity-40") assert has_element?(view, "[data-testid='house_number'] .opacity-40") assert has_element?(view, "[data-testid='postal_code'] .opacity-40") + assert has_element?(view, "[data-testid='country'] .opacity-40") assert has_element?(view, "[data-testid='join_date'] .opacity-40") end diff --git a/test/mv_web/live/global_settings_live_config_test.exs b/test/mv_web/live/global_settings_live_config_test.exs index 9ac75fd..c82f292 100644 --- a/test/mv_web/live/global_settings_live_config_test.exs +++ b/test/mv_web/live/global_settings_live_config_test.exs @@ -45,11 +45,11 @@ defmodule MvWeb.GlobalSettingsLiveConfigTest do {:ok, view, _html} = live(conn, ~p"/admin/import") # Generate CSV with 501 rows (exceeding custom limit of 500) - header = "first_name;last_name;email;street;postal_code;city\n" + header = "first_name;last_name;email;country;city;street;postal_code\n" rows = for i <- 1..501 do - "Row#{i};Last#{i};email#{i}@example.com;Street#{i};12345;City#{i}\n" + "Row#{i};Last#{i};email#{i}@example.com;Country#{i};City#{i};Street#{i};12345\n" end large_csv = header <> Enum.join(rows) diff --git a/test/mv_web/live/import_live_test.exs b/test/mv_web/live/import_live_test.exs index 48fbb11..35edd23 100644 --- a/test/mv_web/live/import_live_test.exs +++ b/test/mv_web/live/import_live_test.exs @@ -136,10 +136,10 @@ defmodule MvWeb.ImportLiveTest do test "error list is capped and truncation message is shown", %{conn: conn} do {:ok, view, _html} = live(conn, ~p"/admin/import") - header = "first_name;last_name;email;street;postal_code;city\n" + header = "first_name;last_name;email;country;city;street;postal_code\n" invalid_rows = - for i <- 1..100, do: "Row#{i};Last#{i};;Street#{i};12345;City#{i}\n" + for i <- 1..100, do: "Row#{i};Last#{i};;Country#{i};City#{i};Street#{i};12345\n" upload_csv_file(view, header <> Enum.join(invalid_rows), "large_invalid.csv") submit_import(view) @@ -154,11 +154,11 @@ defmodule MvWeb.ImportLiveTest do test "row limit is enforced (1001 rows rejected)", %{conn: conn} do {:ok, view, _html} = live(conn, ~p"/admin/import") - header = "first_name;last_name;email;street;postal_code;city\n" + header = "first_name;last_name;email;country;city;street;postal_code\n" rows = for i <- 1..1001 do - "Row#{i};Last#{i};email#{i}@example.com;Street#{i};12345;City#{i}\n" + "Row#{i};Last#{i};email#{i}@example.com;Country#{i};City#{i};Street#{i};12345\n" end upload_csv_file(view, header <> Enum.join(rows), "too_many_rows.csv") diff --git a/test/mv_web/member_live/index_member_fields_display_test.exs b/test/mv_web/member_live/index_member_fields_display_test.exs index fe33bb4..f3dadac 100644 --- a/test/mv_web/member_live/index_member_fields_display_test.exs +++ b/test/mv_web/member_live/index_member_fields_display_test.exs @@ -16,6 +16,7 @@ defmodule MvWeb.MemberLive.IndexMemberFieldsDisplayTest do house_number: "123", postal_code: "12345", city: "Berlin", + country: "Germany", join_date: ~D[2020-01-15] }, actor: system_actor diff --git a/test/mv_web/member_live/index_test.exs b/test/mv_web/member_live/index_test.exs index 53a2815..5246d80 100644 --- a/test/mv_web/member_live/index_test.exs +++ b/test/mv_web/member_live/index_test.exs @@ -162,6 +162,7 @@ defmodule MvWeb.MemberLive.IndexTest do :house_number, :postal_code, :city, + :country, :join_date ]