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
Dean Herbert
954ae60b81
Merge branch 'master' into copy-existing-difficulty
2022-02-16 08:55:12 +09:00
Dan Balasescu
48573d2401
Move test request handling earlier in setup
2022-02-15 23:50:10 +09:00
Dan Balasescu
bdc3b76df0
Remove beatmap bindable from PlaylistItem
2022-02-15 23:50:08 +09:00
Dan Balasescu
ccd265ebe7
Handle beatmap lookup requests in TestRoomRequestsHandler
2022-02-15 23:41:50 +09:00
Dan Balasescu
a5183cec77
Add helper to construct APIBeatmap
2022-02-15 23:41:08 +09:00
Dan Balasescu
2675bb87ff
Add BeatmapLookupCache as another dependency
2022-02-15 21:05:25 +09:00
Dan Balasescu
c48a0dc993
Move UserLookupCache to online play test dependencies
2022-02-15 20:56:46 +09:00
Dan Balasescu
b2276baf71
Seal OnlinePlayTestScene.CreateChildDependencies()
2022-02-15 20:55:57 +09:00
Dan Balasescu
efeba30b9f
Remove ruleset and mod bindables from PlaylistItem
2022-02-15 16:28:15 +09:00
Bartłomiej Dach
e45a2ae0fc
Restructure difficulty copy flow to adapt to latest changes
2022-02-14 22:02:37 +01:00
Bartłomiej Dach
6fd663a718
Apply some renames to convey difference between creation options better
2022-02-13 14:01:23 +01:00
Bartłomiej Dach
a2c2b2bbb3
Add flow for copying existing difficulty content
2022-02-13 14:01:20 +01:00
Dan Balasescu
ffc4c64f7e
Unify namings across the board
2022-02-09 12:10:07 +09:00
Dan Balasescu
09728a29ed
Merge branch 'fix-broken-test-scene' into spectator-state-rework
2022-02-04 22:42:10 +09:00
Dan Balasescu
483977d5c8
Merge branch 'master' into spectator-state-rework
2022-02-03 19:59:07 +09:00
Dean Herbert
b94fe84712
Merge branch 'master' into new-difficulty-creation-v3
2022-02-03 10:48:20 +09:00
Dean Herbert
2731d8e3c2
Merge pull request #16701 from LeNitrous/mod-alternate-osu
...
Add "Alternate" mod for osu! ruleset
2022-02-03 10:41:23 +09:00
Bartłomiej Dach
a8ffc4fc2a
Add editor override to respect IsolateSavingFromDatabase
2022-02-02 21:57:21 +01:00
Bartłomiej Dach
afc48d86df
Add failing test coverage for save after safeties addition
2022-02-02 21:57:10 +01:00
Bartłomiej Dach
0d51c015ad
Add basic test coverage for new difficulty creation
2022-02-02 21:55:34 +01:00
Dan Balasescu
9d1d13c715
Fix up TestSpectatorClient implementation
...
Rather than using a list which is supposed to be updated "client"-side,
now uses the "server"-side list.
2022-02-02 23:05:09 +09:00
Dan Balasescu
6d3bc005ea
Merge branch 'master' into spectator-state-rework
2022-02-02 18:57:04 +09:00
Bartłomiej Dach
75101b1105
Remove unused ruleset ctor params from test beatmap model managers
...
No longer used since 00e3af3366
.
2022-02-01 21:49:41 +01:00
Dan Balasescu
502e6af008
Remove PlayingUsers list from SpectatorClient
2022-02-01 14:42:30 +09:00
Dean Herbert
57f793aff0
Rename dictionary and make private
for added safety
2022-01-31 15:12:08 +09:00
Nitrous
e408d8ef0e
rename Frames
to ReplayFrames
2022-01-29 23:19:51 +08:00
Nitrous
a8eb3f95df
add readonly modifier
2022-01-29 22:54:17 +08:00
Nitrous
b4e516c535
allow test scenes to specify replays manually
2022-01-29 22:31:24 +08:00
Dan Balasescu
3037a3a769
Purge final spectator frames before ending play
2022-01-28 22:26:05 +09:00
Dean Herbert
778eebc94d
Add test coverage of local score import and deletion
2022-01-28 15:50:36 +09:00
Dean Herbert
cb7ae413fe
Ensure test game is always active
2022-01-28 15:50:35 +09:00
Dean Herbert
5288eedd31
Update all usages of RulesetID
and Ruleset.ID
to use Ruleset.OnlineID
2022-01-27 15:38:03 +09:00
Salman Ahmed
7f34085baa
Mark EditorSavingTestScene
as abstract
2022-01-26 17:04:30 +03:00
Salman Ahmed
064468faad
Refactor editor saving test scene for scalability
2022-01-26 07:57:46 +03:00
Salman Ahmed
a93873e8ca
Recreate test beatmap of EditorTestScene
on set up
2022-01-25 13:03:27 +03: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
Dean Herbert
e22aea0613
Apply same fix to OsuGameTestScene
2022-01-24 17:05:49 +09:00
Dean Herbert
1e483ece32
Avoid adding "exit all screens" step when running tests interactively
2022-01-24 16:40:16 +09:00
Dean Herbert
02baad30d7
Merge branch 'master' into global-bindable-thread-safety
2022-01-18 18:12:00 +09:00
Dan Balasescu
73a1f27ce5
Merge branch 'master' into realm-integration/score-and-beatmaps
2022-01-18 17:31:37 +09:00
Dean Herbert
488f044924
Remove one more outdated comment
2022-01-18 16:46:14 +09:00
Dean Herbert
d26f4d50bd
Add test coverage of aggregate room scores displaying correctly
2022-01-18 14:00:12 +09:00
Dean Herbert
da9a60a695
Update broken test scenes to match new OsuTestScene
logic
2022-01-18 13:41:50 +09:00
Dean Herbert
b9aae5569f
Fix OsuTestScene
potentially mutating global bindables
2022-01-18 13:29:24 +09:00
Bartłomiej Dach
03e4ec4214
Merge branch 'master' into realm-integration/score-and-beatmaps
2022-01-15 14:45:42 +01:00
Susko3
19467e58c1
Remove unused params from BDL methods
2022-01-15 01:06:39 +01:00
Dean Herbert
e558fd69d2
Remove unnecessary null check and associated comment
2022-01-14 23:26:29 +09:00
Dean Herbert
b7ee6d1866
Add protections against test null refs when beatmap load fails
2022-01-12 17:49:11 +09:00
Dean Herbert
e74a5022c9
Fix multiple tests via null checks and changing ToLive
to Detach
...
flow
2022-01-12 17:00:17 +09:00
Dean Herbert
33060990b7
Temporarily disable WorkingBeatmapCache
and fix multiple invalid data flows
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
b8cd3cdbbc
Various updates to ruleset and primary key usages to move closer to realm support
2022-01-12 16:57:13 +09:00
Dean Herbert
89d6ffa7f3
Use RealmContextFactory
instead of EF
2022-01-12 16:39:36 +09:00
Dean Herbert
031a40af6a
Replace usages of Wait
with WaitSafely
2022-01-04 11:51:41 +09:00
Dean Herbert
83a1d39f80
Merge pull request #16231 from bdach/ruleset-config-cache-overwriting-3
...
Fix ruleset config cache potentially not working correctly in test contexts
2021-12-24 17:18:42 +09:00
Dean Herbert
ce4389576f
Merge branch 'master' into fix-incorrect-reference
2021-12-24 10:03:11 +09:00
Bartłomiej Dach
c429c74d89
Expose and use test ruleset config cache in test scenes
2021-12-23 19:42:26 +01:00
Bartłomiej Dach
77da1e12d5
Add test implementation of the ruleset config cache
2021-12-23 19:40:55 +01:00
Dan Balasescu
998b07db90
Fix TestMultiplayerClient referencing the wrong room
2021-12-23 19:14:09 +09:00
Bartłomiej Dach
1040590844
Add cancellation support to game-side IResourceStore
s
2021-12-23 10:33:17 +01:00
Dean Herbert
9aff646ff4
Centralise all multiplayer button clicking test logic
...
This adds the "wait for enabled" check in a way that can be easily
reused, as it keeps getting missed in test implementations.
This particular commit hopefully fixes
https://github.com/ppy/osu/runs/4583845033?check_suite_focus=true .
2021-12-21 13:49:51 +09:00
Dean Herbert
6907a9a3cc
Name some screen stacks for better logging context
2021-12-20 18:24:14 +09:00
Dan Balasescu
9316abc278
Better fix for intermittent multiplayer tests
2021-12-20 13:10:13 +09:00
Bartłomiej Dach
54790bb758
Merge branch 'master' into fix-realm-post-storage-migration-failure
2021-12-17 00:19:46 +01:00
Dean Herbert
33cf4ba7f6
Merge pull request #16075 from smoogipoo/prevent-idle-transition-during-load
...
Add AbortGameplay() to fix state transition race conditions during multiplayer load
2021-12-15 19:59:19 +09:00
Dan Balasescu
9ade8069a1
Rename to AbortGameplay() and handle additional states
2021-12-15 06:40:28 +09:00
Dean Herbert
f9a2db5ec6
Add accessibility to realm factory via IStorageResourceProvider
...
We might need to rename this class..
2021-12-14 14:19:49 +09:00
Dan Balasescu
750bfae909
Fix TestMultiplayerClient not handling all users bailing from gameplay
2021-12-14 11:35:56 +09:00
Dan Balasescu
2f1dc91211
Add AbortLoad() method to abort gameplay loads
2021-12-14 11:30:42 +09:00
Dan Balasescu
6057037e35
Move playlist item beatmap population to MatchSubScreen
2021-12-10 20:08:59 +09:00
Dan Balasescu
de0f37b08d
Separate editing and adding playlist items
2021-12-10 15:26:48 +09:00
Dan Balasescu
4d1c06c061
Add support for host enqueueing in TestMultiplayerClient
2021-12-10 01:03:36 +09:00
Dan Balasescu
80b2768a5f
Mirror recent server-side changes
2021-12-09 04:18:54 +09:00
Dan Balasescu
4df2047a58
Prevent removal of expired items in TestMultiplayerClient
2021-12-09 04:12:24 +09:00
Dan Balasescu
c34c580ad4
Add client-side + interface implementation
2021-12-09 03:08:59 +09:00
Dan Balasescu
52230a6f00
Merge branch 'master' into multiplayer-delayed-playlist-load-broken
2021-12-07 22:45:05 +09:00
Dan Balasescu
d5cdb1bb87
Update test multiplayer client implementation
2021-12-07 00:01:07 +09:00
Dan Balasescu
991becdfa7
Merge branch 'master' into realm-integration/skins-rebase
2021-12-06 16:34:31 +09:00
Dean Herbert
452fa93444
Merge branch 'master' into realm-integration/skins-rebase
2021-12-06 15:21:02 +09:00
Dan Balasescu
fae41b2182
Remove one more piece of code
2021-12-06 15:17:33 +09:00
Dan Balasescu
5be74af8fe
Update addItem() implementation
2021-12-06 15:09:06 +09:00
Dan Balasescu
85d3b70d8c
Update test multiplayer client to match server-side
2021-12-04 22:34:38 +09:00
Dan Balasescu
d5803e541b
Give playlist items a PlayedAt date
2021-12-03 20:25:51 +09:00
Dan Balasescu
9d6fe558c2
Update TestMultiplayerClient with expired item ordering
2021-12-03 17:01:33 +09:00
Dan Balasescu
0a1304b92a
Remove gameplay_order, use existing playlist_order
2021-12-03 15:45:13 +09:00
Dan Balasescu
806ca5d4de
Update TestMultiplayerClient implementation to match server
2021-12-02 22:58:12 +09:00
Dan Balasescu
c00684a2f7
Merge branch 'master' into new-multiplayer-playlist
2021-12-02 16:19:34 +09:00
Dean Herbert
bdddaba352
Remove unnecessary test request handling
2021-12-02 14:33:56 +09:00
Dean Herbert
65f0a80c97
Merge branch 'master' into realm-integration/skins-rebase
2021-12-02 13:37:20 +09:00
Dean Herbert
caa88950da
Merge pull request #15889 from smoogipoo/fix-multi-test-ids
...
Fix testable online IDs starting at 0
2021-12-01 22:51:24 +09:00
Dan Balasescu
89c47708a1
Merge branch 'master' into new-multiplayer-playlist
2021-12-01 21:35:23 +09:00
Dan Balasescu
fc8c8685b8
Add playlist queue tests
2021-12-01 21:35:22 +09:00
Dan Balasescu
7224f6bac5
Fix testable online IDs starting at 0
2021-12-01 20:00:31 +09:00
Dean Herbert
0fae10500a
Fix failing tests
2021-11-30 20:09:45 +09:00
Dean Herbert
01bc330d1c
Rename method to match new purpose
2021-11-30 19:42:46 +09:00
Dean Herbert
f58c5cd9c0
Update MultiplayerClient
to use BeatmapLookupCache
2021-11-30 19:36:25 +09:00
Dean Herbert
23146d59d1
Use ILive
for current skin
2021-11-29 18:28:25 +09:00
Dan Balasescu
e9a19aacd7
Fix tests by requiring host
2021-11-26 17:23:50 +09:00
Dan Balasescu
7c91cd674e
Update test classes to set owner ids
2021-11-25 22:17:18 +09:00
Dean Herbert
183b95cbc2
Rename BeatmapSetOnlineStatus
to BeatmapOnlineStatus
...
This variable is used at more than just a set level.
2021-11-24 18:42:49 +09:00
Dean Herbert
8c60f37508
Fix cases of dynamically assigning Beatmap
s to BeatmapSetInfo
using list assignment
2021-11-24 13:27:37 +09:00
Dean Herbert
049f25a133
Merge pull request #15757 from smoogipoo/fix-multiplayer-tests
...
Fix several intermittent multiplayer test failures
2021-11-24 09:32:01 +09:00
Dan Balasescu
69a9fc9732
Fix a few more multiplayer test timeouts
...
These can be tested by adding a `Task.Delay(3000);` at the end of the
`MultiplayerClient.JoinRoom` task. The reason is typically that
`Client.Room` becomes not-null but the join task still hasn't completed
yet, so e.g. the ready button is still disabled.
2021-11-23 16:07:03 +09:00
Dean Herbert
473f6b0347
Add more xmldoc
2021-11-23 14:17:24 +09:00
Dean Herbert
55f7d120e6
Rename and reorder fields in OsuTestScene
2021-11-23 14:13:14 +09:00
Dean Herbert
5631e75f16
Restructure how the headless storage is used / documented to hopefully make more sense
2021-11-23 14:11:27 +09:00
Dean Herbert
49e2a8afa3
Don't directly reset the database when running tests
...
The containing storage is destroyed anyway, so this is redundant.
2021-11-23 14:08:04 +09:00
Dan Balasescu
f3ba62d2c2
Add xmldoc to serverSidePlaylist
2021-11-22 11:26:41 +09:00
Dan Balasescu
10dc08a855
Store server-side playlist instead of mutating client-side version
2021-11-22 11:18:21 +09:00
Dan Balasescu
6420971660
Adjust test client with new queue-changing logic
2021-11-22 11:10:10 +09:00
Dan Balasescu
4c8c34b43f
Use full name for round robin
2021-11-19 18:42:34 +09:00
Dan Balasescu
4e625b78e2
Update queue mode names
2021-11-19 18:28:43 +09:00
Dean Herbert
0c289bf8e5
Remove pointless namespace
2021-11-19 14:46:53 +09:00
Dan Balasescu
29d0d5badf
Rename QueueModes -> QueueMode
2021-11-16 14:53:10 +09:00
Dan Balasescu
41e46f158f
Fix tests following playlist changes
...
Also more closely follows the server implementation.
2021-11-16 14:37:33 +09:00
Dan Balasescu
9076519710
Give MultiplayerRoom a playlist, remove RequestAllPlaylistItems()
2021-11-16 14:13:43 +09:00
Dan Balasescu
f0593115b2
Remove RemovePlaylistItem() server method for the time being
2021-11-16 12:08:53 +09:00
Dan Balasescu
f743a3647f
Rename APIPlaylistItem -> MultiplayerPlaylistItem
2021-11-15 23:14:27 +09:00
Dan Balasescu
ce47f456ec
Change API for retrieving playlist items on join
2021-11-13 04:42:14 +09:00
Dan Balasescu
4aaf412ac9
Ensure one non-expired item when switching to host-only
2021-11-13 03:35:41 +09:00
Dan Balasescu
dbc23e224f
Fix further test failures
2021-11-13 03:34:45 +09:00
Dan Balasescu
e31d7e8ad7
Fix new failing test
2021-11-13 02:32:20 +09:00
Dan Balasescu
867403d947
Update TestMultiplayerClient to be more in line with server
2021-11-13 01:42:54 +09:00
Dan Balasescu
3b24ec3643
Merge branch 'master' into multi-queueing-modes
2021-11-12 22:16:04 +09:00
Dean Herbert
692e846acd
Rename BeatmapSetInfo.OnlineBeatmapSetID
to OnlineID
to match interface
2021-11-12 17:52:44 +09:00
Dean Herbert
6a098a8634
Rename BeatmapInfo.OnlineBeatmapID
to OnlineID
to match interface
2021-11-12 17:46:24 +09:00
Dan Balasescu
5c8c121446
Update behaviour to match server (removing playlist items) + tests
2021-11-11 23:39:15 +09:00
Dan Balasescu
07a7b4bcdc
Merge branch 'master' into multi-queueing-modes
2021-11-11 22:19:30 +09:00
Dan Balasescu
4db2ad1cb3
Merge branch 'master' into rename-ef-model-properties
2021-11-11 19:12:54 +09:00
Dean Herbert
51a353e12d
Rename BeatmapInfo.Version
to DifficultyName
to match underlying interface
2021-11-11 17:20:53 +09:00
Dean Herbert
ebe58cee11
Rename BeatmapInfo.StarDifficulty
to StarRating
to match underlying interface
2021-11-11 17:19:46 +09:00
Bartłomiej Dach
f38d6ef8db
Add failing test steps
2021-11-11 09:01:50 +01:00
Dan Balasescu
c51cb62315
Adjust TestMultiplayerClient for correctness
2021-11-10 21:31:13 +09:00
Dan Balasescu
78793d8624
Update interface to remove items
2021-11-10 19:58:25 +09:00
smoogipoo
35a5182ebf
Merge branch 'master' into multi-queueing-modes
2021-11-10 15:01:13 +09:00
Dean Herbert
3b485b5f37
Rewrite PreviewTrackManager
to avoid constructing TrackBass
locally
...
This paves the way for the framework code quality change
(https://github.com/ppy/osu-framework/pull/4873 ) which stops exposing
the constructor.
Most of the restructuring here is required to give `PreviewTrackManager`
an adjustable target to apply the global mute.
2021-11-09 17:38:12 +09:00
smoogipoo
c716051530
Merge branch 'master' into multi-queueing-modes
2021-11-08 19:19:50 +09:00
smoogipoo
e6deb0c873
Merge branch 'master' into multi-queueing-modes
2021-11-05 15:57:25 +09:00
Dean Herbert
ed07ee8c61
Update all existing usages of AuthorString
/AuthorId
...
Unfortunately the getters need to be left in place else EF breaks.
2021-11-04 18:59:37 +09:00
Dean Herbert
b9983add15
Rename User
to APIUser
and move to correct namespace
2021-11-04 18:21:31 +09:00
Dean Herbert
8f459e6ce8
Fix APIBeatmapSet.Beatmaps
being IEnumerable
, causing stupid issues
2021-11-04 16:44:17 +09:00
Dean Herbert
9c926e5514
Remove BeatmapSetInfo.OnlineInfo
and all usages
2021-11-04 15:23:04 +09:00
Dean Herbert
66f4516eee
Allow creating sample API models without specifying a ruleset
2021-11-04 15:23:04 +09:00
Dean Herbert
e3a9fbecfe
Add method to create sample APIBeatmap
(with BeatmapSet
populated)
2021-11-04 15:23:04 +09:00
Dean Herbert
3453160a8b
Change PlaylistItem.Beatmap
to be an IBeatmapInfo
2021-11-04 13:16:56 +09:00
Dean Herbert
1bfa1365a0
Rename "null user" tests to better explain purpose
2021-11-02 17:13:37 +09:00