1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-15 03:07:26 +08:00
Commit Graph

1277 Commits

Author SHA1 Message Date
Bartłomiej Dach
0e5a521695
Merge pull request #25157 from peppy/spinner-anti-cheese-final
Fix spinner cheese by accounting for spin directionality
2023-10-24 08:13:32 +02:00
Dean Herbert
d08ba764dd
Add extended testing of rewind 2023-10-23 20:29:46 +09:00
Dean Herbert
15c1fcbf96
Set ManualClock rate to 0 to avoid interpolation causing test errors 2023-10-23 20:29:36 +09:00
Dean Herbert
08b7c3d5ad
Remove test which makes less sense with new algorith 2023-10-23 20:01:23 +09:00
Dean Herbert
d0599496bd
Merge pull request #25177 from peppy/spinner-max-display 2023-10-21 11:10:09 +09:00
Dean Herbert
1be49f5b93
Update osu! difficulty calculator tests to factor in fractional changes 2023-10-20 19:04:24 +09:00
Dean Herbert
3fb74cb5f9
Move helper method to LegacyRulesetExtensions and stop applying rounding allowance to catch
As discussed, it isn't used in stable like this. Was a mistake.
2023-10-20 18:57:14 +09:00
Dean Herbert
2ba6286470
Merge branch 'master' into fix-circle-radius 2023-10-20 18:53:36 +09:00
Dean Herbert
686c45e21b
Merge branch 'master' into legacy-tick-test-coverage 2023-10-20 16:41:32 +09:00
Dean Herbert
0da0855692
Add ability to change spin speed in spinner test 2023-10-20 16:10:54 +09:00
Bartłomiej Dach
dcfd6a0a8a
Remove DistancedHitObjectComposer inheritance from osu! composer 2023-10-19 11:46:30 +02:00
Dean Herbert
78d3c3723d
Ignore instead of retry tests 2023-10-18 20:12:14 +09:00
Dean Herbert
3a5490892c
Centralise and repair circle size calculations game-wide 2023-10-18 19:50:42 +09:00
Dean Herbert
54da6f1048
Merge pull request #25160 from bdach/repeat-arrow-hidden-fade
Adjust slider repeat transforms to closer match stable
2023-10-18 18:03:48 +09:00
Dean Herbert
be321e34e9
Attempt to fix flaky tests with egregious retry rule 2023-10-18 17:46:14 +09:00
Dean Herbert
7479830a8e
Comment flaky tests for now
Same issue as other commented test (clock precision not high enough).

Will probably want a solution to this at some point.
2023-10-18 16:26:34 +09:00
Dan Balasescu
939b55020c
Merge branch 'master' into legacy-tick-test-coverage 2023-10-18 15:21:31 +09:00
Bartłomiej Dach
f116854c9f
Add test step for covering slider appearance with hidden active 2023-10-17 14:15:21 +02:00
Dean Herbert
80ac0c46d9
Fix final test
This looks to have been a WIP test, so I've brought it up to the point
of passing. I haven't given it much more attention than that, though.
2023-10-17 20:24:23 +09:00
Dean Herbert
9011170c3e
Adjust tests in line with new expectations 2023-10-17 20:24:23 +09:00
Dean Herbert
af7180a5b5
Add SpinnerSpinHistory and tests 2023-10-17 20:10:22 +09:00
Dean Herbert
e081fa48a2
Fix various other inspections 2023-10-17 17:48:51 +09:00
Dean Herbert
5341a335a6
Bypass Parent nullability checks for now 2023-10-17 17:48:45 +09:00
Dan Balasescu
3065c9f23d
Fix potential frame misordering in generator 2023-10-16 22:49:41 +09:00
Bartłomiej Dach
b3d60c6d4f
Add inline commentary about workarounds in beatmap conversion test 2023-10-16 13:40:45 +02:00
Bartłomiej Dach
937694cd14
Fix conversion test failures 2023-10-16 13:37:11 +02:00
Dean Herbert
04af46b8c7
Change SpinFramesGenerator to take degrees as input 2023-10-16 18:34:56 +09:00
Dean Herbert
28ee99f132
Add prospective test coverage of spinner input handling 2023-10-16 18:31:01 +09:00
Dean Herbert
cfa4adb24d
Add SpinFramesGenerator class to simplify creating spinner tests 2023-10-16 18:25:40 +09:00
Dean Herbert
159b24acf7
Rename RateAdjustedRotation to TotalRotation 2023-10-16 18:25:03 +09:00
Bartłomiej Dach
d7e891140d
Apply mod multipliers to local score V1/V2 reimplementations 2023-10-09 13:04:12 +02:00
Bartłomiej Dach
419cc8784a
Apply mods to processor-based score algorithms 2023-10-09 12:59:02 +02:00
Dean Herbert
d14d885d19 Add test coverage of very fast slider 2023-10-04 14:58:05 +09:00
Dan Balasescu
854b797ab5
Merge branch 'master' into legacy-tick-not-so-legacy-after-all 2023-10-04 10:52:13 +09:00
Dean Herbert
69ae370e82 Merge branch 'master' into legacy-tick-test-coverage 2023-10-03 19:37:32 +09:00
Dean Herbert
941f26d462 Add extra test coverage to TestSceneOsuModAutoplay to cover fail case
Basically the slider needs to be slightly longer for this test to
correctly fail in headless tests, in conjunction with the new slider
tail leniency.

