Commit Graph

81 Commits

Author SHA1 Message Date
8aa04864ce Add support for converting sliders with repeats to streams 2021-11-11 23:25:49 +01:00
0cd3f98598 Ensure samples & sample points are carried over during conversion 2021-11-11 21:43:06 +01:00
d9494d405e Add test coverage for slider-to-stream conversion 2021-11-11 21:01:30 +01:00
bc37cb6f43 Merge branch 'master' into no-more-difficulty-control-points-info 2021-10-08 18:41:17 +09:00
b339c149d8 Copy BaseDifficulty to Beatmap<T> and move all write operations across 2021-10-06 15:10:45 +09:00
a92d499d7a Convert usages of BeatmapDifficulty to IBeatmapDifficultyInfo 2021-10-01 16:55:50 +09:00
46bafb6252 Merge branch 'master' into no-more-difficulty-control-points-info 2021-09-28 13:53:56 +09:00
4cdce69f7e Update test to match test beamap data 2021-09-21 23:45:03 +09:00
d15bd5a15e Store grid size back to beatmap on change 2021-09-20 20:39:39 +02:00
0d7dac03f4 Start with largest grid size 2021-09-20 20:34:22 +02:00
fe21577f11 Adjust grid snap in line with new logic 2021-09-20 20:32:34 +02:00
4e094b2127 Implement grid size toggling matching stable 2021-09-19 20:26:02 +02:00
c403e628dd Add test coverage for distance/rectangular grid exclusivity 2021-09-19 18:08:34 +02:00
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
e15198f077 Update missed tests 2021-08-26 13:47:10 +09:00
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
53c0298b5e Add too short spinners check and tests 2021-07-13 10:51:40 +02:00
fec9448301 Add too short sliders check and tests 2021-07-13 10:50:41 +02:00
6c3d2315d0 Merge pull request #13606 from Naxesss/low-diff-checks
Add low difficulty spacing checks
2021-06-22 16:29:37 +09:00
629c98e6a0 Add time distance equality tests 2021-06-21 15:34:11 +02:00
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
fe48ddfee3 Also cover slider animation disable 2021-06-18 16:04:11 +02:00
e2a370f602 Add coverage for hit circle fade-out duration 2021-06-18 16:04:11 +02:00
69c1cd5b34 Add failing test case for hit circle animations disable 2021-06-18 16:04:11 +02:00
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
532c41c82e Remove nested blueprints from sliders 2021-05-18 14:19:11 +09:00
ffb6135a1b Rework hitobject blueprints to take in hitobject models 2021-05-13 19:53:32 +09:00
19800f5f7f Move IBeatmap arg into context 2021-05-13 11:24:22 +02:00
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
5262d94e21 Fix wrong assert in offscreen test 2021-04-20 13:21:57 +02:00
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
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
b413ffae3e Fix test going offscreen in headless execution 2021-04-16 18:54:33 +09:00
30e00cc4aa Add test coverage of selection / scaling scenarios 2021-04-16 17:07:20 +09:00
401bf368a7 Merge branch 'fix-slider-scale-crash' into fix-slider-zero-length 2021-04-16 16:58:19 +09:00
ab1a1a1df4 Add failing test case due to div by zero 2021-04-16 16:55:17 +09:00
965a1ead36 Disallow zero-length slider blueprint placements 2021-04-16 14:38:30 +09:00
1ff4e2076f Merge branch 'master' into verify-tab 2021-04-13 23:05:48 +09:00
4618728bf0 Add test case 2021-04-13 11:35:12 +02:00
98c25b2e71 Remove unused import 2021-04-13 10:33:08 +02:00
b45d7de4ec Update asserts to use better nunit specifications 2021-04-13 15:04:01 +09:00
4837cef095 Use static for playfield centre positioning 2021-04-13 14:44:52 +09:00
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
8a6dfcfae1 Add CheckOffscreenObjects tests 2021-04-13 01:22:36 +02:00
0af6d77192 Test for path type transfer 2021-04-09 11:03:38 +02:00
2d94484566 Use lambda expression
Apparently CI dislikes this not being a lambda.
2021-04-08 12:49:46 +02:00
7d2b54ca42 Add change to Bezier test 2021-04-08 12:32:45 +02:00
4110d1675d Add path type menu test cases 2021-04-08 11:46:52 +02:00
9d02930709 Add regression test for type changes 2021-04-07 17:18:55 +02:00
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