diff --git a/osu.Game.Tests/Editing/Checks/CheckPreviewTimeTest.cs b/osu.Game.Tests/Editing/Checks/CheckPreviewTimeTest.cs index 59ff8d4923..2b7d37dc81 100644 --- a/osu.Game.Tests/Editing/Checks/CheckPreviewTimeTest.cs +++ b/osu.Game.Tests/Editing/Checks/CheckPreviewTimeTest.cs @@ -67,7 +67,7 @@ namespace osu.Game.Tests.Editing.Checks Assert.That(issues, Has.Count.EqualTo(1)); Assert.That(issues.Single().Template is CheckPreviewTime.IssueTemplatePreviewTimeConflict); - Assert.That(issues.Single().Arguments.Single().ToString() == "Test1"); + Assert.That(issues.Single().Arguments.FirstOrDefault()?.ToString() == "Test1"); } private void setNoPreviewTimeBeatmap() diff --git a/osu.Game/Rulesets/Edit/Checks/CheckPreviewTime.cs b/osu.Game/Rulesets/Edit/Checks/CheckPreviewTime.cs index 4fad8c0af6..05e49eba84 100644 --- a/osu.Game/Rulesets/Edit/Checks/CheckPreviewTime.cs +++ b/osu.Game/Rulesets/Edit/Checks/CheckPreviewTime.cs @@ -36,7 +36,7 @@ namespace osu.Game.Rulesets.Edit.Checks if (diff.Metadata.PreviewTime != previewTime) { - yield return new IssueTemplatePreviewTimeConflict(this).Create(diff.DifficultyName); + yield return new IssueTemplatePreviewTimeConflict(this).Create(diff.DifficultyName, previewTime, diff.Metadata.PreviewTime); } } } @@ -44,11 +44,15 @@ namespace osu.Game.Rulesets.Edit.Checks public class IssueTemplatePreviewTimeConflict : IssueTemplate { public IssueTemplatePreviewTimeConflict(ICheck check) - : base(check, IssueType.Warning, "Audio preview time conflicts with {0} diff") + : base(check, IssueType.Warning, "Audio preview time {1} doesn't match \"{0}\"'s preview time {2}") { } - public Issue Create(string diffName) => new Issue(this, diffName); + public Issue Create(string diffName, int originalTime, int conflictTime) => + // preview time should show (not set) when it is not set. + new Issue(this, diffName, + originalTime != -1 ? $"({originalTime:N0})" : "(not set)", + conflictTime != -1 ? $"({conflictTime:N0})" : "(not set)"); } public class IssueTemplateHasNoPreviewTime : IssueTemplate