This is due to headless tests running at a fixed frame interval, and
these timings being *tight*.
2023-10-03 18:52:20 +09:00
Dean Herbert
f0070eecf1 Add rotation support for very old skins 2023-10-02 20:09:39 +09:00
Dean Herbert
3a124a99ce Improve test output for judgement checking 2023-10-02 15:28:32 +09:00
Dean Herbert
393ec119dd Add test coverage of very short sliders 2023-10-02 15:28:32 +09:00
Dean Herbert
589abe2c52 Add note about broken test 2023-10-02 15:28:32 +09:00
Dean Herbert
b683d55023 Add a couple of extra tests 2023-10-02 14:09:52 +09:00
Dean Herbert
07207ffc32 Fix hitsounds playing too early on fast sliders 2023-10-02 14:09:52 +09:00
Dean Herbert
2410036003 Refactor tests to be easier to visually understand 2023-10-02 14:09:52 +09:00
Dean Herbert
22cb168c0f Add test coverage of tracking inside lenience period but not at tick or end 2023-09-29 17:17:04 +09:00
Dean Herbert
135d2497e7 Add gameplay test coverage around last tick of slider
This includes proposed changes as per
https://github.com/ppy/osu/issues/22805#issuecomment-1740377493.
2023-09-29 16:06:48 +09:00
Dean Herbert
55c623ff02 Apply NRT to TestSceneSliderInput 2023-09-29 14:47:55 +09:00
Dean Herbert
81485c548c Move LegacyLastTickOffset specification to generation code and stop passing everywhere 2023-09-29 14:32:29 +09:00
Dan Balasescu
05c9f0f9cc Fix bonus requirement not considering number of normal ticks 2023-09-26 18:11:27 +09:00
Bartłomiej Dach
28da5baea4
Merge branch 'master' into fix-slider-length 2023-09-20 11:10:01 +02:00
Bartłomiej Dach
92cafe23fe
Merge pull request #24810 from peppy/remove-slider-head-movement-allowance
Remove slider head circle movement (and remove setting from "classic" mod)
2023-09-19 12:25:33 +02:00
Dean Herbert
046e96afcd Apply NRT to slider snaking tests 2023-09-19 14:51:03 +09:00
Bartłomiej Dach
0ffb906741
Merge pull request #24831 from peppy/update-deps
Update all dependencies (except for Moq)
2023-09-19 07:50:27 +02:00
Dean Herbert
4504c9fc43 Update tests in line with new slider snaking behaviour 2023-09-19 14:42:07 +09:00
Magnus-Cosmos
bd7dab1d86
Add test for slider path edge case 2023-09-18 12:02:20 -04:00
Dean Herbert
f3b6aa5435
Merge pull request #24821 from bdach/scoring-test-scene-osu
Refactor scoring test scene for ruleset extensibility (and move existing instance to osu! ruleset project)
2023-09-18 19:54:14 +09:00
Dean Herbert
56b5f52e83 Update all dependencies (except for Moq) 2023-09-16 15:37:31 +09:00
Bartłomiej Dach
ebdc501e5b
Add example scenarios and configurable score multiplier 2023-09-15 12:58:29 +02:00
Bartłomiej Dach
0c22ff2a80
Refactor further to allow extensibility to other rulesets 2023-09-15 12:58:29 +02:00
Bartłomiej Dach
45751dd1f2
Minimum viable changes for ruleset-specific scoring test scenes 2023-09-15 12:58:29 +02:00
Bartłomiej Dach
4275af1343
Merge branch 'master' into fix-slider-tick-misssing 2023-09-15 12:09:54 +02:00
Dean Herbert
ec82414090 Allow testing hitting sliders are certain points in tests 2023-09-14 17:49:41 +09:00
Dean Herbert
1ef0c92962 Inverse snaking toggle 2023-09-14 17:49:41 +09:00
Dean Herbert
46126719eb Fix slider tests not correctly passing slider velocity to slideres 2023-09-14 17:49:41 +09:00
Bartłomiej Dach
c68b76d9f4
Add more test cases for input handling with overlapping objects 2023-09-08 17:40:05 +02:00
Bartłomiej Dach
e9b08219e9
Block input to objects lying under already-hit slider heads before slider is fully judged when classic note lock is active 2023-09-08 13:42:18 +02:00
Bartłomiej Dach
168a828f23
Revert "Block input to objects lying under already-hit hitcircles when classic note lock is active"
This reverts commit 03c61a573e.

