Light/Dark theming
This commit is contained in:
@@ -1,4 +1,4 @@
|
||||
namespace RpgRoller.Tests;
|
||||
namespace RpgRoller.Tests;
|
||||
|
||||
public sealed class ServiceAuthTests
|
||||
{
|
||||
@@ -74,4 +74,26 @@ public sealed class ServiceAuthTests
|
||||
var usernames = ServiceTestSupport.GetValue(service.GetUsernames(session));
|
||||
Assert.Equal(["amy", "bob", "zoe"], usernames);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void UpdateThemePreference_RequiresAuthAndPersistsSupportedTheme()
|
||||
{
|
||||
using var harness = ServiceTestSupport.CreateHarness();
|
||||
var service = harness.Service;
|
||||
|
||||
service.Register("theme-user", "Password123", "Theme User");
|
||||
var session = ServiceTestSupport.GetValue(service.Login("theme-user", "Password123")).SessionToken;
|
||||
|
||||
var unauthorized = service.UpdateThemePreference(string.Empty, "dark");
|
||||
var invalid = service.UpdateThemePreference(session, "sepia");
|
||||
var updated = service.UpdateThemePreference(session, "DARK");
|
||||
|
||||
Assert.False(unauthorized.Succeeded);
|
||||
Assert.False(invalid.Succeeded);
|
||||
Assert.True(updated.Succeeded);
|
||||
Assert.Equal("dark", ServiceTestSupport.GetValue(updated).ThemePreference);
|
||||
|
||||
var me = ServiceTestSupport.GetValue(service.GetMe(session));
|
||||
Assert.Equal("dark", me.User.ThemePreference);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user