Dean Herbert
7ceb49fbc0
Add extra test coverage and handle case where still at loading screen
2023-11-24 15:05:39 +09:00
Dean Herbert
ef5dd24589
Update failing test coverage and fix onFail
being called too often
2023-11-24 14:44:57 +09:00
Dean Herbert
51e2ce500d
Add test coverage of remote user failing immediately failing locally
2023-11-24 14:38:02 +09:00
Dean Herbert
73ad92189b
Add test coverage of remote player quitting immediately quitting locally
2023-11-24 14:26:09 +09:00
Dean Herbert
e06d79281d
Update tests to work with nested screen
2023-11-24 14:26:09 +09:00
Dean Herbert
dabbdf674b
Rename SoloSpectator
to SoloSpectatorScreen
2023-11-24 14:26:08 +09:00
Dean Herbert
5d367c247c
Merge pull request #25547 from bdach/skin-editor-paste-catching-fire
...
Fix skin editor crashing when pasting with nothing in clipboard
2023-11-23 16:15:11 +09:00
Bartłomiej Dach
4edaaa3083
Add test coverage of skin editor copy-paste
2023-11-23 09:55:16 +09:00
Dan Balasescu
30309cdf11
Merge pull request #25415 from Poyo-SSB-forks/unify-ur
...
Change unstable rate calculation to account for rate-change mods
2023-11-23 09:53:28 +09:00
Bartłomiej Dach
b6e3e42445
Merge branch 'master' into bspline-sliders
2023-11-20 12:03:29 +09:00
Bartłomiej Dach
71714f8f6e
Add back test step for testing out argon health bar width
2023-11-15 13:33:14 +09:00
cs
fa976a5aa0
Fix code style/quality issues
2023-11-13 08:25:27 +01:00
Poyo
8c36604e58
Add rate-change UR tests
2023-11-12 11:16:06 -08:00
Poyo
d123ba5bce
Fix broken tests
2023-11-12 11:13:38 -08:00
Bartłomiej Dach
3e8c89e282
Fix one more reference to removed setting
2023-11-12 07:42:41 +09:00
cs
54b8244a18
CI Fixup
2023-11-11 15:02:06 +01:00
Thomas Müller-Höhne
926636cc03
Generalize Bezier curves to BSplines of Nth degree
2023-11-11 13:32:53 +01:00
Bartłomiej Dach
ea556abad8
Merge branch 'skin-size-editing' into gameplay-hud-redesign/counters
2023-11-11 21:28:29 +09:00
Bartłomiej Dach
ee56b4d205
Use barely better assertion fail message in test
2023-11-11 20:56:05 +09:00
Bartłomiej Dach
b7972e3c84
Merge branch 'skin-size-editing' into gameplay-hud-redesign/counters
2023-11-11 20:16:14 +09:00
Bartłomiej Dach
b247b94ecb
Revert test changes
...
They were broken because `SerialisedDrawableInfo` is a reference type
and as such equality checks will use reference equality rather than
member equality.
2023-11-11 19:32:46 +09:00
Bartłomiej Dach
21e1d68b15
Remove unused using directive
2023-11-11 15:52:24 +09:00
Dean Herbert
2e48569982
Improve test comparison logic
...
Doesn't really help that much with nunit output,
but at least you can breakpoint and see the json kinda.
2023-11-10 20:00:51 +09:00
Bartłomiej Dach
ec2200d54f
Remove another reference to bar length
2023-11-10 18:26:08 +09:00
Salman Ahmed
18c71c95cc
Merge branch 'master' into gameplay-hud-redesign/counters
2023-11-08 02:12:37 +03:00
Salman Ahmed
634795e45f
Adjust failing test scenes
2023-11-05 02:50:14 +03:00
Salman Ahmed
1d4f4cf4c3
Merge branch 'master' into gameplay-hud-redesign/counters
2023-11-05 02:02:36 +03:00
Salman Ahmed
58a830fc5b
Revert "Add "Argon" performance points counter"
...
This reverts commit 56eeb117ce
.
2023-11-05 01:55:54 +03:00
Joseph Madamba
3f8baf913b
Add 100 and 1000 key press step to test overflow
2023-11-02 20:49:01 -07:00
Joseph Madamba
e3b3ce6c84
Fix test overflowing on widescreen + add default (triangles) key counter testing
2023-11-02 20:42:28 -07:00
Joseph Madamba
090601b485
Apply peppy's upright key counter attempt diff
...
Co-Authored-By: Dean Herbert <pe@ppy.sh>
2023-11-02 20:42:23 -07:00
Dean Herbert
7ceced7012
Scope TestPauseWithLargeOffset
to focus on what matters
...
See https://github.com/ppy/osu/actions/runs/6693917410/job/18186111009
This test is to make sure we don't seek before the original
pause time, so I've exposed that value precisely to avoid
CI woes.
2023-10-31 14:47:04 +09:00
Dean Herbert
d379e553da
Fix back-to-front logging
2023-10-31 14:31:26 +09:00
Dean Herbert
bdd3f2847b
Add an extra storyboard sample to avoid intermittent failures in TestStoryboardSamplesStopOnSkip
...
Probably CI running slow timing balls.
The point of failure is `waitUntilStoryboardSamplesPlay()`
after already testing the important part of the test (that
the samples stop on skip) so let's give it another possible
point to recover.
See https://github.com/ppy/osu/actions/runs/6698399814/job/18201753701 .
2023-10-31 14:28:40 +09:00
Dean Herbert
89444d5544
Fix export test still occasionally failing due to file write in progress
...
https://github.com/ppy/osu/actions/runs/6701591401/job/18209826074
Basically, `File.Move` may not be an atomic operation.
2023-10-31 14:00:49 +09:00
Dean Herbert
a3dc9a73b1
Revert behaviour changes of MaxDimensions
test and ignore instead
2023-10-31 13:36:10 +09:00
Dean Herbert
caddbacfe8
Merge branch 'master' into gameplay-hud-redesign/counters
2023-10-30 16:35:10 +09:00
Salman Ahmed
a53c0adae0
Remove unused using directive
2023-10-28 06:56:12 +03:00
Salman Ahmed
51b7c97cab
Fix TestScenePlayerMaxDimensions
bottlenecking CI
2023-10-28 06:07:49 +03:00
Bartłomiej Dach
96d784e06b
Delete ScoreInfo.HasReplay
as no longer needed
2023-10-27 12:39:54 +02:00
Salman Ahmed
df80b4dcab
Update "Argon" health display specifications to match design
...
Also adds a little white bar next to the display to match with the
components below it (score/accuracy/combo counters).
2023-10-26 09:12:05 +03:00
Salman Ahmed
56eeb117ce
Add "Argon" performance points counter
2023-10-26 09:10:10 +03:00
Salman Ahmed
0aa0562dc0
Add "Argon" combo counter
2023-10-26 09:09:55 +03:00
Salman Ahmed
1f36acca1a
Add "Argon" accuracy counter
2023-10-26 09:09:52 +03:00
Salman Ahmed
9ca672d689
Add "Argon" total score counter
2023-10-26 08:58:25 +03:00
Dean Herbert
5341a335a6
Bypass Parent
nullability checks for now
2023-10-17 17:48:45 +09:00
Bartłomiej Dach
5f51b8a7c9
Merge pull request #25097 from peppy/results-screen-progress-fast
...
Show results immediately if user hits "back" key after finishing gameplay
2023-10-13 11:54:34 +02:00
Dean Herbert
fa47309eef
Fix exit key during storyboard outro not progressing to results
2023-10-12 19:31:54 +09:00
Bartłomiej Dach
34bab38e80
Fix judgement counter test failure due to exploiting mania ruleset
...
Large ticks are not a thing in mania anymore, so the judgement counter
tests began to fail as `LargeTickHit` is no longer a valid hit result
in that ruleset.
2023-10-12 11:34:59 +02:00
Dean Herbert
73b8146729
Update tests in line with new behaviour
2023-10-12 15:42:54 +09:00
Bartłomiej Dach
ea400a9db7
Fix cross-test interference
...
`TestLastPlayedUpdated` was implicitly relying on running first.
`TestGuestScoreIsStoredAsGuest` showing up changed test ordering,
causing the former test to fail if it didn't get to run first.
2023-10-10 09:30:51 +02:00
Bartłomiej Dach
08b1a3cbe2
Add failing test case for guest user being looked up in API
2023-10-10 09:18:57 +02:00
Dean Herbert
7c7771afca
Merge pull request #24986 from peppy/health-animates-in-intro
...
Add initial animation for health bars
2023-10-07 10:31:34 +09:00
Bartłomiej Dach
a099cc0f36
Merge pull request #25030 from peppy/adjustable-health-bar
...
Adjust argon health bar to fit with existing layout
2023-10-06 21:51:18 +02:00
Dean Herbert
1a60e6d76e
Merge branch 'master' into health-animates-in-intro
2023-10-07 00:32:19 +09:00
Dean Herbert
71be3c8f8b
Add ability to adjust health bar settings in test scene
2023-10-06 19:34:27 +09:00
Dean Herbert
db5178e453
Change ArgonHealthDisplay
to be relative sized for now
2023-10-06 18:56:39 +09:00
Dean Herbert
354193c53a
Merge branch 'master' into clock-fix-attempt-2
2023-10-06 16:43:27 +09:00
Bartłomiej Dach
c195fbe76f
Merge branch 'master' into crop-gameplay-textures
2023-10-05 09:35:58 +02:00
Dean Herbert
5a0faaa0b1
Fix TestReplayExport
intermittent failure
...
The previous fix was not working as it was checking the path for the
prefix `_`, not the filename.
See https://github.com/ppy/osu/runs/17415814653#r0s2 which clearly shows
this.
2023-10-05 14:30:06 +09:00
Bartłomiej Dach
bd71403309
Merge branch 'master' into health-animates-in-intro
2023-10-04 13:53:42 +02:00
Dean Herbert
5a17a86d1d
Merge branch 'master' into clock-fix-attempt-2
2023-10-04 16:57:49 +09:00
Bartłomiej Dach
844a3b6c1b
Merge pull request #24980 from frenzibyte/gameplay-hud-redesign/health-display
...
Implement redesigned health bar display for "Argon" skin
2023-10-03 11:26:21 +02:00
Dean Herbert
e1445fcc65
Adjust health display test scene's background colour to better visualise background fill
2023-10-03 17:17:42 +09:00
Dean Herbert
622cbc3af7
Adjust test scene to actually make HP bars fit
2023-10-02 16:07:45 +09:00
Salman Ahmed
9e2b8254d9
Add argon-specific health display test scene
2023-10-01 13:26:47 +03:00
Salman Ahmed
776536e816
Add "Argon" health display implementation
2023-10-01 00:56:16 +03:00
Salman Ahmed
869f8e5e1b
Adjust test scene to apply miss judgements as well
2023-10-01 00:21:24 +03:00
Salman Ahmed
314ecec65b
Refactor player max dimensions test scene to actually upscale textures
2023-09-30 01:34:49 +03:00
Dean Herbert
a7237e48aa
Merge branch 'master' into fix-storyboard-skin-textures-lookup
2023-09-27 17:17:51 +09:00
Dean Herbert
40a548d372
Adjust new test scene to not be super broken
2023-09-26 17:30:49 +09:00
Dean Herbert
990c54519b
Merge branch 'master' into limit-gameplay-sprite-dimensions
2023-09-26 16:40:32 +09:00
Dean Herbert
b1561b650f
Rename test scene, add xmldoc and increase scale factor to something absurdly high
2023-09-26 16:39:36 +09:00
Dean Herbert
2ca1c684bb
Merge branch 'master' into fix-storyboard-skin-textures-lookup
2023-09-26 14:05:27 +09:00
Dean Herbert
c40bd74138
Update usages of GameplayClockContainer
not using an adjustable source
2023-09-22 16:22:36 +09:00
Dean Herbert
8367bb6bee
Don't apply decoupling to SpectatorPlayerClock
s
...
See inline comment for reasoning. It's a bit complicated.
2023-09-22 16:22:35 +09:00
Dean Herbert
3f27be1f33
Replace most usages of DecoupleableInterpolatingFramedClock
...
Except `FramedBeatmapClock`, which is the high-effort one.
2023-09-22 12:49:25 +09:00
Bartłomiej Dach
e45d456324
Fix TestFriendScore
intermittently failing due to randomness
...
If `createRandomScore()` happened to randomly pick the highest total
score when called with `friend` as the sole argument, that particular
score would not be pink.
`GetScoreByUsername()` would arbitrarily pick the first score for the
user, so in this particular case where a friend had the number 1 score,
the test would wrongly fail.
Fix by checking whether any of the 3 added friend scores have received
the pink colour. Because there is more than 1 friend score in the test,
doing so ensures that at least one of those should eventually become
pink (because, obviously, you can't have two scores at number 1).
2023-09-21 21:12:44 +02:00
Bartłomiej Dach
9301a1907a
Rewrite TestFriendScore
assertions to constraint model
...
Allows to clearly see what the failure is:
TearDown : System.TimeoutException : "friend score is pink" timed out: Expected: some item equal to "#FF549A"
But was: < "#FFFFFF", "#7FCC33", "#444444 " >
The #7FCC33 colour is used for the first score on the leaderboard.
2023-09-21 21:05:41 +02:00
Bartłomiej Dach
69ed99dfd5
Merge branch 'master' into mania-edit-disable-sv
2023-09-21 09:13:27 +02:00
Bartłomiej Dach
d7129da8ea
Fix TestSceneDrawableStoryboardSprite
not displaying anything
2023-09-20 12:05:23 +02:00
Dean Herbert
c5397bdbb3
Merge branch 'master' into mania-edit-disable-sv
2023-09-20 14:23:07 +09:00
Dean Herbert
1927b524db
Merge branch 'master' into leaderboard-friend-highlight
2023-09-20 14:14:08 +09:00
Dean Herbert
1316403180
Fix inspection in new test scene
2023-09-20 13:02:40 +09:00
Dean Herbert
2f020f8682
Add test coverage of storyboard preferring skin when specified
2023-09-19 20:20:20 +09:00
Salman Ahmed
8e992de763
Fix crash when loading player instance without exiting previous instance
2023-09-19 05:09:01 +03:00
Salman Ahmed
a373d71b3e
Add basic test scene upscaling all skin elements
2023-09-19 03:40:31 +03:00
Salman Ahmed
57dc76b345
Revert "Update GetTexture
signature rather than creating new overload"
...
This reverts commit 96f12cfbaa
.
2023-09-19 03:21:19 +03: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
7c65a9de75
Fix Score V1 simulation in scoring test scene incorrectly applying multiplier
...
`TestSceneScoring` included a local simulation of stable's Score V1
algorithm. One of the parts of said algorithm is a mysterious
"score multiplier", influenced by - among others - the beatmap's drain
rate, overall difficulty, circle size, object count, drain length,
and active mods. (An implementation of this already exists in lazer
source, in `OsuLegacyScoreSimulator`, but more on this later.)
However, `TestSceneScoring` had this multiplier in _two_ places, with
_two_ distinct values, one of which being 1 (i.e. basically off).
Unfortunately, the place that had 1 as the multiplier was the wrong one.
Stable calculates the score increase for every hit in two stages;
first, it takes the raw numerical value of the judgement, but then
applies a combo-based bonus on top of it:
scoreIncrease += (int)(Math.Max(0, ComboCounter.HitCombo - 1) * (scoreIncrease / 25 * ScoreMultiplier));
On the face of it, it may appear that the `ScoreMultiplier` factor
can be factored out and applied at the end only when returning total
score. However, once the above formula is rewritten as:
scoreIncrease = scoreIncrease + (int)(Math.Max(0, ComboCounter.HitCombo - 1) * (scoreIncrease / 25 * ScoreMultiplier));
= scoreIncrease * (1 + (Math.Max(0, ComboCounter.HitCombo - 1) / 25 * ScoreMultiplier))
it becomes clear that that assumption is actually _incorrect_,
and the `ScoreMultiplier` _must_ be applied to every score increase
individually.
The above was cross-checked experimentally against stable source
on an example test map with 100 objects, and a replay hitting them
perfectly.
2023-09-12 21:33:26 +02:00
Bartłomiej Dach
3981e2e957
Only show visible graph values in tooltip
2023-09-12 13:29:02 +02:00
Bartłomiej Dach
15708ee465
Add toggle for showing relative/absolute score values
2023-09-12 13:27:40 +02:00
Bartłomiej Dach
607ceeccb9
Persist visibility state of graphs
2023-09-12 12:19:50 +02:00
Bartłomiej Dach
3cf8082aa7
Add capability to toggle visibility of graph
2023-09-12 12:07:12 +02:00
Bartłomiej Dach
95d15a703e
Improve legibility of scoring test scene
...
- Add black background to avoid clashes with background images.
- Use sorta-tetradic colours for the four plots.
2023-09-12 11:36:41 +02:00
Dean Herbert
87ec33bb66
Tidy up test
2023-09-07 14:50:22 +09:00
cdwcgt
68752f95e5
color friend score to pink
2023-09-06 22:58:03 +09:00
Dean Herbert
96f12cfbaa
Update GetTexture
signature rather than creating new overload
2023-09-05 18:01:19 +09:00
Dean Herbert
0f5eff1230
Merge branch 'master' into mania-edit-disable-sv
2023-09-01 19:08:48 +09:00
Bartłomiej Dach
479c463751
Explain why segment end positions are not recovered in test
2023-08-21 08:29:51 +02:00
Bartłomiej Dach
2b09594823
Use nunit constraints in test for better debug experience
2023-08-19 14:33:26 +02:00
OliBomby
fbf4d3ac81
Add test
2023-08-18 12:36:34 +02:00
Dan Balasescu
a2fd7707a1
Allow toggling SVs in the editor
2023-08-18 18:55:24 +09:00
nanashi-1
9bdff29dd7
add visual test
2023-08-07 09:50:54 +08:00
Bartłomiej Dach
aca8310cd1
Fix non-compiling test
...
To be fair, currently the test is a bit pointless (as it has no reason
to be a `SkinnableTestScene`, it gains precisely nothing from it - all
that is shown there is some generic components on song select). But that
is no worse then `master`, so look away for now.
2023-07-28 23:36:57 +02:00
Dean Herbert
e702e0a23e
Avoid intercepting temporary files in new test
2023-07-27 17:44:36 +09:00
Bartłomiej Dach
7bc3edb05a
Fix code quality inspection
2023-07-26 20:52:03 +02:00
Dean Herbert
2dace742a3
Add test coverage of score arriving on disk when exporting from results screen after play
2023-07-26 15:21:43 +09:00
Bartłomiej Dach
653f01f4ce
Merge pull request #24359 from peppy/fix-unknown-mod-test-failure
...
Fix `TestSceneUnknownMod` failing due to null reference
2023-07-25 22:40:03 +02:00
Dean Herbert
c1d93607e0
Fix TestSceneUnknownMod
failing due to null reference
2023-07-25 19:06:13 +09:00
Dean Herbert
b29a2081ac
Merge branch 'master' into menu-star-fountains
2023-07-21 14:21:16 +09:00
Bartłomiej Dach
210e114f7d
Merge branch 'master' into editor-prefer-closest
2023-07-20 19:16:09 +02:00
Dan Balasescu
733ce4c382
Fix incorrect dependency caching
...
These are tested framework-side to throw exceptions, but the
test is ignored for the source generated version because it quietly
allows this scenario.
The source gen project should eventually have an analyser for these
unsupported cases, or we could consider relaxing this particular case.
2023-07-20 22:30:49 +09:00
Dean Herbert
9d46d00294
Update skin editor cyclic test to match expectations better
2023-07-19 16:56:16 +09:00
Dean Herbert
2e3d1fe950
Fix regression in time jumping behaviour
2023-07-19 13:38:04 +09:00
Zyf
82364b4f9f
Use OsuScoreProcessor in the scoring test scene
2023-07-11 02:46:32 +02:00
Bartłomiej Dach
055e4a78f0
Merge branch 'master' into taiko-hitsounding-final-attempt
2023-07-08 18:10:04 +02:00
Bartłomiej Dach
832c1c0009
Merge branch 'master' into fix-gameplay-samepl-trigger-source-rewind
2023-07-08 13:33:04 +02:00
Dean Herbert
2e98ab0a48
Expose rewinding state of IGameplayClock
s
...
The implementation of this requires a bit of a special case
for 0, so makes sense to implement in a central place.
2023-07-06 19:08:42 +09:00
Dean Herbert
7a3a14e50d
Add sample trigger tests covering rewinding of gameplay
2023-07-06 19:08:42 +09:00
Dean Herbert
af3f9086e5
Expose rewinding state of IGameplayClock
s
...
The implementation of this requires a bit of a special case
for 0, so makes sense to implement in a central place.
2023-07-06 14:16:31 +09:00
Dean Herbert
a98a36872e
Bring realm library up-to-date
2023-07-06 13:37:43 +09:00
Dean Herbert
51b0d18c04
Fix weird test assertion output
2023-07-05 18:44:27 +09:00
Bartłomiej Dach
b0f6b22fa7
Add assertions covering correctness of judged flags on entry
2023-07-04 23:48:46 +02:00
Bartłomiej Dach
2b098bdf61
Add test coverage for mixed pooled/non-pooled usages
2023-07-04 23:41:06 +02:00
Bartłomiej Dach
7052f87eb8
Add even more safety against unloaded components
2023-06-27 21:21:14 +02:00
Bartłomiej Dach
9681ee7eeb
Fix broken test step
2023-06-27 20:29:27 +02:00
Bartłomiej Dach
ada9c48bde
Attempt to fix more test failures
2023-06-27 20:17:58 +02:00
Dean Herbert
8bd6f7a46a
Rename ClicksPerSecondCalculator
to ClicksPerSecondController
2023-06-27 16:38:46 +09:00
Dean Herbert
e21583ff1b
Refactor InputCountController
to not require being added to foreign body via Attach
...
I've made the flow match `ClicksPerSecondCalculator` as close as
possible. Hopefully this reads better.
2023-06-27 16:36:00 +09:00
Dean Herbert
e99de0eb5d
Add safety to tests to ensure loaded
2023-06-27 16:04:34 +09:00
Bartłomiej Dach
9c87d42f2b
Attempt to remedy HUD overlay test failure by waiting more
2023-06-26 22:41:31 +02:00
Bartłomiej Dach
7200855d46
Rename Judgement{Tally -> CountController}
2023-06-26 19:30:04 +02:00
Bartłomiej Dach
8d91580dc1
Rename {KeyCounter -> InputCount}Controller
2023-06-26 19:27:42 +02:00
tsrk
350d722c8d
Merge branch 'master' into hud/kc-skinnable
2023-06-25 15:42:08 +02:00
Bartłomiej Dach
25842105ce
Merge pull request #23976 from peppy/gameplay-sample-trigger-source-correctness
...
Adjust `GameplaySampleTriggerSource` to only switch samples when close enough to the next hit object
2023-06-25 08:23:55 +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
2f77675fe7
Fix errors in tests due to mismatching NRT annotations
2023-06-20 21:57:32 +02:00
Dean Herbert
92e89c7df7
Update test expectations
2023-06-20 21:02:34 +09:00
Dean Herbert
04dad6c6e8
Use IGameplayClock
to ensure our clock source is correct
2023-06-20 20:47:56 +09:00
tsrk
61101335cc
test: fix KeyCounterController
not provided as a dependency
2023-06-16 19:00:09 +02:00
tsrk
f9321a24d9
test: change hideTarget drawable and testing logic
...
Doesn't change what it needs to test conceptually
2023-06-16 17:24:40 +02:00
Ruki
aba8219d06
Merge branch 'master' into hud/kc-skinnable
2023-06-15 15:48:43 +02:00
tsrk
7e70598773
test: move back key counter tests in ctor
2023-06-15 12:02:30 +02:00
tsrk
42b740a175
Merge branch 'master' into hud/kc-skinnable
2023-06-14 22:19:45 +02:00
tsrk
c637fddf73
refactor: decouple Trigger logic from KeyCounterDisplay
...
This allows to keep a coeherent state regardless of the progress of the play
2023-06-14 21:13:35 +02:00
tsrk
758831b983
test: remove hard usages of KeyCounterDisplay
2023-06-14 13:25:24 +02:00
Dean Herbert
062fd58602
Add test to known time
2023-06-12 16:43:28 +09:00