Files
Umbraco-CMS/tests/Umbraco.Tests.Integration/Umbraco.Core/Services/MetricsConsentServiceTest.cs
Nikolaj Geisle d5809da665 V14: Move towards get guid (#15889)
* Implement using keymap for member

* Remove current usages of GetUserById

* User userId resolver to resolve user key

* Refactor user repository to use GUID not int

* Add happy path test

* Remove user in cache when user gets updated

* Use await in async method

* Fix up according to review

* Update IMetricsConsentService.cs to have async method

* Fix according to review

* Fix more according to comments

* Revert "Fix up according to review"

This reverts commit a75acaaa

* Get current backoffice user from method

* Update user repository delete functionality

* Fix up more test

* Try to get user by id if key fails

* Add user key as required claim

* Fix tests

* Don't set claim in BackofficeController

* Create constant for the Sub claim

---------

Co-authored-by: kjac <kja@umbraco.dk>
2024-04-11 13:53:34 +02:00

40 lines
1.3 KiB
C#

using NUnit.Framework;
using Umbraco.Cms.Core.Models;
using Umbraco.Cms.Core.Services;
using Umbraco.Cms.Tests.Common.Testing;
using Umbraco.Cms.Tests.Integration.Testing;
namespace Umbraco.Cms.Tests.Integration.Umbraco.Core.Services;
[TestFixture]
[UmbracoTest(Database = UmbracoTestOptions.Database.NewSchemaPerTest)]
public class MetricsConsentServiceTest : UmbracoIntegrationTest
{
private IMetricsConsentService MetricsConsentService => GetRequiredService<IMetricsConsentService>();
private IKeyValueService KeyValueService => GetRequiredService<IKeyValueService>();
[Test]
[TestCase(TelemetryLevel.Minimal)]
[TestCase(TelemetryLevel.Basic)]
[TestCase(TelemetryLevel.Detailed)]
public async Task Can_Store_Consent(TelemetryLevel level)
{
await MetricsConsentService.SetConsentLevelAsync(level);
var actual = MetricsConsentService.GetConsentLevel();
Assert.IsNotNull(actual);
Assert.AreEqual(level, actual);
}
[Test]
public async Task Enum_Stored_as_string()
{
await MetricsConsentService.SetConsentLevelAsync(TelemetryLevel.Detailed);
var stringValue = KeyValueService.GetValue(Cms.Core.Services.MetricsConsentService.Key);
Assert.AreEqual("Detailed", stringValue);
}
}