diff --git a/osu.Game.Tests/NonVisual/Filtering/FilterMatchingTest.cs b/osu.Game.Tests/NonVisual/Filtering/FilterMatchingTest.cs index eeca60a314..62486d8d5b 100644 --- a/osu.Game.Tests/NonVisual/Filtering/FilterMatchingTest.cs +++ b/osu.Game.Tests/NonVisual/Filtering/FilterMatchingTest.cs @@ -146,6 +146,30 @@ namespace osu.Game.Tests.NonVisual.Filtering Assert.AreEqual(!inclusive, carouselItem.Filtered.Value); } + [Test] + [TestCase(true)] + [TestCase(false)] + public void TestCriteriaMatchingInvertedRange(bool inverted) + { + var exampleBeatmapInfo = getExampleBeatmap(); + var criteria = new FilterCriteria + { + Ruleset = new RulesetInfo { OnlineID = 6 }, + AllowConvertedBeatmaps = true, + StarDifficulty = new FilterCriteria.OptionalRange + { + Max = 4.0d, + Min = 4.0d, + IsLowerInclusive = true, + IsUpperInclusive = true, + InvertRange = inverted + } + }; + var carouselItem = new CarouselBeatmap(exampleBeatmapInfo); + carouselItem.Filter(criteria); + Assert.AreEqual(inverted, carouselItem.Filtered.Value); + } + [Test] [TestCase("artist", false)] [TestCase("artist title author", false)]