Commit Graph

78 Commits

Author SHA1 Message Date
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
Naxess
c13b93e6f1 Replace IWorkingBeatmap arg with BeatmapVerifierContext in checks
This simplifies passing of contextual information by enabling addition without needing to refactor lots of classes.

See next commit for example.
2021-05-12 02:29:18 +02:00
Naxess
5262d94e21 Fix wrong assert in offscreen test 2021-04-20 13:21:57 +02:00
Naxess
8656176ab8 Add the playable beatmap as check argument
This is different from the working beatmap's `.Beatmap` property in that it is mutated by the ruleset/editor.

So hit objects, for example, are actually of type `Slider` and such instead of the legacy `ConvertSlider`.

This should be preferred over `workingBeatmap.Beatmap`.
2021-04-20 01:31:51 +02:00
Naxess
448574e7e6 Use WorkingBeatmap instead of IBeatmap
This lets us access things like the background, track, etc. which are necessary for quality and filesize checks.

Also improves the structure of the `CheckBackgroundTest` class in the process.
2021-04-17 17:33:53 +02:00
Dean Herbert
b413ffae3e Fix test going offscreen in headless execution 2021-04-16 18:54:33 +09:00
Dean Herbert
30e00cc4aa Add test coverage of selection / scaling scenarios 2021-04-16 17:07:20 +09:00
Dean Herbert
401bf368a7 Merge branch 'fix-slider-scale-crash' into fix-slider-zero-length 2021-04-16 16:58:19 +09:00
Dean Herbert
ab1a1a1df4 Add failing test case due to div by zero 2021-04-16 16:55:17 +09:00
Dean Herbert
965a1ead36 Disallow zero-length slider blueprint placements 2021-04-16 14:38:30 +09:00
Dean Herbert
1ff4e2076f Merge branch 'master' into verify-tab 2021-04-13 23:05:48 +09:00
Naxess
4618728bf0 Add test case 2021-04-13 11:35:12 +02:00
Naxess
98c25b2e71 Remove unused import 2021-04-13 10:33:08 +02:00
Dean Herbert
b45d7de4ec Update asserts to use better nunit specifications 2021-04-13 15:04:01 +09:00
Dean Herbert
4837cef095 Use static for playfield centre positioning 2021-04-13 14:44:52 +09:00
Naxess
6d3f9fa9ce Use is class instead of Equals with template index
Ensures ordering of `PossibleTemplates` does not affect tests.
2021-04-13 02:29:25 +02:00
Naxess
8a6dfcfae1 Add CheckOffscreenObjects tests 2021-04-13 01:22:36 +02:00
Naxess
0af6d77192 Test for path type transfer 2021-04-09 11:03:38 +02:00
Naxess
2d94484566 Use lambda expression
Apparently CI dislikes this not being a lambda.
2021-04-08 12:49:46 +02:00
Naxess
7d2b54ca42 Add change to Bezier test 2021-04-08 12:32:45 +02:00
Naxess
4110d1675d Add path type menu test cases 2021-04-08 11:46:52 +02:00
Naxess
9d02930709 Add regression test for type changes 2021-04-07 17:18:55 +02:00
Naxess
8621a6b4fe Add margin to large segment test
Test ran fine on my end, but apparently not on the CI. This should make results a bit more consistent, hopefully.
2021-04-01 20:34:04 +02:00
Naxess
b8479a979f Remove unused blueprint variable 2021-04-01 18:06:12 +02:00
Naxess
25afae5671 Fix broken test case
Seems this technically works, but only because of the edge case of being entirely linear, which the framework catches.

This fixes that.
2021-03-31 20:48:17 +02:00
Naxess
1718084dbc Update/remove determinant tests
We now only change the path type based on the bounding box.

If the control points are too linear, the framework now handles the fallback to Bezier.
2021-03-31 20:08:39 +02:00