defmodule Mv.Accounts.EmptyMemberCreationTest do use Mv.DataCase, async: true alias Mv.Accounts alias Mv.Membership describe "Empty Member Creation" do test "can create completely empty member" do {:ok, member} = Membership.create_member(%{}) assert member.id assert member.first_name == nil assert member.last_name == nil assert member.member_email == nil assert member.birth_date == nil assert member.paid == nil assert member.phone_number == nil assert member.join_date == nil assert member.exit_date == nil assert member.notes == nil assert member.city == nil assert member.street == nil assert member.house_number == nil assert member.postal_code == nil end test "user creation creates empty member automatically" do {:ok, user} = Accounts.create_user(%{email: "test@example.com"}) # Reload user to get the member_id user = Ash.reload!(user, domain: Mv.Accounts) assert user.member_id # Get the created member member = Ash.get!(Mv.Membership.Member, user.member_id, domain: Mv.Membership) # Member should be mostly empty except for email assert member.member_email == "test@example.com" assert member.first_name == nil assert member.last_name == nil assert member.birth_date == nil assert member.paid == nil assert member.phone_number == nil assert member.join_date == nil assert member.exit_date == nil assert member.notes == nil assert member.city == nil assert member.street == nil assert member.house_number == nil assert member.postal_code == nil end end end