From a29d5cb80a228b69abd55646bafe592fd02b2cdb Mon Sep 17 00:00:00 2001 From: Sebastian Stehle Date: Thu, 15 Feb 2018 18:14:30 +0100 Subject: [PATCH] Bugfix: Reference to master language changed after removing one language. --- src/Squidex.Domain.Apps.Core.Model/Apps/LanguagesConfig.cs | 3 +-- .../Model/Apps/LanguagesConfigTests.cs | 2 ++ 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/Squidex.Domain.Apps.Core.Model/Apps/LanguagesConfig.cs b/src/Squidex.Domain.Apps.Core.Model/Apps/LanguagesConfig.cs index 39292de6a..caae6499f 100644 --- a/src/Squidex.Domain.Apps.Core.Model/Apps/LanguagesConfig.cs +++ b/src/Squidex.Domain.Apps.Core.Model/Apps/LanguagesConfig.cs @@ -121,8 +121,7 @@ namespace Squidex.Domain.Apps.Core.Apps .ToImmutableDictionary(x => x.Language); var newMaster = - Master.Language != language ? - Master : + newLanguages.Values.FirstOrDefault(x => x.Language == Master.Language) ?? newLanguages.Values.FirstOrDefault(); return new LanguagesConfig(newLanguages, newMaster); diff --git a/tests/Squidex.Domain.Apps.Core.Tests/Model/Apps/LanguagesConfigTests.cs b/tests/Squidex.Domain.Apps.Core.Tests/Model/Apps/LanguagesConfigTests.cs index 578ae9b1b..622a9507f 100644 --- a/tests/Squidex.Domain.Apps.Core.Tests/Model/Apps/LanguagesConfigTests.cs +++ b/tests/Squidex.Domain.Apps.Core.Tests/Model/Apps/LanguagesConfigTests.cs @@ -139,6 +139,8 @@ namespace Squidex.Domain.Apps.Core.Model.Apps var config_0 = LanguagesConfig.Build(Language.DE, Language.IT, Language.RU); var config_1 = config_0.Remove(Language.IT); + Assert.Same(config_1.Master, config_1.OfType().FirstOrDefault(x => x.Language == Language.DE)); + config_1.ToList().ShouldBeEquivalentTo( new List {