Show full campaign log roll summaries

This commit is contained in:
2026-04-03 23:04:35 +02:00
parent b26d58cea4
commit 7248b60395
2 changed files with 4 additions and 11 deletions

View File

@@ -168,7 +168,7 @@ public sealed class ServiceSkillRollTests
var d6Entry = Assert.Single(ServiceTestSupport.GetValue(service.GetCampaignLogPage(gmSession, d6Campaign.Id, limit: 5)).Entries); var d6Entry = Assert.Single(ServiceTestSupport.GetValue(service.GetCampaignLogPage(gmSession, d6Campaign.Id, limit: 5)).Entries);
var d6Badges = Assert.IsType<string[]>(d6Entry.EventBadges); var d6Badges = Assert.IsType<string[]>(d6Entry.EventBadges);
Assert.Equal("w6", Assert.Single(d6Badges)); Assert.Equal("w6", Assert.Single(d6Badges));
Assert.Equal("6, 4, 6, ...", d6Entry.SummaryText); Assert.Equal("6, 4, 6, 6, 2", d6Entry.SummaryText);
var dndCampaign = ServiceTestSupport.GetValue(service.CreateCampaign(gmSession, "Dnd Special", "dnd5e")); var dndCampaign = ServiceTestSupport.GetValue(service.CreateCampaign(gmSession, "Dnd Special", "dnd5e"));
var dndCharacter = ServiceTestSupport.GetValue(service.CreateCharacter(ownerSession, "Natural Hero", dndCampaign.Id)); var dndCharacter = ServiceTestSupport.GetValue(service.CreateCharacter(ownerSession, "Natural Hero", dndCampaign.Id));

View File

@@ -1376,11 +1376,7 @@ public sealed class GameService : IGameService
if (dice.Any(die => IsRolemasterDieKind(die.Kind))) if (dice.Any(die => IsRolemasterDieKind(die.Kind)))
return BuildRolemasterCompactLogSummary(dice); return BuildRolemasterCompactLogSummary(dice);
var preview = string.Join(", ", dice.Take(3).Select(die => die.Roll.ToString())); return string.Join(", ", dice.Select(die => die.Roll.ToString()));
if (dice.Count > 3)
preview = $"{preview}, ...";
return preview;
} }
private static string BuildRolemasterCompactLogSummary(IReadOnlyList<RollDieResult> dice) private static string BuildRolemasterCompactLogSummary(IReadOnlyList<RollDieResult> dice)
@@ -1407,14 +1403,11 @@ public sealed class GameService : IGameService
if (dice.Any(die => string.Equals(die.Kind, RollDieKinds.RolemasterStandard, StringComparison.Ordinal))) if (dice.Any(die => string.Equals(die.Kind, RollDieKinds.RolemasterStandard, StringComparison.Ordinal)))
{ {
var preview = string.Join(" + ", dice.Take(3).Select(die => die.Roll.ToString())); var preview = string.Join(" + ", dice.Select(die => die.Roll.ToString()));
if (dice.Count > 3)
preview = $"{preview} + ...";
return $"{preview} | rolemaster"; return $"{preview} | rolemaster";
} }
return string.Join(", ", dice.Take(3).Select(die => die.Roll.ToString())); return string.Join(", ", dice.Select(die => die.Roll.ToString()));
} }
private static bool IsRolemasterDieKind(string? kind) private static bool IsRolemasterDieKind(string? kind)