public void TestOD(Mods mods) { var diffCalc = new DifficultyCalculator(); var beatmap = new Beatmap(); var resultValues = new List <float>(); for (var i = 10; i >= 0; i--) { beatmap.OverallDifficulty = i; var odResult = diffCalc.ApplyMods(beatmap, mods)["OD"]; resultValues.Add((float)Math.Round(odResult, 2)); } CollectionAssert.AreEqual(OD_VALUES[mods], resultValues); }
private void InitListView() { //listview ListViewBeatmaps.FullRowSelect = true; ListViewBeatmaps.AllowColumnReorder = true; ListViewBeatmaps.Sorting = SortOrder.Descending; ListViewBeatmaps.UseHotItem = true; ListViewBeatmaps.UseTranslucentHotItem = true; ListViewBeatmaps.UseFiltering = true; ListViewBeatmaps.UseNotifyPropertyChanged = true; ListViewBeatmaps.ShowItemCountOnGroups = true; ListViewBeatmaps.CellEditActivation = ObjectListView.CellEditActivateMode.DoubleClick; var format = "{0:0.##}"; column_ar.AspectToStringFormat = format; column_cs.AspectToStringFormat = format; column_od.AspectToStringFormat = format; column_hp.AspectToStringFormat = format; column_stars.AspectGetter = rowObject => { if (rowObject is Beatmap beatmap) { return(beatmap.Stars(_currentPlayMode, _currentMods)); } return(null); }; column_ar.AspectGetter = rowObject => { if (rowObject is Beatmap beatmap) { return(_difficultyCalculator.ApplyMods(beatmap, _currentMods).Ar); } return(null); }; column_od.AspectGetter = rowObject => { if (rowObject is Beatmap beatmap) { return(_difficultyCalculator.ApplyMods(beatmap, _currentMods).Od); } return(null); }; column_cs.AspectGetter = rowObject => { if (rowObject is Beatmap beatmap) { return(_difficultyCalculator.ApplyMods(beatmap, _currentMods).Cs); } return(null); }; column_hp.AspectGetter = rowObject => { if (rowObject is Beatmap beatmap) { return(_difficultyCalculator.ApplyMods(beatmap, _currentMods).Hp); } return(null); }; LastPlayed.AspectToStringConverter = delegate(object cellValue) { if (cellValue == null) { return("Never"); } var val = (DateTime)cellValue; return(val > d ? $"{val}" : "Never"); }; var dropsink = new RearrangingDropSink(); dropsink.CanDropBetween = false; dropsink.CanDropOnItem = false; dropsink.CanDropOnSubItem = false; dropsink.CanDropOnBackground = true; dropsink.ModelDropped += DropsinkOnModelDropped; this.ListViewBeatmaps.DropSink = dropsink; }