diff --git a/src/main/java/de/deadlocker8/budgetmaster/templategroup/TemplateGroupService.java b/src/main/java/de/deadlocker8/budgetmaster/templategroup/TemplateGroupService.java index df9db5a2ec91651c2e2c30c3ef3cd46d53db0cb7..951f9988449b6d339b6f7215719b665ae6e28b1b 100644 --- a/src/main/java/de/deadlocker8/budgetmaster/templategroup/TemplateGroupService.java +++ b/src/main/java/de/deadlocker8/budgetmaster/templategroup/TemplateGroupService.java @@ -118,11 +118,18 @@ public class TemplateGroupService implements Resettable, AccessAllEntities<Templ for(TemplateGroup templateGroup : templateGroups) { - templatesGrouped.put(templateGroup, templateGroup.getReferringTemplates()); + templatesGrouped.put(templateGroup, getReferringTemplatesSorted(templateGroup)); } - templatesGrouped.put(defaultGroup, defaultGroup.getReferringTemplates()); + templatesGrouped.put(defaultGroup, getReferringTemplatesSorted(defaultGroup)); return templatesGrouped; } + + private List<Template> getReferringTemplatesSorted(TemplateGroup templateGroup) + { + final List<Template> referringTemplates = new ArrayList<>(templateGroup.getReferringTemplates()); + referringTemplates.sort((t1, t2) -> new NaturalOrderComparator().compare(t1.getTemplateName(), t2.getTemplateName())); + return referringTemplates; + } } diff --git a/src/test/java/de/deadlocker8/budgetmaster/unit/TemplateGroupServiceTest.java b/src/test/java/de/deadlocker8/budgetmaster/unit/TemplateGroupServiceTest.java index 7329a7355f7b4a5fd0dd3ca87e61be07f17675d1..7d6abb5f952411e784adaaef5afcce58c20edae0 100644 --- a/src/test/java/de/deadlocker8/budgetmaster/unit/TemplateGroupServiceTest.java +++ b/src/test/java/de/deadlocker8/budgetmaster/unit/TemplateGroupServiceTest.java @@ -74,7 +74,7 @@ class TemplateGroupServiceTest final Map<TemplateGroup, List<Template>> templatesGrouped = templateGroupService.getTemplatesByGroupedByTemplateGroup(); assertThat(templatesGrouped).hasSize(3) - .containsExactly(entry(templateGroup1, List.of(template1, template4)), + .containsExactly(entry(templateGroup1, List.of(template4, template1)), entry(templateGroup2, List.of(template3)), entry(templateGroupDefault, List.of(template2))); }