The goal here was to handle an edge case discovered during work on note
lock, wherein it was determined that on stable hit circles would block
input from reaching objects underneath them. However, the change
mentioned above did that _too_ hard and caused overlaps to also be
blocked even long past a hit circle has been faded out.

Revert the change pending further (and more careful) investigation.
2023-09-08 10:11:21 +02:00
Bartłomiej Dach
59bd6d827e
Add failing test case for overlapping objects blocking each other when not intended 2023-09-08 10:01:32 +02:00
Dean Herbert
64baa4d01a Add test coverage of failing slider tick generation edge case 2023-09-07 18:20:08 +09:00
Dean Herbert
1a37543d28 Rename SliderVelocity to SliderVelocityMultiplier to distinguish from Velocity 2023-09-06 19:01:08 +09:00
Bartłomiej Dach
6d3a6b7a5d
Fix HitCircleLateFade failures due to hitcircle not being loaded when applying mods 2023-09-05 23:35:03 +02:00
Bartłomiej Dach
03c61a573e
Block input to objects lying under already-hit hitcircles when classic note lock is active 2023-09-05 22:50:27 +02:00
Bartłomiej Dach
40d1196aea
Add test cases covering overlapping slider input expectations 2023-09-05 22:49:54 +02:00
Dean Herbert
ede9fae381 Remove broken check from TestSceneHitCircleLateFade 2023-09-01 17:28:31 +09:00
Dean Herbert
90121814f9 Merge branch 'master' into stable-notelock 2023-09-01 17:15:48 +09:00
Dean Herbert
2d88135198 Add automated test coverage for new test 2023-08-31 16:18:53 +09:00
Salman Ahmed
b8df714f56 Remove unused using directives 2023-08-30 21:50:52 +03:00
Salman Ahmed
c91031604c Add test cases for hitting hit circles with "early fade" behaviour 2023-08-30 21:41:57 +03:00
Bartłomiej Dach
38e3459391
Fix broken assertion 2023-08-24 08:54:38 +02:00
Bartłomiej Dach
7f215f163f
Use reduced hittable range with autopilot active 2023-08-24 08:52:49 +02:00
Bartłomiej Dach
a316036460
Add failing test case for special autopilot hittable range 2023-08-24 08:52:49 +02:00
Bartłomiej Dach
ed2b1a0754
Contain entirety of legacy notelock badness inside the hit policy 2023-08-24 08:52:49 +02:00
Bartłomiej Dach
64b36a73b1
Rename test scene to match tested class 2023-08-24 08:52:49 +02:00
Bartłomiej Dach
48b3f7dced
Add test case covering stacks not shaking 2023-08-24 08:52:49 +02:00
Bartłomiej Dach
9ffc6cdd61
Add test case covering overlapping slider fail case 2023-08-24 08:52:49 +02:00
Bartłomiej Dach
a045cb71fc
Add assertions checking action type taken by legacy hit policy 2023-08-24 08:52:49 +02:00
Bartłomiej Dach
1f3121bdf2
Merge branch 'master' into stable-notelock 2023-08-24 08:52:43 +02:00
Bartłomiej Dach
b777b34cc0
Merge branch 'master' into stable-notelock 2023-08-24 08:43:59 +02:00
Dean Herbert
981e0c1ad7 Rename export test step to better fit purpose 2023-08-24 14:26:26 +09:00
Bartłomiej Dach
052bf2a6e0
Use alternative solution for timing offset woes on export 2023-08-23 13:54:34 +02:00
Bartłomiej Dach
64786aaee8
Adjust test cases slightly to avoid running into hitwindow edge issue
Some note lock test cases do not play out correctly when exported out
to stable due to a completely separate issue, namely #11311.
Adjust the test cases for now to isolate failure vectors.
2023-08-23 10:43:48 +02:00
Bartłomiej Dach
a1b4a56215
Add capability to export ordered object policy test cases for stable crosscheck 2023-08-23 10:43:41 +02:00
Bartłomiej Dach
9fd59b807f
Rewrite TestSceneObjectOrderedHitPolicy to not rely on custom hitwindows 2023-08-22 15:36:36 +02:00
Bartłomiej Dach
ab4d47b594
Rewrite assertions to use nunit constraints 2023-08-22 14:37:58 +02:00
Bartłomiej Dach
c9f611a713
Enable NRT in TestSceneObjectOrderedHitPolicy 2023-08-22 14:30:55 +02:00
Bartłomiej Dach
1d657a8844
Merge branch 'master' into fix-slider-reversing 2023-08-21 09:29:46 +02:00
Bartłomiej Dach
3d52a1267e
Fix test failures via test-local popover containers 2023-08-19 15:08:30 +02:00
Bartłomiej Dach
5219b8a13b
Add test coverage for precise rotation control 2023-08-16 11:37:52 +02:00
Pasi4K5
6346872c39 Improve code readability and add assertion to test scene 2023-08-15 23:27:12 +02:00
Pasi4K5
cd70673463 Fix property name 2023-08-14 22:41:25 +02:00
Pasi4K5
28994166bc Split up assertions 2023-08-14 22:09:12 +02:00
Pasi4K5
449bee98cc Code cleanup 2023-08-14 21:56:08 +02:00
Pasi4K5
bbd91e3ee4 Add TestSceneSliderReversal 2023-08-14 14:14:11 +02:00
Bartłomiej Dach
cd416e09f9
Add test scene for checking spinner judgements 2023-07-29 00:49:21 +02:00
Liam DeVoe
15af85226c adjust test for correct stable notelock
stable actually allows for hitobjs to be hit in the middle of sliders, as long as it doesn't interfere with the end time of the slider.
2023-07-19 02:06:29 -04:00
Dean Herbert
b9a66ad7b3 Add test coverage of incorrect selection behaviour 2023-07-19 14:59:22 +09:00
Liam DeVoe
768d7b5e1c correct implementation of stable notelock 2023-07-17 23:31:21 -04:00
Dean Herbert
547f247669 Fix test to work regardless of screen sizes 2023-07-12 17:41:58 +09:00
Dean Herbert
b20190ed4f Merge branch 'master' into fix-blueprint-end-placement 2023-07-12 17:38:47 +09:00
Dean Herbert
ca9c31b492 Add test coverage of slider blueprint end placement failing outside playfield 2023-07-11 17:29:28 +09:00
Bartłomiej Dach
2cd5fd5944
Add failing legacy mod conversion test cases 2023-07-09 16:09:25 +02:00
Bartłomiej Dach
e9ecad9839
Add failing test cases covering NaN-timing-point sliders 2023-07-08 23:24:38 +02:00
tsrk
350d722c8d
Merge branch 'master' into hud/kc-skinnable 2023-06-25 15:42:08 +02:00
Bartłomiej Dach
f8d2f2f7e1
Fix more issues discovered by CI that can be fixed game-side 2023-06-24 19:04:05 +02:00
Bartłomiej Dach
d7ae430ec2
Merge branch 'master' into framework-update 2023-06-24 18:47:52 +02:00
Dean Herbert
3585c3f1d5 Apply required nullability changes 2023-06-24 09:58:36 +09:00
Dean Herbert
0ab0c52ad5 Automated pass 2023-06-24 01:00:03 +09:00
Bartłomiej Dach
9bcd86d66d
Fix test failure due to relying on implementation detail 2023-06-19 18:42:30 +02:00
tsrk
cf1ee2ba35
test(TestSceneOsuTouchInput): fix InputTrigger depth 2023-06-18 18:26:08 +02:00
tsrk
c8afd057bd
test(TestSceneOsuTouchInput): simplify draw hierarchy
An InputTrigger is considered active as long as
2023-06-18 17:51:17 +02:00
tsrk
b960741ff7
test: adapt touch input test to changes 2023-06-16 18:54:19 +02:00
Bartłomiej Dach
3bf900a4df
Add failing test case for slider scenario 2023-06-10 12:14:08 +02:00
Bartłomiej Dach
2958ce35be
Adjust object snapping test cases to pass with new radius 2023-06-08 13:19:47 +02:00
Dean Herbert
310c54fe28 Add test coverage ensuring positional data is present in hit events 2023-06-01 13:26:47 +09:00
Dean Herbert
e68ba6366c Update new usages of "soft" to use the new constant 2023-05-24 14:04:10 +09:00
Dean Herbert
83dcd78826 Make HitSampleInfo.Bank non-nullable 2023-05-16 18:12:56 +09:00
Bartłomiej Dach
a45f0b65a1
Merge pull request #23372 from peppy/fix-slider-end-circle-appear-delay
Fix fade in delay for first slider end circle being incorrect when snaking disabled
2023-05-03 19:06:39 +02:00
Dean Herbert
6b017ac05f
Merge pull request #23308 from OliBomby/sample-control-points
Remove SampleControlPoint and DifficultyControlPoint from HitObject
2023-05-03 14:21:51 +09:00
Dean Herbert
b2b9f2a036 Merge branch 'master' into bubble_mod_implementation_clean 2023-05-02 16:59:55 +09:00
Dean Herbert
e3c51b9652 Add ability to toggle snaking in slider test scene 2023-05-02 16:26:56 +09:00
Dean Herbert
e3c384c6b5 Merge branch 'master' into sample-control-points 2023-05-02 14:38:39 +09:00
Bartłomiej Dach
ff29189e89
Add custom cursor-ripple to cover skinnability in test 2023-05-01 09:33:37 +02:00
Dean Herbert
a4ae9e409b Implement ripples (legacy and default) 2023-04-30 14:48:03 +09:00
OliBomby
354cd23874 removed all usage of hitobject's DifficultyControlPoint 2023-04-26 18:17:02 +02:00
OliBomby
c6fc180659 remove all test usages of SampleControlPoint 2023-04-26 14:21:52 +02:00
Dean Herbert
b0c09df259 Merge branch 'master' into gameplay/key-counter-abstraction 2023-04-03 15:33:35 +09:00
Dean Herbert
cc408470f4 Add test coverage of second touch moving but not resulting in cursor movement 2023-03-21 16:14:44 +09:00
Dean Herbert
7b34607676 Merge branch 'master' into bubble_mod_implementation_clean 2023-03-16 13:45:22 +09:00
Dean Herbert
42359a9754 Fix previous touch action not being released when it's not a direct touch 2023-03-15 16:43:20 +09:00
Dean Herbert
6c4f596a9a Make osu! touch input aware of the distance travelled of a non-direct touch 2023-03-15 16:43:20 +09:00
Bartłomiej Dach
f711915e5f
Remove unused using directive 2023-03-07 21:16:30 +01:00
Dean Herbert
28520414aa Move KeyCounter components to HUD namespace 2023-03-07 16:41:39 +09:00
Dean Herbert
8f6df5ea0f
Merge branch 'master' into gameplay/key-counter-abstraction 2023-03-07 16:09:45 +09:00
tsrk
8c94b77de1
refactor(InputTrigger): move out of KCD
I love JetBrains Rider.
2023-02-22 15:05:07 +00:00
Dean Herbert
ee87a29376
Merge pull request #22543 from Cwazywierdo/hitcircle-late-miss-fade
Fix hit circle late-miss fading differences compared to stable
2023-02-21 13:56:57 +09:00
MK56
b74c1c8334
Merge branch 'master' into bubble_mod_implementation_clean 2023-02-19 21:36:59 +01:00
Bartłomiej Dach
0611fd4035
Add coverage for classic/hidden interactions 2023-02-19 16:39:25 +01:00
tsrk
6193aeed12
fix(TestSceneOsuTouchInput): missing Value call 2023-02-17 00:13:45 +00:00
tsrk
c61fac578c
style(KeyCounter): rename methods and arguments
As for the second suggestion in
https://github.com/ppy/osu/pull/22654#discussion_r1109047998,
I went with the first one as only one Trigger actually uses this
argument for rewinding.
2023-02-16 23:15:03 +00:00
tsrk
6340730427
refactor(KeyCounter): remove circularity 2023-02-16 21:59:39 +00:00
Dean Herbert
7afdcb9383 Merge branch 'master' into hide-resume-overlay 2023-02-16 15:42:14 +09:00