package store_test import ( "context" "testing" ) func TestLoeschfristEinstellungUpsert(t *testing.T) { s := openTestStore(t) ctx := context.Background() accID := testAccountID(t, s) e, err := s.UpsertLoeschfristEinstellung(ctx, accID, "personenbezogen", 90) if err != nil { t.Fatalf("UpsertLoeschfristEinstellung: %v", err) } if e.MaxTage != 90 { t.Fatalf("MaxTage = %d, want 90", e.MaxTage) } // Erneutes Upsert für dieselbe Datenklasse überschreibt statt zu duplizieren. if _, err := s.UpsertLoeschfristEinstellung(ctx, accID, "personenbezogen", 30); err != nil { t.Fatalf("UpsertLoeschfristEinstellung (Update): %v", err) } if _, err := s.UpsertLoeschfristEinstellung(ctx, accID, "besondere_kategorie", 14); err != nil { t.Fatalf("UpsertLoeschfristEinstellung: %v", err) } liste, err := s.ListLoeschfristEinstellungenForAccount(ctx, accID) if err != nil { t.Fatalf("ListLoeschfristEinstellungenForAccount: %v", err) } if len(liste) != 2 { t.Fatalf("got %d Einstellungen, want 2 (Upsert darf nicht duplizieren)", len(liste)) } for _, e := range liste { if e.DatenklasseID == "personenbezogen" && e.MaxTage != 30 { t.Fatalf("personenbezogen MaxTage = %d, want 30 nach Update", e.MaxTage) } } }