From 310952c2d154120bdc29a03a4fe74b7aa1219ad8 Mon Sep 17 00:00:00 2001 From: Frank Date: Mon, 12 Jan 2026 16:36:35 +0100 Subject: [PATCH] got categories from wrong source --- backend/maintenance/api_maint_test.go | 8 ++++++-- backend/models/model_gsmaster.go | 14 ++++++-------- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/backend/maintenance/api_maint_test.go b/backend/maintenance/api_maint_test.go index 6a80b80..fdab599 100644 --- a/backend/maintenance/api_maint_test.go +++ b/backend/maintenance/api_maint_test.go @@ -96,8 +96,12 @@ func TestGetMDSkillCategories(t *testing.T) { ski := models.Skill{} categories, err := ski.GetSkillCategories() assert.NoError(t, err) - assert.LessOrEqual(t, 1, len(categories)) - assert.Equal(t, "Wissen", categories[0]) + assert.GreaterOrEqual(t, len(categories), 1, "Should have at least one skill category") + // Check that categories come from learning_skill_categories table + assert.Contains(t, categories, "Alltag", "Should contain 'Alltag' category") + assert.Contains(t, categories, "Wissen", "Should contain 'Wissen' category") + assert.Contains(t, categories, "Kampf", "Should contain 'Kampf' category") + assert.Contains(t, categories, "Schilde und Parierwaffen", "Should contain 'Schilde und Parierwaffen' category") } func TestGetMDSkills(t *testing.T) { diff --git a/backend/models/model_gsmaster.go b/backend/models/model_gsmaster.go index 72ecfda..365a97e 100644 --- a/backend/models/model_gsmaster.go +++ b/backend/models/model_gsmaster.go @@ -231,10 +231,9 @@ func (object *Skill) GetSkillCategories() ([]string, error) { var categories []string gameSystem := "midgard" - result := database.DB.Model(&Skill{}). - Where("game_system = ? and category is not null", gameSystem). - Distinct(). - Pluck("category", &categories) + result := database.DB.Model(&SkillCategory{}). + Where("game_system = ?", gameSystem). + Pluck("name", &categories) if result.Error != nil { return nil, result.Error @@ -376,10 +375,9 @@ func (object *Spell) GetSpellCategories() ([]string, error) { var categories []string gameSystem := "midgard" - result := database.DB.Model(&Spell{}). - Where("game_system=? and category is not null", gameSystem). - Distinct(). - Pluck("category", &categories) + result := database.DB.Model(&SpellSchool{}). + Where("game_system = ?", gameSystem). + Pluck("name", &categories) if result.Error != nil { return nil, result.Error