Commit Graph

874 Commits

Author SHA1 Message Date
Dean Herbert
5a7d339cc8 Centralise and harden editor-ready-for-use check
Not only does this combine the check into one location, but it also adds
a check on the global `WorkingBeatmap` being updated, which is the only
way I can see the following failure happening:

```csharp
05:19:07     osu.Game.Tests: osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.TestAddAudioTrack
05:19:07       Failed TestAddAudioTrack [161 ms]
05:19:07       Error Message:
05:19:07        TearDown : System.NullReferenceException : Object reference not set to an instance of an object.
05:19:07       Stack Trace:
05:19:07       --TearDown
05:19:07        at osu.Game.Database.ModelManager`1.<>c__DisplayClass7_0.<AddFile>b__0(TModel managed) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07        at osu.Game.Database.ModelManager`1.<>c__DisplayClass8_0.<performFileOperation>b__0(Realm realm) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 49
05:19:07        at osu.Game.Database.RealmExtensions.Write(Realm realm, Action`1 function) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\RealmExtensions.cs:line 14
05:19:07        at osu.Game.Database.ModelManager`1.performFileOperation(TModel item, Action`1 operation) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 46
05:19:07        at osu.Game.Database.ModelManager`1.AddFile(TModel item, Stream contents, String filename) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07        at osu.Game.Screens.Edit.Setup.ResourcesSection.ChangeAudioTrack(FileInfo source) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Screens\Edit\Setup\ResourcesSection.cs:line 115
05:19:07        at osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.<TestAddAudioTrack>b__13_0() in C:\BuildAgent\work\ecd860037212ac52\osu.Game.Tests\Visual\Editing\TestSceneEditorBeatmapCreation.cs:line 101
05:19:07        at osu.Framework.Testing.Drawables.Steps.AssertButton.checkAssert()
05:19:07        at osu.Framework.Testing.Drawables.Steps.StepButton.PerformStep(Boolean userTriggered)
05:19:07        at osu.Framework.Testing.TestScene.runNextStep(Action onCompletion, Action`1 onError, Func`2 stopCondition)
```
2022-06-27 16:22:01 +09:00
Dean Herbert
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
Dean Herbert
f71f6302fd Remove unnecessary null casts 2022-06-24 14:50:11 +09:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Bartłomiej Dach
a8e1c5ba87
Fix remaining cases of incorrect GameplayState construction in tests
Manual attempts to initialise replaced by a new `TestGameplayState`
helper for ease of use.
2022-05-28 15:23:29 +02:00
Dean Herbert
2e21d75b10 Move metronome into own class and rename to avoid conflict with mod sounds 2022-05-20 17:30:04 +09:00
Dean Herbert
f22ff4e087 Remove editor animation toggling (replaced by overlap markers) 2022-05-12 19:28:56 +09:00
Dean Herbert
fda61943b0 Update distance snap test when cursor at centre of grid to be in line with expectations 2022-05-12 13:11:55 +09:00
Dean Herbert
fecf92e16f Update libraries to latest versions 2022-05-11 19:54:59 +09:00
Salman Ahmed
b119726b28 Reword test step 2022-05-06 15:38:38 +03:00
Dean Herbert
daed42513e Fix outdated test asserts 2022-05-06 18:44:25 +09:00
Dean Herbert
9fd98b8060 Also add test coverage of adjsuting the distance spacing multiplier 2022-05-05 18:49:12 +09:00
Dean Herbert
4fe23bced2 Update tests with new assumptions and a better snap implementation 2022-05-05 18:49:12 +09:00
Salman Ahmed
269e15c167 Add test coverage of distance spacing multiplier working with distance snap grid 2022-05-05 18:49:12 +09:00
Dean Herbert
de9b3d33eb Rename misleading DistanceSpacing variable 2022-05-05 17:08:09 +09:00
Dean Herbert
19cf9dc20b Merge branch 'snapping-tidy-distance' 2022-05-05 16:51:32 +09:00
Dean Herbert
977e6d8a80 Add xmldoc for IDistanceSnapProvider and related properties 2022-05-05 16:25:45 +09:00
Dean Herbert
f6fc926f1a Add xmldoc and rename methods in IPositionSnapProvider for legibility 2022-05-05 15:58:21 +09:00
Dean Herbert
faeefc5e18
Merge pull request #16576 from frenzibyte/osu-distance-spacing
Add "distance spacing" support in editor for osu! ruleset
2022-05-03 12:15:18 +09:00
Salman Ahmed
fef94d49f4 Revert "Convert data type of DistanceSpacing to float"
This reverts commit 7aaa88cac2.
2022-04-29 08:02:07 +03:00
Salman Ahmed
723d70be70 Change TestInputSingularWithBreak to reproduce case of pressing before second object 2022-04-29 05:38:14 +03:00
Salman Ahmed
7442ae283c Tidy up test cases a touch 2022-04-29 05:25:22 +03:00
Salman Ahmed
abb88b0907 Move distance spacing application to DistanceSnapGrid 2022-04-28 10:54:38 +03:00
Salman Ahmed
7aaa88cac2 Convert data type of DistanceSpacing to float 2022-04-28 10:24:36 +03:00
Salman Ahmed
2e8372fe90 Minor cleanup
Just from reading diff.
2022-04-28 07:14:43 +03:00
Salman Ahmed
a5defbe496 Keep distance spacing reset to one on test scenes with slider snapping for now 2022-04-28 06:44:50 +03:00
Salman Ahmed
835898dd30 Introduce DistancedHitObjectComposer and supersede OsuToolboxComposite 2022-04-28 06:44:50 +03:00
Salman Ahmed
8ed39009fd Encapsulate distance spacing control handling to a "distance toolbox composite"
Encapsulated in a way which can allow further extensibility for the
right-side area of toolboxes.
2022-04-24 08:33:03 +03:00
Salman Ahmed
70a93c0e7e Move DistanceSpacingMultiplier bindable to its own IDistanceSnapProvider interface 2022-04-24 08:33:00 +03:00
Salman Ahmed
4f8f27a58b Merge branch 'master' into osu-distance-spacing 2022-04-24 05:23:30 +03:00
Salman Ahmed
610d61dce9 Fix TestSceneSliderApplication not applying legacy skin transformer 2022-04-23 03:34:05 +03:00
Salman Ahmed
858c8f927f Attach comment explaining purpose of CallBase 2022-04-20 00:27:02 +03:00
Salman Ahmed
fd20c2bdcd Change circle/overlay sprite fields to protected for better test assertion 2022-04-20 00:24:28 +03:00
Salman Ahmed
813dc2dd78 Fix wrong prefix for default priority lookup in test 2022-04-19 19:46:29 +03:00
Salman Ahmed
f92a41b6c3 Replace local TestSkin implementation with simplified Moq setups 2022-04-19 08:04:13 +03:00
Salman Ahmed
8d0dd3961e Add failing test cases 2022-04-19 07:12:07 +03:00
Dean Herbert
ee8451c8ca
Merge branch 'master' into osu-diff-calc-max-combo 2022-04-04 14:20:44 +09:00
Dean Herbert
de625125d6 Rename magnetised mod attraction strength property to match new naming 2022-04-01 13:03:48 +09:00
Dean Herbert
a987cda30d Rename "Aim Assist" to "Magnetised" to better suit the mod's behaviour
As proposed in https://github.com/ppy/osu/discussions/17375.
2022-04-01 12:15:52 +09:00
Dan Balasescu
32e55e7d78 Merge branch 'master' into osu-diff-calc-max-combo 2022-03-31 15:08:08 +09:00
Dean Herbert
0cac935939 Shorten class name of ModCreatedReplayUser 2022-03-31 11:34:23 +09:00
Dean Herbert
4b2c01a8c1 Bring all mod implementations up-to-date 2022-03-29 16:59:03 +09:00
Dean Herbert
5fb51b578f Update dependencies
Mainly for a `Clowd.Squirrel` bump to fix https://github.com/ppy/osu/discussions/17190.
2022-03-09 19:09:51 +09:00
Bartłomiej Dach
a1786f62d7
Fix test failure due to attempting to set non-present divisor
With the latest changes permitting fully custom beat snapping, the 1/3
snap divisor isn't immediately available in editor, requiring a switch
to "triplets" mode first.
2022-02-27 23:10:22 +01:00
Shivam
1a7a160f0a Update vscode launch.json files for all other projects 2022-02-25 14:28:54 +01:00
Dean Herbert
054ed546e3 Fix intermittent failures in remaining test method 2022-02-23 16:56:50 +09:00
Dean Herbert
a6b6644c2e Replace LINQ queries with recommendations 2022-02-23 16:22:13 +09:00
Dean Herbert
9e279c3ebc Fix completely incorrect judgement specification 2022-02-22 14:37:52 +09:00
Dean Herbert
91acc9eec6 Remove checks which are still going to occasionally fail due to pooling 2022-02-22 14:36:08 +09:00
Dean Herbert
0d56693b7a Fix test not always checking the final bonus value
Due to the previous logic not waiting until the spinner had completed,
there could be false negatives as the check runs too early, with a
potential additional bonus spin occurring afterwards.
2022-02-22 14:28:15 +09:00