From f965507a785734e6427ab7a72a528a104c66c4b3 Mon Sep 17 00:00:00 2001 From: Sebastian Stehle Date: Thu, 24 Oct 2019 14:21:40 +0200 Subject: [PATCH] Role improvement. --- src/Squidex.Domain.Apps.Core.Model/Apps/Roles.cs | 5 +++++ .../Model/Apps/RolesTests.cs | 8 ++++++++ 2 files changed, 13 insertions(+) diff --git a/src/Squidex.Domain.Apps.Core.Model/Apps/Roles.cs b/src/Squidex.Domain.Apps.Core.Model/Apps/Roles.cs index fa717107a..bcdb9e226 100644 --- a/src/Squidex.Domain.Apps.Core.Model/Apps/Roles.cs +++ b/src/Squidex.Domain.Apps.Core.Model/Apps/Roles.cs @@ -95,6 +95,11 @@ namespace Squidex.Domain.Apps.Core.Apps throw new ArgumentException("Name already exists.", nameof(name)); } + if (IsDefault(name)) + { + return this; + } + return new Roles(inner.With(name, newRole)); } diff --git a/tests/Squidex.Domain.Apps.Core.Tests/Model/Apps/RolesTests.cs b/tests/Squidex.Domain.Apps.Core.Tests/Model/Apps/RolesTests.cs index d669af3ea..2a38e6a10 100644 --- a/tests/Squidex.Domain.Apps.Core.Tests/Model/Apps/RolesTests.cs +++ b/tests/Squidex.Domain.Apps.Core.Tests/Model/Apps/RolesTests.cs @@ -51,6 +51,14 @@ namespace Squidex.Domain.Apps.Core.Model.Apps Assert.Throws(() => roles_1.Add(role)); } + [Fact] + public void Should_do_nothing_if_role_to_add_is_default() + { + var roles_1 = roles_0.Add(Role.Developer); + + Assert.True(roles_1.CustomCount > 0); + } + [Fact] public void Should_update_role() {