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
smoogipoo
f076b72fbe
Merge branch 'master' into multi-queueing-modes
2021-10-29 10:48:16 +09:00
Dean Herbert
d8d4839e43
Merge pull request #15339 from smoogipoo/fix-test-crash
...
Fix playlists room creation test crash
2021-10-28 17:28:46 +09:00
smoogipoo
bacaa9d201
Fix playlists test crash
2021-10-28 16:48:17 +09:00
smoogipoo
0e293471c2
Clean up multiplayer-screen tests by removing intermediate screen
2021-10-28 14:29:49 +09:00
Dean Herbert
aaabaaa5dd
Merge pull request #15320 from smoogipoo/fix-online-play-request-handling
...
Fix online play request handling in tests
2021-10-28 14:24:00 +09:00
Dean Herbert
add39fbd4f
Merge branch 'master' into fix-skin-layout-editor-crash
2021-10-28 06:24:24 +09:00
smoogipoo
f3dba49aae
Rename room managers
2021-10-27 19:36:32 +09:00
smoogipoo
85b21174dd
Fix online play test request handling
2021-10-27 14:49:50 +09:00
Dean Herbert
6944151486
Apply batch fixing of built-in types using var
2021-10-27 13:04:41 +09:00
Dean Herbert
19312435d0
Add ability to make test APIBeatmaps
from test scenes
...
Allow tests to create a sample `APIBeatmapSet`
One step towards removing calls to `ToBeatmap` / `ToBeatmapSet`.
2021-10-25 14:18:13 +09:00
Dean Herbert
26cf5370c3
Remove unused reader
parameter
2021-10-24 23:48:46 +09:00
smoogipoo
a4397ee68c
Add playlist continuation flow
2021-10-22 22:07:41 +09:00
smoogipoo
1b4be61ed1
Fix finished-play state not handled correctly
2021-10-22 21:16:10 +09:00
smoogipoo
4e6a02bde9
Fix missing QueueMode copies
2021-10-22 20:14:04 +09:00
smoogipoo
db87e42d47
Remove beatmap/ruleset/etc from MultiplayerRoomSettings
2021-10-22 16:48:28 +09:00
Dean Herbert
30c3fcb4ea
Merge branch 'master' into slider-timeline-velcotiy-adjust-v2
2021-10-15 19:45:04 +09:00
smoogipoo
eed8fa8d69
Expand comment a bit
2021-10-15 00:20:45 +09:00
smoogipoo
e6ee360511
Fix intermittent multiplayer tests
2021-10-15 00:10:39 +09:00
smoogipoo
901f107b2e
Merge branch 'master' into slider-timeline-velcotiy-adjust-v2
2021-10-14 17:25:51 +09:00
Dean Herbert
f69a56a26a
Add test coverage of startup import sequence
2021-10-13 12:19:10 +09:00
Dan Balasescu
bece807857
Merge pull request #14980 from peppy/difficulty-move-to-beatmap
...
Copy `BaseDifficulty` to `Beatmap<T>` and move the majority of write operations across
2021-10-07 18:43:44 +09:00
Dean Herbert
d0001f760d
Group applicable comment above new addition
2021-10-07 16:50:05 +09:00
Dean Herbert
290c9755e2
Always use circles intro for OsuGame
tests
...
The triangles intro tracks video time, which is not adjusted based on
the game's playback rate (ie. it runs in realtime even for headless
tests).
Maybe we want to make the triangles video adjust its rate along with
tests?
2021-10-07 15:55:29 +09:00
Dean Herbert
a57b080f10
Avoid showing the disclaimer in game tests
...
No real performance gain, but this is handy to bypass when actually
using one of these tests to test something.
2021-10-07 15:55:15 +09:00
Dean Herbert
4ca97bc60a
Merge branch 'master' into difficulty-move-to-beatmap
2021-10-06 16:14:21 +09:00
Dean Herbert
b339c149d8
Copy BaseDifficulty
to Beatmap<T>
and move all write operations across
2021-10-06 15:10:45 +09:00
Dean Herbert
90fdaf18c0
Fix PushAndConfirm
potentially failing if new screen quickly pushes a child screen
2021-10-06 12:55:04 +09:00
Dean Herbert
1f6a31355c
Remove unused using statement
...
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2021-10-06 05:30:49 +09:00
Dean Herbert
e6efdae7c9
Add various logging output in an atttempt to figure multiplayer test failure
2021-10-05 18:53:20 +09:00
Dan Balasescu
aa1bfc16d2
Merge pull request #14929 from peppy/gameplay-state
...
Replace `GameplayBeatmap` with `GameplayState`
2021-10-04 15:56:44 +09:00
Dean Herbert
32afd3f426
Replace all basic usages
2021-10-02 02:22:23 +09:00
Dean Herbert
ac471a0ec1
Merge branch 'no-more-difficulty-control-points-info' into slider-timeline-velcotiy-adjust-v2
2021-10-01 17:46:58 +09:00
Dean Herbert
3e3b9bc963
Split out IModelDownloader
and also split apart ScoreManager
2021-09-30 18:25:20 +09:00
Dean Herbert
90225f2082
Hook up all required interfaces to new BeatmapManager
2021-09-30 17:18:39 +09:00
Dean Herbert
13f88cbc4e
Fix EditorClock
retaining a reference to potentially outdated ControlPointInfo
2021-09-14 23:56:57 +09:00
Dean Herbert
d999c29d3a
Remove unused GameHost
DI in OsuGameTestScene
2021-09-13 19:38:43 +09:00
Dean Herbert
aa71e3f3d4
Update nested game tests in line with framework changes
2021-09-13 19:04:13 +09:00
Bartłomiej Dach
22fa9a303e
Expose test helper for switching between difficulties
2021-09-12 13:55:48 +02:00
Bartłomiej Dach
f8a681d810
Delegate Editor{Beatmap,Clock}
to Editor
directly
2021-09-12 13:40:06 +02:00
Bartłomiej Dach
8357efc74f
Make EditorTestScene
go through EditorLoader
2021-09-12 13:26:04 +02:00
Dean Herbert
cf633973a9
Refactor exposed mod retrieval methods for better safety
2021-09-10 11:09:13 +09:00
Dean Herbert
2edb851008
Add ability to lookup mod from a type specification
2021-09-09 16:50:59 +09:00
Dean Herbert
2a5b857f10
Avoid loading unnecessary fonts in headless testing
2021-09-07 00:45:53 +09:00
Bartłomiej Dach
2efe82a18d
Remove popover container from manual input manager test scene
2021-08-28 20:20:42 +02:00
Dan Balasescu
0aea39f5f1
Merge branch 'master' into temporary-directory-test-storage
2021-08-20 20:41:54 +09:00
Salman Ahmed
5fc29328cf
Remove unused using
...
Uh.....
2021-08-19 06:30:23 +03:00
Salman Ahmed
49bc3a8250
Refactor playlists room manager to handle dummy API requests
2021-08-19 06:25:47 +03:00
Salman Ahmed
f4ae587a33
Extract room request handling logic to its own class
2021-08-19 06:24:06 +03:00
Dean Herbert
4725b802b0
Share OsuGameTestScene
with implementations across template projects
2021-08-18 16:53:32 +09:00
Dean Herbert
2758a83d55
Fix TestSettingsMigration
's usage of RecycleLocalStorage
2021-08-18 16:39:10 +09:00
Dean Herbert
dc44cc0eb3
Update scenarios to use new TestRunHeadlessGameHost
where feasible
2021-08-18 16:01:56 +09:00
smoogipoo
f2340c6dac
Privatise mutable list
2021-08-17 09:48:33 +09:00
smoogipoo
b672d4b936
Refactor RequestHandlingMultiplayerRoomManager to avoid confusion
2021-08-17 09:43:37 +09:00
smoogipoo
c4a42c4db0
Fix BasicTestRoomManager overriding rooms
2021-08-17 09:36:59 +09:00
smoogipoo
352949069a
Move filter to LoungeSubScreen
2021-08-17 09:36:43 +09:00
smoogipoo
6320768a67
Merge branch 'master' into multi-polling-request-refactor
2021-08-17 08:44:56 +09:00
Salman Ahmed
f82ed64aa7
Fix participant panel null user test no longer functioning properly
...
I guess the changes that involved `MultiplayerTestScene` having a test
user lookup cache caused this test case to false-pass silently.
Added an explicit assert which ensures the added user indeed has a null
`User` value.
2021-08-16 09:07:00 +03:00
smoogipoo
08d347f10b
Merge branch 'master' into multi-polling-request-refactor
2021-08-16 13:12:08 +09:00
smoogipoo
76a8d4329f
Make TestRoomManager update existing room
2021-08-16 12:43:09 +09:00
Dean Herbert
b8c63eb1cb
Merge branch 'master' into multiplayer-kick-support-events
2021-08-14 14:08:34 +09:00
Dean Herbert
e6b3aba6e1
Fix incorrectly directed call in TestMultiplayerClient
2021-08-14 14:08:29 +09:00
smoogipoo
8910781bcd
Move listing polling component to LoungeSubScreen
2021-08-13 17:39:09 +09:00
smoogipoo
83703e4283
Add colour provider to online play dependencies
2021-08-12 20:08:14 +09:00
Dan Balasescu
60e988aac3
Merge branch 'master' into multiplayer-kick-support
2021-08-12 11:46:56 +09:00
Dean Herbert
e8ad0fba75
Add required server methods for kicking users
2021-08-11 17:20:41 +09:00
Dean Herbert
ea6e441dec
Simplify method of marking players as playing in test scenes
2021-08-09 19:21:22 +09:00
Dean Herbert
551929cf5a
Simplify method of marking players as playing in test scenes
2021-08-09 19:18:13 +09:00
Dean Herbert
1e5d9003d3
Add the ability for tests to alter the room and user states which during testing
2021-08-09 16:58:36 +09:00