Bartłomiej Dach
8757e08c2c
Fix test failures due to automatic break generation kicking in
2024-06-19 11:32:08 +02:00
Bartłomiej Dach
67ca7e4135
Implement toggling visibility of pass and fail storyboard layers
...
Closes https://github.com/ppy/osu/issues/6842 .
This is a rather barebones implementation, just to get this in place
somehow at least. The logic is simple - 50% health or above shows pass
layer, anything below shows fail layer.
This does not match stable logic all across the board because I have
no idea how to package that. Stable defines "passing" in like fifty
ways:
- in mania it's >80% HP
(bb57924c15/osu
!/GameModes/Play/Rulesets/Mania/RulesetMania.cs#L333-L336)
- in taiko it's >80% *accuracy*
(bb57924c15/osu
!/GameModes/Play/Rulesets/Taiko/RulesetTaiko.cs#L486-L492)
- there's also the part where "geki additions" will unconditionally set
passing state
(bb57924c15/osu
!/GameModes/Play/Player.cs#L3561-L3564)
- and also the part where at the end of the map, the final passing state
is determined by checking whether the user passed more sections than
failed
(bb57924c15/osu
!/GameModes/Play/Player.cs#L3320)
The biggest issues of these are probably the first two, and they can
*probably* be fixed, but would require a new member on `Ruleset` and I'm
not sure how to make one look, so I'm not doing that at this time
pending collection of ideas on how to do that.
2024-06-14 13:59:02 +02:00
Bartłomiej Dach
61a415fed2
Add client/server models & operations for "daily challenge" feature
2024-05-17 10:58:08 +02:00
Dean Herbert
fd3f4a9e7b
Preserve storyboard events when saving a beatmap in the editor
...
Until we have full encoding support for storyboards, this stop-gap
measure ensures that storyboards don't just disappear from existence.
2024-04-30 00:01:56 +08:00
Dean Herbert
4184a5c1ef
Add flag to allow backwards seeks in tests
2024-02-29 23:05:28 +08:00
Dean Herbert
c87bc8b597
Merge pull request #27180 from bdach/better-submission-failure-messaging
...
Add better submission failure messaging
2024-02-19 21:38:23 +08:00
Dean Herbert
415a65bf59
Add failing tests for beatmap inconsistencies
2024-02-18 19:32:21 +08:00
Bartłomiej Dach
898d5ce88b
Show selected submission failure messages even in solo
...
Previously, if a `SubmittingPlayer` instance deemed it okay to proceed
with gameplay despite submission failure, it would silently log all
errors and proceed, but the score would still not be submitted. This
feels a bit anti-user in the cases wherein something is genuinely wrong
with either the client or web, so things like token verification
failures or API failures are now shown as notifications to give the user
an indication that something went wrong at all.
Selected cases (non-user-playable mod, logged out, beatmap is not
online) are still logged silently because those are either known and
expected, or someone is messing with things.
2024-02-15 10:55:08 +01:00
Dan Balasescu
50f9c61029
Fix multiplayer tests
2024-02-02 22:34:48 +09:00
Dan Balasescu
20ae88b0a0
Revert unnecessary changes
2024-02-02 21:05:50 +09:00
Dan Balasescu
b44f77cee1
Update R# + fix inspections
2024-02-02 21:00:28 +09:00
Dean Herbert
4a2602a775
Merge branch 'master' into 2fa
2024-01-29 16:57:29 +09:00
Dean Herbert
ef94eff574
Rename PollingChatClientConnector
to better describe usage
2024-01-29 16:56:28 +09:00
Bartłomiej Dach
b39b112548
Merge branch 'decouple-notification-websocket-from-chat' into 2fa
2024-01-26 11:21:33 +01:00
Bartłomiej Dach
243c2bc9b4
Make sure the polling connector actually auto-starts itself
2024-01-26 11:21:23 +01:00
Bartłomiej Dach
3d3506b906
Merge branch 'decouple-notification-websocket-from-chat' into 2fa
2024-01-25 14:51:42 +01:00
Bartłomiej Dach
c463aa5ba1
xmldoc everything
2024-01-25 14:47:29 +01:00
Bartłomiej Dach
de52f0a80c
Decouple notifications websocket handling from chat operations
...
This is a prerequisite for https://github.com/ppy/osu/pull/25480 .
The `WebSocketNotificationsClient` was tightly coupled to chat specifics
making it difficult to use in the second factor verification flow.
This commit's goal is to separate the websocket connection and message
handling concerns from specific chat logic concerns.
2024-01-25 14:47:29 +01:00
Bartłomiej Dach
5d26afc531
Fix OsuGameTestScene
not clearing second auth factor
2024-01-23 17:00:16 +01:00
Dean Herbert
82e7643df5
Update IPC usages
...
Of note, I've disabled IPC on visual test runners as we generally don't
use IPC in these cases. Having it set means that the game will not open
while visual tests are open, which has been a complaint from devs in the
past.
2024-01-18 19:45:36 +09:00
Bartłomiej Dach
50eba9ebdb
Reduce code duplication in test
2024-01-08 12:52:14 +01:00
Dean Herbert
f0aeeeea96
...in a safer way
2024-01-04 17:13:21 +09:00
Dean Herbert
df99a37254
Fix another realm null inspection
2024-01-04 17:11:40 +09:00
Dan Balasescu
88a5ba8167
Add mania/osu sudden death mod tests
2023-12-22 16:43:09 +09:00
Dan Balasescu
9c35e25036
Add failing tests
2023-12-22 13:58:12 +09:00
Bartłomiej Dach
86e003aec1
Update currently online display tests
2023-12-06 19:37:35 +01:00
Dan Balasescu
f3530a79b1
Add test
2023-12-01 21:34:20 +09:00
Dan Balasescu
a94180c8c6
Rename LoadAborted -> GameplayAborted, AbortGameplayReal -> AbortMatch
2023-12-01 18:26:59 +09:00
Dan Balasescu
894c31753b
Add initial support for aborting multiplayer games
2023-12-01 15:31:06 +09:00
Dean Herbert
537c9e031d
Merge pull request #25522 from bdach/no-concurrent-connections
...
Implement flow allowing disconnection from online services when another client instance for same user is detected
2023-11-28 19:09:38 +09:00
Dean Herbert
efb6c30252
Merge branch 'master' into scoring-test-mods
2023-11-28 18:38:50 +09:00
Bartłomiej Dach
42fada578e
Centralise and improve messaging around online state
...
When the server requests a disconnect due to a user connecting
via a second device, the client will now log the user out on the first
device and show a notification informing them of the cause of
disconnection.
2023-11-21 15:15:46 +09:00
Bartłomiej Dach
1c612e2e0c
Implement client-side disconnection flow
2023-11-21 15:15:45 +09:00
Dean Herbert
b88e3cd26f
Change ResourceStore
provided to Skin
to be a fallback, not replacement
2023-11-16 20:19:01 +09:00
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
baf4130f3a
Fix test clock no longer accounting for rate changes
2023-10-23 22:28:40 +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
5341a335a6
Bypass Parent
nullability checks for now
2023-10-17 17:48:45 +09:00
Dean Herbert
56e27f1c27
Merge branch 'master' into multiplayer-invites
2023-10-12 18:17:15 +09:00
Dean Herbert
194ad9650d
Remove test scene background stack and use new ChangeBackgroundColour
method
2023-10-12 14:08:31 +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
Bartłomiej Dach
55064c387d
Add mod controls to scoring test scene
2023-10-09 12:59:02 +02:00
Marvin Schürz
574dc67a9e
Add Invited
task to multiplayer client
2023-10-02 22:53:28 +02:00
Dean Herbert
c5397bdbb3
Merge branch 'master' into mania-edit-disable-sv
2023-09-20 14:23:07 +09:00
Dean Herbert
067c487b21
Merge pull request #24450 from cdwcgt/missing-beatmap
...
Fetch missing beatmap when importing replay
2023-09-19 18:40:02 +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
aba98f2985
Merge pull request #24823 from bdach/scoring-test-scene-catch
...
Add scoring test scene for catch
2023-09-19 13:59:11 +09:00
Salman Ahmed
8e992de763
Fix crash when loading player instance without exiting previous instance
2023-09-19 05:09:01 +03:00
Bartłomiej Dach
47764b3012
Fix OsuTestScene.CreateAPIBeatmapSet()
not backlinking set beatmaps to the set
2023-09-18 14:56:06 +02: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
5eccc771c2
Turn off non-perfect judgements for catch scoring test scene
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
Dean Herbert
0f5eff1230
Merge branch 'master' into mania-edit-disable-sv
2023-09-01 19:08:48 +09:00
Bartłomiej Dach
5454d1caa1
Remove global action container input queue workaround
...
As described in #24248 , the workaround employed by
`GlobalActionContainer`, wherein it tried to handle actions with
priority before its children by being placed in front of the children
and not _actually containing_ said children, is blocking the resolution
of some rather major input handling issues that allow key releases to be
received by deparented drawables.
To resolve, migrate `GlobalActionContainer` to use `Prioritised`, which
can be done without regressing certain mouse button flows after
ppy/osu-framework#5966 .
2023-08-21 17:54:08 +02:00
Dan Balasescu
a2fd7707a1
Allow toggling SVs in the editor
2023-08-18 18:55:24 +09:00
Dean Herbert
56eb44d15b
Change TestSpectatorClient
to provide some better fake data for score / acc
2023-08-16 17:14:42 +09:00
Bartłomiej Dach
0ecfb7b36f
Remove unused field
2023-07-08 15:03:33 +02:00
Dean Herbert
04a1550215
Redesign "local input" toggle in manual input tests to be more user-friendly
...
- Only displays when required (there's literally zero case we want to
return input to the test, as this is automatic on next action)
- No longer hugs the right side of the screen (blocking visibility of
some tests).
2023-07-07 13:32:16 +09:00
Dean Herbert
0ab0c52ad5
Automated pass
2023-06-24 01:00:03 +09:00
Bartłomiej Dach
58507291b9
Apply NRT in MemoryCachingComponent
test-only subclasses
2023-06-09 13:48:42 +02:00
Dean Herbert
a842f79ad4
Refactor IWorkingBeatmap.Background
to GetBackground()
2023-06-08 16:19:32 +09:00
Bartłomiej Dach
474f7c2bc0
Fix code quality inspection
2023-06-03 16:50:58 +02:00
Bartłomiej Dach
a9d4556647
Merge branch 'master' into update-multiplayer-room-diff-range
2023-06-03 16:50:09 +02:00
Dean Herbert
7a5349d747
Remove constructor from MultiplayerPlaylistItem
which is only used in tests
2023-05-25 20:09:40 +09:00
Dan Balasescu
6c6f8621c1
Add score processor statistics to replay header
2023-05-19 16:29:24 +09:00
Dan Balasescu
d2380bd840
Remove usages of [ExcludeFromDynamicCompile]
2023-05-08 18:12:56 +09:00
Bartłomiej Dach
8ab3a87b13
Add failing test case covering online ID reset on save
...
This test scene passes at e58e1151f3
and
fails at current master, due to an inadvertent regression caused by
e72f103c17
.
As it turns out, the online lookup flow that was causing UI thread
freezes when saving beatmaps in the editor, was also responsible for
resetting the online ID of locally-modified beatmaps if online lookup
failed.
2023-05-01 18:17:35 +02:00
Bartłomiej Dach
6afa65bd3d
Merge branch 'master' into skinnable-clean-up-documentation
2023-02-17 20:59:18 +01:00
Dean Herbert
7afdcb9383
Merge branch 'master' into hide-resume-overlay
2023-02-16 15:42:14 +09:00
Dean Herbert
a92e42bb84
Rename SkinnableTargetContainer
to SkinComponentsContainer
...
Also use full `SkinComponentsContainerLookup` instead of the sub-type.
This will potentially be useful once we bring in per-ruleset targets.
2023-02-15 18:37:41 +09:00
Dean Herbert
9e04a36d86
Move test to a mod test and add more resilient test logic
2023-02-14 15:07:45 +09:00
Dean Herbert
96fbd04698
Add failing test coverage of skip no longer working in replay playback
2023-02-10 18:57:04 +09:00
Joseph Madamba
f1decb667e
Address todos relating to init-only usages
2023-02-08 17:51:28 -08:00
Dean Herbert
a77baf8717
Output gameplay clock progress in PlayerTestScene
s
2023-02-01 23:42:44 +09:00
Salman Ahmed
c48af79588
Fix test browsers on longer working after framework update
2023-01-21 14:49:47 +03:00
Dean Herbert
1e5dd9165a
Adjust SkinnableTestScene
to give more breathing room to RelativeSize
components
2023-01-18 15:37:46 +09:00
Dean Herbert
53e7873f6c
Merge branch 'master' into fix-pause-gameplay-action-not-closing
2023-01-17 17:41:16 +09:00
Joseph Madamba
08c570849f
Simplify container logic
2023-01-16 23:24:47 -08:00
Salman Ahmed
13c1b8f5a4
Fix intermittent failure in tests with restarting player instances
2023-01-15 16:06:06 +03:00
Joseph Madamba
776b60f3b3
Fix manual input manager test scenes not matching game input hierarchy
...
Fix popover using on key down
Fix popover not expiring when using global action
2023-01-10 15:35:26 -08:00
Bartłomiej Dach
a82f1a6abd
Adjust method naming and copy
2023-01-01 18:50:47 +01:00
Bartłomiej Dach
0e59b55a12
Merge branch 'master' into previewTime
2023-01-01 18:38:19 +01:00
Dean Herbert
4a7d7c6ed9
Use MaxBy
in all locations that can and update inspection level to match dotnet-build
2022-12-19 16:47:10 +09:00
Dean Herbert
dd9a418549
Fix assembly location lookups
2022-12-16 19:19:59 +09:00
Dean Herbert
27c497145f
Fix the MOTHERLOAD of undetected issues that are now visible thanks to net6.0
2022-12-16 18:16:26 +09:00
cdwcgt
a4d28aff6d
fix typo
2022-12-16 10:48:56 +09:00
cdwcgt
984f0b5fa9
Add test for set preview point
2022-12-16 01:35:54 +09:00
Dan Balasescu
caa0b7c290
Move score token to BeginPlaying
2022-12-12 13:59:27 +09:00
Dean Herbert
b7f0310070
Merge pull request #21353 from peppy/no-initial-presence
...
Stop requesting messages as part of initial chat presence
2022-11-30 16:15:23 +09:00
Dean Herbert
61c702c02e
Add new IDependencyInjectionCandidate
interface to non-drawable cached classes
2022-11-29 14:45:26 +09:00
Bartłomiej Dach
894ef15e79
Merge branch 'master' into update-framework
2022-11-26 16:19:36 +01:00
Dan Balasescu
7bc8908ca9
Partial everything
2022-11-27 00:00:27 +09:00
Dean Herbert
53b03df93d
Combine TriangleButton
and RoundedButton
classes
2022-11-24 16:26:57 +09:00
Dean Herbert
efd73ea9da
Rename method to suit better
2022-11-21 15:22:57 +09:00
Dean Herbert
19876ca0fb
Merge branch 'master' into websocket-chat-2
2022-11-11 23:53:42 +09:00
Dan Balasescu
66bbe34116
Move polling clients to osu.Game.Tests namespace
2022-11-04 18:52:57 +09:00
andy840119
4c9c65856c
Remove the nullable disable annotation in the testing beatmap and mark some of the properties as nullable.
...
This class will be used in some check test cases.
2022-10-30 17:03:54 +08:00