1
0
mirror of https://github.com/ppy/osu.git synced 2024-12-21 19:22:56 +08:00
Commit Graph

888 Commits

Author SHA1 Message Date
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
Dan Balasescu
03106e846c Fix test failures due to async mod icon loads 2022-02-15 17:15:00 +09:00
Dan Balasescu
5b765581d8 Fix free mod selection not showing allowed mods 2022-02-15 16:28:15 +09:00
Dan Balasescu
efeba30b9f Remove ruleset and mod bindables from PlaylistItem 2022-02-15 16:28:15 +09:00
Dean Herbert
02f58a82fc Use WaitSafely() in tests where it was not already being used 2022-02-15 02:35:08 +09:00
Dean Herbert
5b30921cbf Merge branch 'master' into net6 2022-02-14 22:06:35 +09:00
Dean Herbert
6005daeba8 Fix fire-and-forget async calls to use WaitSafely 2022-02-11 16:02:42 +09:00
Dan Balasescu
ffc4c64f7e Unify namings across the board 2022-02-09 12:10:07 +09:00
Dan Balasescu
d5269ba05b Merge branch 'fix-spectator-restart-crash' into spectator-state-rework 2022-02-04 17:59:18 +09:00
Dan Balasescu
b41655d5b9 Fix crash when gameplay starts while in multi-spectator screen 2022-02-04 17:47:41 +09:00
Dan Balasescu
d4ebff6ea1 Add failing test 2022-02-03 23:18:22 +09:00
Dan Balasescu
483977d5c8 Merge branch 'master' into spectator-state-rework 2022-02-03 19:59:07 +09:00
Dan Balasescu
fcbba3d948 Rename PlayingUserStates -> WatchingUserStates 2022-02-02 23:11:29 +09:00
Dan Balasescu
b5fb3b7dae Fix crash when selecting swap mod as freemod 2022-02-02 18:42:22 +09:00
Dan Balasescu
502e6af008 Remove PlayingUsers list from SpectatorClient 2022-02-01 14:42:30 +09:00
Salman Ahmed
4f4f60248f Add failing test case 2022-01-30 01:46:10 +03:00
Dean Herbert
5288eedd31 Update all usages of RulesetID and Ruleset.ID to use Ruleset.OnlineID 2022-01-27 15:38:03 +09:00
Dean Herbert
cd71ec0edd Remove ILive<> interface (and use abstract Live<> instead) 2022-01-26 13:38:56 +09:00
Dean Herbert
778d2a71b4 Remove Task from the inner-most Import method in RealmArchiveModelImporter
One of my pending work items for post-realm merge.

The lowest-level import task is no longer asynchronous, as we don't want
it to span multiple threads to allow easier interaction with realm.
Removing the `Task` spec simplifies a heap of usages.

Individual usages should decide whether they want to run the import
asynchronously, by either using an alternative override or spooling up a
thread themselves.
2022-01-25 15:30:29 +09:00
Dean Herbert
3e5c9e8436 Fix cases of Access instead of Realm 2022-01-25 12:58:15 +09:00
Dean Herbert
6eb2c28e41 Rename RealmContextFactory to RealmAccess 2022-01-24 20:38:07 +09:00
Dan Balasescu
3e5d29ed00
Merge pull request #16505 from peppy/remove-base-difficulty-usage
Remove all usage of `BaseDifficulty` (and access `Difficulty` instead)
2022-01-19 13:53:55 +09:00
Dean Herbert
67bf95bc91 Remove all usage of AuthorString 2022-01-18 23:30:40 +09:00
Dean Herbert
7f65f3a47f Remove all usage of BaseDifficulty (and access Difficulty instead) 2022-01-18 22:57:39 +09:00
Dean Herbert
a59dcccab7 Add local ContextFactory caching to all remaining test scenes that create local managers 2022-01-14 19:59:21 +09:00
Dean Herbert
51251e3204 Fix CI reported warnings 2022-01-12 22:39:00 +09:00
Dean Herbert
7dba3c3551 Fix most remaining test issues 2022-01-12 17:49:11 +09:00
Dean Herbert
dd19487eb8 Fix custom import process in TestSceneDrawableRoomPlaylist not working with realm 2022-01-12 17:49:11 +09:00
Dean Herbert
1f9318265e Update ToLive usages in line with recent changes 2022-01-12 17:00:16 +09:00
Dean Herbert
31a3161189 Make tests compile again 2022-01-12 17:00:16 +09:00
Dean Herbert
00e3af3366 Update model manager and many related classes to get things compiling again 2022-01-12 17:00:00 +09:00
Dean Herbert
6a671b0a52 Remove unnecessary assigns of BeatmapSetInfo.Metadata 2022-01-12 16:39:36 +09:00
Dean Herbert
fda529de26 Update usages of APIUser to RealmUser 2022-01-12 16:39:36 +09:00