Bartłomiej Dach
6c819cba02
Add test coverage for regressed scenarios
2022-11-04 19:46:23 +01:00
Bartłomiej Dach
f787da892b
Merge branch 'master' into grid-momentary-shortcuts
2022-10-26 21:30:24 +02:00
Dean Herbert
cab9a1c012
Add test coverage of distance snap grid failing visually
2022-10-26 13:10:54 +09:00
Dean Herbert
5f10b81af1
Move distance snap grid test cursor behind grid to better visualise centre-points
2022-10-26 13:10:54 +09:00
Dean Herbert
cbcebfa130
Remove switch back to selection tool to simplify test flow
2022-10-26 12:18:56 +09:00
Dean Herbert
16ef0b09e8
Add test coverage of momentary toggles
2022-10-25 14:36:35 +09:00
Dean Herbert
a9755295e4
Update tests in line with new behaviour
2022-10-25 14:32:08 +09:00
Dean Herbert
6608ada925
Fix test failures due to missing colour provider dependency
2022-10-13 17:05:11 +09:00
OliBomby
b22e201289
Fixed stream convert float precision edge case
2022-10-08 23:43:23 +02:00
Dean Herbert
a15ea71aed
Merge branch 'master' into fix-merge-crash
2022-08-31 13:28:57 +09:00
Dean Herbert
706ac3e44f
Merge pull request #19982 from OliBomby/fix-illegal-merge
...
Fixed 0 length merge being allowed
2022-08-30 12:28:18 +09:00
OliBomby
ff2eac79d1
fix same time merge causing crash
2022-08-27 17:43:32 +02:00
OliBomby
16e0ec2f88
Fixed 0 length merge being allowed
2022-08-27 13:53:50 +02:00
Dean Herbert
90ff0864c0
Merge branch 'master' into no-gameplay-clock-editor-offset
2022-08-26 20:25:21 +09:00
Dean Herbert
69cbc0125b
Merge pull request #19964 from nanashi-1/merge-hitobject-hitsound-fix
...
Fix hitobjects merge feature in editor not adding any hitsounds
2022-08-26 20:05:02 +09:00
Dean Herbert
cb1c4a1bb1
Move sample checks to be inline in other existing tests
2022-08-26 19:18:15 +09:00
Dean Herbert
03dcfed384
Merge branch 'master' into slider-splitter
2022-08-26 19:10:33 +09:00
Dean Herbert
4b72e55770
Fix various test scenes not adding EditorClock
to the draw hierarchy
2022-08-26 18:08:43 +09:00
nanashi-1
78717956d5
add visual test
2022-08-26 16:55:18 +08:00
nanashi-1
16fee7ac1c
add visual test
2022-08-25 19:31:47 +08:00
OliBomby
631ea9a3ed
added a gap between objects and made it theoretically possible to retain sample control point
2022-08-23 23:29:59 +02:00
OliBomby
7732fb21d5
fix code quality
2022-08-20 16:09:02 +02:00
OliBomby
614ae815c0
Added tests for making sure flipping and rotating retains perfect control point type
2022-08-20 15:57:39 +02:00
OliBomby
91e6f4c4ee
fix TestPerfectCurveChangeToBezier
2022-08-19 19:31:47 +02:00
OliBomby
d1519343f6
Improved visual tests for slider splitting
2022-08-19 18:29:01 +02:00
OliBomby
89eb0a4079
Added TestScene for slider splitting
2022-08-19 01:10:54 +02:00
OliBomby
d021218d78
added test for objects which cant be merged
2022-08-16 23:05:35 +02:00
OliBomby
d140e0df14
remove nullable disable annotation
2022-08-15 21:15:23 +02:00
OliBomby
7c2ada9b20
Revert "remove copyright notice from new file"
...
This reverts commit b5e5411348
.
2022-08-15 21:11:06 +02:00
OliBomby
b5e5411348
remove copyright notice from new file
2022-08-15 18:07:55 +02:00
OliBomby
d261be8734
added visual tests
2022-08-15 17:19:04 +02:00
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
Dan Balasescu
f8830c6850
Automated #nullable processing
2022-06-17 16:37:17 +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
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
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
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
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
Salman Ahmed
8b30c847f9
Update outdated bindable casts in tests
2022-02-16 08:39:08 +03:00
Salman Ahmed
0992bec2c8
Change "distance spacing" multipler type to double
...
Avoids losing precision on initial load, causing an unnecessary
hash change in `EditorChangeHandler`.
Resolves test failures in `TestSceneEditorChangeStates`
(https://github.com/ppy/osu/runs/5192493482?check_suite_focus=true ).
2022-02-16 03:28:12 +03:00
Salman Ahmed
500322ff21
Update failing snap test scenes
2022-02-15 02:21:53 +03:00
Salman Ahmed
528dc03b8c
Expose distance spacing in IPositionSnapProvider
for updating distance grid
...
Alternate method is to expose a `SnapDistancesChanged` event in
`IPositionSnapProvider` instead, but I chose this way as an analogue to
`IBeatSnapProvider.BeatDivisor`, which might even make sense to be
exposed as `BindableBeatDivisor` instead of caching that separately.
2022-02-15 02:21:53 +03:00
Dean Herbert
deaff340d2
Add test coverage of saving velocity
2022-01-24 19:43:18 +09:00
Dean Herbert
7f65f3a47f
Remove all usage of BaseDifficulty
(and access Difficulty
instead)
2022-01-18 22:57:39 +09:00
Dean Herbert
b5f670cc5b
Add far too many fixes for ruleset non-nullable requirements
2022-01-12 23:24:11 +09:00
Bartłomiej Dach
d2f44813dd
Add test coverage for slider snapping when adding/removing control points
2022-01-07 15:47:02 +01:00
Bartłomiej Dach
814b318a10
Add test coverage of slider end snapping behaviour
2022-01-07 15:47:02 +01:00
Bartłomiej Dach
29b42402a3
Add failing test for drag after placement moving last placed point sometimes
2021-12-23 09:06:03 +01:00
Bartłomiej Dach
ef20182a34
Rewrite test to check selection state during and after new control point placement
2021-12-22 10:57:39 +01:00
Bartłomiej Dach
307d3709e0
Add failing test steps for selection behaviour on new point creation
2021-12-22 09:32:38 +01:00
Bartłomiej Dach
9973db3981
Add failing test steps for right click behaviour
2021-12-22 08:40:17 +01:00
Bartłomiej Dach
adfadc13f7
Add test case for dragging selection including slider head
2021-12-21 12:34:55 +01:00
Bartłomiej Dach
b311308ada
Add more comprehensive test of multiple selection
2021-12-20 22:41:24 +01:00
Bartłomiej Dach
cdb587d956
Add more test steps for input handling edge cases
2021-12-20 21:51:56 +01:00
Bartłomiej Dach
d2417beeac
Implement drag operation for multiple path control points
2021-12-20 21:29:57 +01:00
Bartłomiej Dach
fbba8293c7
Add failing test for expected multiple path drag UX
2021-12-20 21:01:11 +01:00
Bartłomiej Dach
8aa04864ce
Add support for converting sliders with repeats to streams
2021-11-11 23:25:49 +01:00
Bartłomiej Dach
0cd3f98598
Ensure samples & sample points are carried over during conversion
2021-11-11 21:43:06 +01:00
Bartłomiej Dach
d9494d405e
Add test coverage for slider-to-stream conversion
2021-11-11 21:01:30 +01:00
smoogipoo
bc37cb6f43
Merge branch 'master' into no-more-difficulty-control-points-info
2021-10-08 18:41:17 +09:00
Dean Herbert
b339c149d8
Copy BaseDifficulty
to Beatmap<T>
and move all write operations across
2021-10-06 15:10:45 +09:00
Dean Herbert
a92d499d7a
Convert usages of BeatmapDifficulty
to IBeatmapDifficultyInfo
2021-10-01 16:55:50 +09:00
Dean Herbert
46bafb6252
Merge branch 'master' into no-more-difficulty-control-points-info
2021-09-28 13:53:56 +09:00
Dean Herbert
4cdce69f7e
Update test to match test beamap data
2021-09-21 23:45:03 +09:00
Bartłomiej Dach
d15bd5a15e
Store grid size back to beatmap on change
2021-09-20 20:39:39 +02:00
Bartłomiej Dach
0d7dac03f4
Start with largest grid size
2021-09-20 20:34:22 +02:00
Bartłomiej Dach
fe21577f11
Adjust grid snap in line with new logic
2021-09-20 20:32:34 +02:00
Bartłomiej Dach
4e094b2127
Implement grid size toggling matching stable
2021-09-19 20:26:02 +02:00
Bartłomiej Dach
c403e628dd
Add test coverage for distance/rectangular grid exclusivity
2021-09-19 18:08:34 +02:00
Dean Herbert
d4e5a612ea
Update IPositionalSnapProvider
to take a HitObject
as reference, rather than raw time
...
This allows fetching the correct `DifficultyControlPoint` from the
hitobject. Nothing more.
2021-09-03 17:11:12 +09:00
Dean Herbert
e15198f077
Update missed tests
2021-08-26 13:47:10 +09:00
Dean Herbert
6dcd9427ac
Remove bindable usage in PathControlPoint
...
This is quite a breaking change, but I think it is beneficial due to the large amount of usage of this class.
I originally intended just to remove the allocations of the two delegates handling the `Changed` flow internally, but as nothing was really using the bindables for anything more than a general "point has changed" case, this felt like a better direction.
2021-08-26 12:33:53 +09:00
Naxess
53c0298b5e
Add too short spinners check and tests
2021-07-13 10:51:40 +02:00
Naxess
fec9448301
Add too short sliders check and tests
2021-07-13 10:50:41 +02:00
Dean Herbert
6c3d2315d0
Merge pull request #13606 from Naxesss/low-diff-checks
...
Add low difficulty spacing checks
2021-06-22 16:29:37 +09:00
Naxess
629c98e6a0
Add time distance equality tests
2021-06-21 15:34:11 +02:00
Naxess
e11139eadf
Add low difficulty overlap tests
...
Moq is introduced to mock sliders' end time/position. This is already used similarly in `osu.Game.Tests`.
2021-06-21 15:33:50 +02:00
Bartłomiej Dach
fe48ddfee3
Also cover slider animation disable
2021-06-18 16:04:11 +02:00
Bartłomiej Dach
e2a370f602
Add coverage for hit circle fade-out duration
2021-06-18 16:04:11 +02:00
Bartłomiej Dach
69c1cd5b34
Add failing test case for hit circle animations disable
2021-06-18 16:04:11 +02:00
Dean Herbert
a96603f025
Merge pull request #12782 from smoogipoo/rework-hitobject-blueprints
...
Rename hitobject blueprints and tie them to HitObjects
2021-05-18 16:30:58 +09:00
smoogipoo
532c41c82e
Remove nested blueprints from sliders
2021-05-18 14:19:11 +09:00
smoogipoo
ffb6135a1b
Rework hitobject blueprints to take in hitobject models
2021-05-13 19:53:32 +09:00
Naxess
19800f5f7f
Move IBeatmap
arg into context
2021-05-13 11:24:22 +02:00