diff --git a/API/ROLAC.API.Tests/Services/DbSeederForm990Tests.cs b/API/ROLAC.API.Tests/Services/DbSeederForm990Tests.cs index 6b8932e..6d5afa8 100644 --- a/API/ROLAC.API.Tests/Services/DbSeederForm990Tests.cs +++ b/API/ROLAC.API.Tests/Services/DbSeederForm990Tests.cs @@ -46,6 +46,18 @@ public class DbSeederForm990Tests Assert.Single(groups, g => g.Name_en == "Professional Services"); } + [Fact] + public async Task SeedMinistries_SetsAdministrationToManagementGeneral_OthersProgram() + { + using var db = BuildDb(); + await DbSeeder.SeedMinistriesAsync(db); + + var admin = await db.Ministries.FirstAsync(m => m.Name_en == "Administration"); + var worship = await db.Ministries.FirstAsync(m => m.Name_en == "Worship"); + Assert.Equal("ManagementGeneral", admin.DefaultFunctionalClass); + Assert.Equal("Program", worship.DefaultFunctionalClass); + } + [Fact] public async Task SeedForm990Lines_CreatesCatalog_AndMapsKnownSubcategories() { diff --git a/API/ROLAC.API/Data/DbSeeder.cs b/API/ROLAC.API/Data/DbSeeder.cs index 316b7f5..b1141d4 100644 --- a/API/ROLAC.API/Data/DbSeeder.cs +++ b/API/ROLAC.API/Data/DbSeeder.cs @@ -250,7 +250,13 @@ public static class DbSeeder foreach (var (en, zh, sort) in MinistrySeed) { if (!await db.Ministries.AnyAsync(m => m.Name_en == en)) - db.Ministries.Add(new Ministry { Name_en = en, Name_zh = zh, SortOrder = sort, IsActive = true }); + db.Ministries.Add(new Ministry + { + Name_en = en, Name_zh = zh, SortOrder = sort, IsActive = true, + DefaultFunctionalClass = en == "Administration" + ? FunctionalClasses.ManagementGeneral + : FunctionalClasses.Program, + }); } await db.SaveChangesAsync(); }