1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-14 16:52:54 +08:00
Commit Graph

920 Commits

Author SHA1 Message Date
Dan Balasescu
93c68e4329 More test hardening around ClientAPIRoom usages 2022-07-01 19:49:27 +09:00
Dean Herbert
6baccad058
Merge pull request #18821 from ggliv/locked-room-filter
Add room access type filter to multiplayer lounge screen
2022-07-01 19:37:43 +09:00
Dan Balasescu
b64c0d011c Isolate client's Room from TestMultiplayerClient 2022-07-01 19:23:25 +09:00
Dan Balasescu
0be858b5bf Rename APIRoom -> ClientAPIRoom, remove unused asserts 2022-07-01 19:21:59 +09:00
Dean Herbert
e213c1a4ef Rename enum to explicitly mention it is a filter 2022-07-01 17:27:03 +09:00
Dean Herbert
9911c6cbf0
Merge branch 'master' into locked-room-filter 2022-07-01 17:17:01 +09:00
Dean Herbert
8f8c2a8c9a Remove one flaky test description (fixed via #18966) 2022-07-01 16:55:47 +09:00
Dan Balasescu
58c9bb031f Apply PR reviews/fixes 2022-07-01 16:51:15 +09:00
Dan Balasescu
c22e77e481 Fix test sometimes referencing old ModSelect object 2022-07-01 16:46:27 +09:00
Dean Herbert
b597843579 Mark and document remaining flaky tests 2022-07-01 16:17:40 +09:00
Dean Herbert
84ecd524c8 Move wait steps upwards 2022-06-30 17:58:43 +09:00
Dean Herbert
7ab8335935 Fix various multiplayer test failures due to not waiting for ongoing operation
As seen at
https://teamcity.ppy.sh/buildConfiguration/Osu_Build/1138?hideProblemsFromDependencies=false&hideTestsFromDependencies=false&expandBuildChangesSection=true&expandBuildTestsSection=true.
2022-06-30 17:42:45 +09:00
Dean Herbert
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
Bartłomiej Dach
489ed5d34d
Rename test method 2022-06-23 18:04:38 +02:00
Gabe Livengood
454eff43c5
publicity -> accesstype 2022-06-23 11:40:25 -04:00
Gabe Livengood
9a15adbfff
add an all option to publicity filter 2022-06-23 11:24:28 -04:00
Gabe Livengood
2def6d809b
refactor to use enum dropdown 2022-06-23 11:02:27 -04:00
Dean Herbert
7ef8b7df5f Add timeout for all ManualResetEventSlim.Wait invocations
Timeout values were taken as best-guesses of upper values we'd expect
from sane execution.
2022-06-23 14:46:00 +09:00
Gabe Livengood
a03cfbc2d4
add test coverage 2022-06-22 17:01:42 -04:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Bartłomiej Dach
6f1437e73d
Fix compilation failure due not applying rename fully 2022-06-02 21:18:09 +02:00
Dan Balasescu
793dfe2bc8 Mark players as playing 2022-06-02 14:22:45 +09:00
Dan Balasescu
600da89f72 Fix disposing previous leaderboard too late 2022-06-02 14:22:15 +09:00
Dan Balasescu
13d85b8cc7 Merge branch 'scoreprocessor-cleanup' into multiplayer-leaderboard-user-mods-2 2022-05-31 19:53:37 +09:00
Dan Balasescu
22d998dc2a Use new score processor in MultiplayerGameplayLeaderboard 2022-05-30 19:26:26 +09:00
Dean Herbert
2f57849bcb Fix unexpected assertion failure 2022-05-27 20:59:00 +09:00
Dean Herbert
ef47b380c6 Add featured artist playlist category 2022-05-27 20:18:46 +09:00
Bartłomiej Dach
af1d4d3aee
Use more proper button subtypes in tests 2022-05-25 23:06:12 +02:00
Bartłomiej Dach
4f8b6b52ba
Add failing test coverage for select/deselect all enable behaviour 2022-05-25 21:49:31 +02:00
Dan Balasescu
7d0470794b
Merge pull request #18353 from frenzibyte/spectator-catch-up-work-alt
Disallow multi-spectator player clocks from being started/stopped externally
2022-05-23 13:59:54 +09:00
Bartłomiej Dach
0bef2ca752
Adjust test slightly
* Import `osuTK.Input` instead of using full qualified name
* Use some more straightforward assertions
2022-05-22 19:27:20 +02:00
maromalo
fc25d248ad Test coverage + no virtual 2022-05-21 18:16:29 -03:00
Salman Ahmed
d73afcaf48 Fix existing test coverage false-passing
Also improves general test coverage to test more realisticly, in order
to produce accurate results.
2022-05-21 17:12:04 +03:00
Dean Herbert
b6575c216b Allow selecting all mods at free mod select using ctrl+a 2022-05-15 03:25:14 +09:00
Bartłomiej Dach
62f6caf76d
Rename ModSelect{Screen -> Overlay} test scenes 2022-05-11 18:04:39 +02:00
Bartłomiej Dach
76c63f1d0a
Rename ModSelect{Screen -> Overlay} in place of removed old design 2022-05-10 22:56:50 +02:00
Bartłomiej Dach
4a3447f59f
Remove old free mod select overlay 2022-05-10 21:45:57 +02:00
Dan Balasescu
a16f2349aa Fix next queued item not selecting after gameplay 2022-05-09 17:55:42 +09:00
Salman Ahmed
077c77d524 Add method for scaling results screen in tests 2022-05-08 16:00:07 +03:00
Bartłomiej Dach
5d6d7bb324
Fix incorrect assert in multiplayer song select test scene 2022-05-07 13:15:16 +02:00
Bartłomiej Dach
e7e7486a8e
Merge branch 'mod-overlay/back-button' into mod-overlay/integration 2022-05-07 10:59:30 +02:00
Bartłomiej Dach
9d3e67b10d
Update free mod select/deselect all test after back button addition 2022-05-07 10:25:23 +02:00
Bartłomiej Dach
e1953c484c
Add test coverage for selecting/deselecting all mods on free mod select 2022-05-07 09:50:08 +02:00
Bartłomiej Dach
380cd1e036
Add test coverage for lack of customisation on free mod select 2022-05-06 21:35:22 +02:00
Dean Herbert
060461a431 Add test coverage of multiplayer gameplay exit flow 2022-05-06 15:22:22 +09:00
Bartłomiej Dach
d296f78dfe
Replace references to old mod select classes in multiplayer match screen test 2022-05-05 22:16:57 +02:00
Bartłomiej Dach
ecc2805099
Replace references to old mod select classes in match song select test
Also note the change from `songSelect.ChildrenOfType<>()...` to
`this.ChildrenOfType<>()...` - because the new design is registered at
game-level, the mod select is not a child of the song select screen
anymore.
2022-05-05 22:16:57 +02:00
Bartłomiej Dach
199bdb8e7d
Replace reference to old mod select in multiplayer test 2022-05-05 22:16:56 +02:00
Salman Ahmed
a26793cd65 Add missing Test prefix 2022-05-05 06:12:24 +03:00
Salman Ahmed
f28978b856 Handle against playlists which disallow selection
`SelectedItem.Disabled` is also not checked against in the select-via-click flow inside `DrawableRoomPlaylistItem` (only `AllowSelection` is checked).
2022-05-05 05:48:35 +03:00
Bartłomiej Dach
ec27fa8e85
Add test coverage for keyboard selection 2022-05-04 13:15:10 +02:00
Dan Balasescu
b293d3923c Merge branch 'master' into multiplayer-force-start-2 2022-04-23 01:03:55 +09:00
Bartłomiej Dach
e9bd87545e
Fix flaky test in free mod select test scene 2022-04-22 00:07:00 +02:00
Dan Balasescu
08d250fe58 Rename MatchStarted() -> GameplayStarted() 2022-04-21 22:39:24 +09:00
Bartłomiej Dach
4b6d42c7e8
Add assertion covering free mod selection mod validity filter 2022-04-17 23:28:52 +02:00
Bartłomiej Dach
9942b0a946
Add test scene for free mod select screen 2022-04-17 23:28:52 +02:00
Dan Balasescu
8a55f9b968
Merge pull request #17302 from peppy/fix-spectator-seeks
Fix spectator not starting from current player position
2022-04-15 13:28:49 +09:00
Dan Balasescu
9de4d416e2 Merge branch 'master' into fix-spectator-seeks 2022-04-14 18:54:52 +09:00
Dean Herbert
0a7fbcad1e
Merge branch 'master' into match-start-control-test-refactor 2022-04-13 22:26:10 +09:00
Dean Herbert
c77a7b75d3 Tidy things up 2022-04-13 21:12:35 +09:00
Dean Herbert
8b1fd051c6 Fix remaining autostart and gameplay tests 2022-04-13 21:04:15 +09:00
Dean Herbert
c0ad91796d Fix gameplay start flow 2022-04-13 20:57:40 +09:00
Dean Herbert
8a7b37856c Implement IsHost to return correct value for current state 2022-04-13 20:51:05 +09:00
Dean Herbert
4b6a9fbf47 Reimplement beatmap availability test 2022-04-13 20:41:56 +09:00
Dean Herbert
331242d585 Update transfer host logic and simplify local user checks 2022-04-13 20:38:39 +09:00
Dean Herbert
0a5a3415f8 Setup host switching and avoid starting gameplay 2022-04-13 20:28:53 +09:00
Dean Herbert
ca44d2c4dc Setup start/stop requests 2022-04-13 17:36:27 +09:00
Dean Herbert
1f01714ec2 Apply initial structural changes to TestSceneMatchStartControl 2022-04-13 17:36:27 +09:00
Dan Balasescu
3d27d3c536
Merge pull request #17786 from peppy/gameplay-leaderboard-update-totals-mode-change
Fix multiple issues with gameplay leaderboard (and tests)
2022-04-13 16:05:35 +09:00
Dean Herbert
fbf0e5a45c Remove startFromSkipTarget parameter and update usages that required said behaviour 2022-04-13 14:25:43 +09:00
Dean Herbert
9c68b3edc5 Merge branch 'master' into fix-spectator-seeks 2022-04-13 12:33:41 +09:00
Dan Balasescu
abf7954a9c
Merge pull request #17792 from peppy/multi-match-footer-test-remove
Fix `MultiplayerMatchFooter` test crash due to missing `PopoverContainer`
2022-04-13 10:53:27 +09:00
Dan Balasescu
76517cecab
Merge pull request #17789 from peppy/rank-range-pill-test-refactor
Refactor `TestSceneRankRangePill` to not depend on `TestMultiplayerClient`
2022-04-13 10:46:00 +09:00
Dean Herbert
d73be7f177
Reword comment to read clearer
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-04-13 09:36:44 +09:00
Bartłomiej Dach
63e2a84d7f
Nest one more container to fix popover not being dismissable 2022-04-12 20:54:54 +02:00
Dean Herbert
ef7ab12b40 Fix MultiplayerMatchFooter test crash due to missing PopoverContainer
Clicking the countdown button would crash. I did consider removing the
test altogether but maybe it'll be useful in the future?
2022-04-12 23:01:39 +09:00
Dean Herbert
1ebbef88ec Refactor GameplayChatDisplay test scene to not require MultiplayerTestScene inheritance 2022-04-12 22:56:48 +09:00
Dean Herbert
20eca9bf6a Refactor TestSceneRankRangePill to not depend on TestMultiplayerClient 2022-04-12 19:39:24 +09:00
Dean Herbert
8b1cee75fa Use BindableLong instead of BindableInt for user score tracking 2022-04-12 14:13:07 +09:00
Dean Herbert
22c75a518e Fix headers not getting reset on re-run of test 2022-04-12 12:38:15 +09:00
Dean Herbert
f29e329700 Move user count to a constant to allow easier adjustment 2022-04-12 12:11:51 +09:00
Dean Herbert
577e29351e Ensure players are always on both leaderboard teams
In a very rare case, the randomisation may cause all users to be on one
team, causing a test failure. The odds make it basically impossible, but
if adjusting the number of users in the test scene this can more readily
be hit.
2022-04-12 11:46:22 +09:00
Dean Herbert
a0e3a2102a Also expand match score component when leaderboard is (in test) 2022-04-12 10:49:57 +09:00
Dean Herbert
09d560c93e Add test coverage of spectator requests 2022-04-11 19:27:14 +09:00
Dean Herbert
6a61fd95eb Tidy up base implementation 2022-04-11 19:19:45 +09:00
Dean Herbert
b52f070fdb Update existing multiplayer leaderboard tests to use new mocked implementation 2022-04-11 19:15:57 +09:00
Dean Herbert
0ccac24f76 Split out base implementation of MultiplayerGameplayLeaderboard test 2022-04-11 19:15:46 +09:00
Dean Herbert
779f7390b7 Add test coverage of DrawableRoom actually showing post-retrieval text 2022-04-11 13:44:34 +09:00
Dean Herbert
d17890ca9a Replace a couple more local test beatmap cases which can instead use TestResources methods 2022-04-06 15:04:15 +09:00
Dean Herbert
220d7bc6db Fix dangerous realm operation in TestSceneMultiplayerMatchSongSelect
The import process was running on the async load thread, but then
accessed from the access thread later on. This seemed to somehow pass
fine in headless runs, but would fail on visual test execution
(specifically on `TestBeatmapConfirmed()`).
2022-04-06 14:01:41 +09:00
Dean Herbert
a3695c7e97
Merge branch 'master' into fix-spectator-seeks 2022-04-06 12:58:43 +09:00
Dan Balasescu
6e6271d0c0 Fix "server-side" room playlist not updated
Remove unused using
2022-04-01 18:32:10 +09:00
Dan Balasescu
37dea0ff21 Add failing test case 2022-04-01 17:05:11 +09:00
Dean Herbert
c3a0f0d6b8 Update tests in line with new button behaviour 2022-03-26 14:43:41 +09:00
Dean Herbert
0146717fcb Adjust test button sizing to better match actual usage 2022-03-26 14:29:31 +09:00
Dean Herbert
f92a31cd39
Merge pull request #17402 from smoogipoo/multiplayer-auto-countdown
Add multiplayer auto-start countdown timer
2022-03-25 20:31:14 +09:00
Dean Herbert
76abce4867 Add missing wait calls on async test steps 2022-03-25 18:38:26 +09:00
Dan Balasescu
c1649714f4 Add a few more ready button tests 2022-03-25 17:12:00 +09:00
Dan Balasescu
d5a37c2237 Remove irrelevant test 2022-03-25 17:06:04 +09:00
Dean Herbert
aa9e642e40
Merge branch 'master' into pin-multiplayer-host 2022-03-25 16:49:35 +09:00
Dan Balasescu
f0d132b16e Rename FinishCountdown() -> SkipToEndOfCountdown() 2022-03-24 15:21:46 +09:00
Dan Balasescu
96a447f68b Rename Multiplayer prefix to button classes 2022-03-24 14:28:38 +09:00
Dan Balasescu
90c7945bca Re-remove PopoverButton class with better test fix 2022-03-24 14:26:31 +09:00
Dean Herbert
6f529cf7a4 Merge branch 'master' into fix-spectator-seeks 2022-03-24 14:24:20 +09:00
Dan Balasescu
547418e47e Revert "Remove PopoverButton class"
This reverts commit 6b712be97d.
2022-03-24 11:15:51 +09:00
Dan Balasescu
34a367b369 Merge branch 'master' into multiplayer-countdown-timers-2 2022-03-23 15:40:50 +09:00
Dan Balasescu
a83a90e675 Rename countdown Delay -> Duration 2022-03-23 15:21:16 +09:00
Dan Balasescu
6b712be97d Remove PopoverButton class 2022-03-23 10:40:38 +09:00
Dan Balasescu
9138aaf780 Split MultiplayerReadyButton 2022-03-23 10:38:56 +09:00
Dean Herbert
483fb84b56 Fix typo in FinishCountdown method 2022-03-22 16:50:13 +09:00
Dean Herbert
2c4a6c2465 Add missing async safeties to new tests 2022-03-22 16:46:42 +09:00
Salman Ahmed
5c1e11c153
Merge branch 'master' into queue-list-counter 2022-03-21 05:01:09 +03:00
hwabis
06136b2247 Revert OsuTabItem Text to protected, update tab count test 2022-03-20 21:37:02 -04:00
hwabis
63b6686384 make test name clearer 2022-03-20 16:28:05 -04:00
hwabis
8fbdd06895 add queue tab count test 2022-03-20 16:24:41 -04:00
Dan Balasescu
04f4e81852 Rename start countdown request 2022-03-18 21:05:19 +09:00
Dan Balasescu
c97aa3a26f Fix intermittent ready button test failure 2022-03-18 18:57:34 +09:00
Dean Herbert
4bc7c69bf7 Fix test regression due to missing argument 2022-03-18 16:27:14 +09:00
Dean Herbert
b5ff9ed13a Add test coverage of multiplayer being paused when users are still loading 2022-03-18 15:07:42 +09:00
Dan Balasescu
72843a6797 Add support for starting/stopping countdowns 2022-03-18 14:33:09 +09:00
Dan Balasescu
efce471f0b Add countdown button + popover 2022-03-18 14:31:57 +09:00
Dan Balasescu
b76a87e6f8 Split ready button visual logic into button itself 2022-03-18 14:31:57 +09:00
Salman Ahmed
a7ddfc7f51 Add step for returning host back to local user 2022-03-18 08:08:31 +03:00
Salman Ahmed
d0cc68bc97 Add test coverage 2022-03-18 07:26:10 +03:00
Salman Ahmed
4adb8c205f Add step to switch hosts randomly in TestManyUsers 2022-03-18 07:18:49 +03:00
Dean Herbert
e3ab5de8cd Tidy up constructor logic overlap with gameplayStartTime 2022-03-18 01:35:50 +09:00
Dan Balasescu
da0ffab14e Integrate ready button implementation 2022-03-17 18:43:04 +09:00
Dan Balasescu
461d41529b Integrate spectate button implementation 2022-03-17 18:36:33 +09:00
Dean Herbert
94ff6a338f
Merge branch 'master' into scoreprocessor-rework 2022-03-09 23:04:18 +09:00
Dan Balasescu
729af28a64 Fix intermittent test failure 2022-03-09 00:48:12 +09:00
Dan Balasescu
94d5e2f264 Fix test failure ripple through entire TestScene 2022-03-09 00:48:03 +09:00
Dan Balasescu
f1c40bd9ed Rework GetScore() method signatures + implementations
Rename legacy-facing overload to mention as much
2022-03-08 22:30:44 +09:00
Dan Balasescu
e947c97e10
Merge branch 'master' into spectator-reliability 2022-02-25 20:20:30 +09:00
Dean Herbert
926abf7a0c
Merge pull request #16985 from smoogipoo/multi-spectator-chat
Add chat display to multiplayer spectator
2022-02-25 20:19:07 +09:00
Dan Balasescu
3a03833912
Merge pull request #16890 from peppy/beatmap-decoder-ruleset-store
Fix `LegacyBeatmapDecoder` not populating correct rulesets
2022-02-25 19:03:43 +09:00
Dan Balasescu
f9d9ad388b Add chat display to multiplayer spectator screen 2022-02-25 16:03:28 +09:00
Dean Herbert
c94e7e2abe Add ability to simulate network failures to TestSpectatorClient 2022-02-24 02:23:48 +09:00
Dean Herbert
14c8ce50a0 Prefix all test send methods in TestSpectatorClient with Send 2022-02-24 02:23:48 +09:00
Dean Herbert
98c008b95f Fix test failures due to order change 2022-02-21 19:48:39 +09:00
Dean Herbert
ab8b502709 Add test coverage of spotlights being at the top of the listing 2022-02-21 18:01:46 +09:00
Dean Herbert
631c23ea3a Merge branch 'master' into beatmap-decoder-ruleset-store 2022-02-18 16:52:33 +09:00
Dean Herbert
0138f22c8d Update existing usages to point to RealmRulesetStore 2022-02-16 17:13:54 +09:00
Dean Herbert
7e24b36f26 Merge branch 'master' into remove-playlistitem-beatmap 2022-02-16 14:24:57 +09:00
Dean Herbert
6a08fd57ef Rename "client" fields in tests to specify whether spectator or multiplayer 2022-02-16 09:52:18 +09:00
Dean Herbert
187870b794 Merge branch 'master' into fix-multi-cache-dependencies 2022-02-16 09:44:37 +09:00
Dan Balasescu
ea5bb46fb8
Merge branch 'master' into net6 2022-02-16 00:40:04 +09:00
Dan Balasescu
f5b34e0313 Fix some test failures due to now-async lookups 2022-02-16 00:01:22 +09:00
Dan Balasescu
bdc3b76df0 Remove beatmap bindable from PlaylistItem 2022-02-15 23:50:08 +09:00
Dan Balasescu
539cbe62c6 Fix incorrect usages of user lookup cache in tests 2022-02-15 21:23:24 +09:00
Dan Balasescu
c48a0dc993 Move UserLookupCache to online play test dependencies 2022-02-15 20:56:46 +09:00