Dean Herbert
566e10f8cc
Refactor test to be easier to follow
2021-11-29 18:55:23 +09:00
Dean Herbert
bac7966337
Update RealmLiveTests
to use interface type
2021-11-29 18:17:30 +09:00
Dean Herbert
071a8c6709
Add test coverage showing RealmLive
failure after an attach
2021-11-29 17:34:58 +09:00
Dean Herbert
54798eabc9
Add test coverage of potential deeadlock scenario with nested realm context fetching
2021-11-29 16:29:53 +09:00
Dean Herbert
791f7e3801
Update RealmLive
tests in line with modified behaviour
2021-11-29 15:16:16 +09:00
Dean Herbert
d73e81ee63
Add test coverage of non-optimised existing model check
2021-11-29 14:48:28 +09:00
Bartłomiej Dach
05f7ea6b6d
Remove mentions of "panel" and "direct" from names of old download buttons
2021-11-27 15:08:03 +01:00
Bartłomiej Dach
a043d1e427
Move old beatmap download button to more general namespace
2021-11-27 15:06:57 +01:00
Bartłomiej Dach
567c985da0
Remove beatmap panel test scene
2021-11-27 14:56:27 +01:00
Dan Balasescu
e1445dcb05
Only show owner in match subscreen
2021-11-26 17:40:45 +09:00
Dan Balasescu
e9a19aacd7
Fix tests by requiring host
2021-11-26 17:23:50 +09:00
Dan Balasescu
8541db1e85
Merge branch 'master' into playlist-item-add-owner
2021-11-26 17:13:23 +09:00
Dan Balasescu
5e53f51c99
Merge pull request #15812 from peppy/realm-live-unmanaged-fetch-fix
...
Avoid attempting to fetch a non-managed `RealmLive` instance from the realm backing
2021-11-26 15:37:58 +09:00
Dean Herbert
40d1b97af1
Avoid attempting to fetch a non-managed RealmLive
instance from the realm backing
...
For compatibility reasons, we quite often convert completely unmanaged
instances to `ILive`s so they fit the required parameters of a property
or method call. This ensures such cases will not cause any issues when
trying to interact with the underlying data.
Originally I had this allowing write operations, but that seems a bit
unsafe (when performing a write one would assume that the underlying
data is being persisted, whereas in this case it is not). We can change
this if the requirements change in the future, but I think throwing is
the safest bet for now.
2021-11-26 15:06:14 +09:00
Dean Herbert
13612c0d02
Add equality support to ILive
types
2021-11-26 14:56:16 +09:00
Dan Balasescu
1f5d95666e
Add owner avatar to multiplayer items
2021-11-25 23:15:29 +09:00
Dean Herbert
7a3c69544b
Merge pull request #15799 from smoogipoo/fix-songselect-test-failures-2
...
Fix SongSelect-related test failures
2021-11-25 23:01:06 +09:00
Dan Balasescu
d0c0b7ce47
Fix intermittent beatmap thumbnail test
2021-11-25 22:05:39 +09:00
Dan Balasescu
09dd054283
Fix SongSelect-related test failures
2021-11-25 21:11:13 +09:00
Dan Balasescu
f712aeee01
Merge pull request #15795 from peppy/realm-integration/separate-download-flow
...
Split out download logic from main manager classes
2021-11-25 20:59:23 +09:00
Dean Herbert
eeccf836ec
Remove unnecessary GameHost
parameter
2021-11-25 17:42:41 +09:00
Dean Herbert
a2ab9f457d
Move score download logic out of ScoreManager
2021-11-25 17:33:04 +09:00
Dean Herbert
716543b5b3
Move beatmap download logic out of BeatmapManager
2021-11-25 17:29:41 +09:00
Dean Herbert
e6cfe44652
Fix occasional test failure due to default value oversight in TestSceneBeatmapCarousel
2021-11-25 16:29:06 +09:00
Dean Herbert
306e13fa7b
Remove all usages of FileStore.QueryFiles
2021-11-25 14:06:02 +09:00
Dean Herbert
1533e245de
Merge pull request #15767 from bdach/beatmap-card/track-preview
...
Add preview track playback function to beatmap card
2021-11-25 12:08:03 +09:00
Bartłomiej Dach
1907b42f82
Use constant online IDs in tests to avoid preview not working randomly
2021-11-24 20:34:33 +01:00
Bartłomiej Dach
20f71da2c4
Merge branch 'master' into fix-mp-resuming
2021-11-24 20:17:58 +01:00
Dan Balasescu
132bb59203
Update working beatmap when returning to match
2021-11-24 19:56:02 +09:00
Dan Balasescu
ce8500a732
Merge branch 'master' into remove-model-file-list-inits
2021-11-24 19:46:42 +09:00
Dan Balasescu
e176083898
Merge pull request #15781 from peppy/beatmap-set-status
...
Rename `BeatmapSetOnlineStatus` to `BeatmapOnlineStatus`
2021-11-24 19:25:29 +09:00
Dean Herbert
b739b6a725
Merge branch 'master' into beatmap-card/track-preview
2021-11-24 18:54:25 +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
ddbd4f9473
Merge branch 'master' into remove-model-file-list-inits
2021-11-24 18:39:01 +09:00
Dean Herbert
0fe27cc8a1
Replace one more usage
2021-11-24 18:29:33 +09:00
Dean Herbert
7603f7eb36
Fix a few incorrectly updated arguments
2021-11-24 18:14:18 +09:00
Dean Herbert
0c819b9cfb
Combine all test data BeatmapSetInfo
creation into a single method
2021-11-24 18:07:32 +09:00
Dan Balasescu
74b6c33fab
Merge pull request #15778 from peppy/ruleset-info-id-usage
...
Update usages of `RulesetInfo.ID` to use `OnlineID` instead
2021-11-24 16:55:28 +09:00
Dan Balasescu
834bdd8e5c
Merge pull request #15776 from peppy/non-null-beatmapset-metadata
...
Make `BeatmapSet.Metadata` non-null
2021-11-24 16:48:28 +09:00
Dan Balasescu
8ce5324c8b
Merge pull request #15772 from peppy/remove-model-list-inits
...
Initialise `BeatmapSet.Beatmaps` list at construction time
2021-11-24 16:41:19 +09:00
Dean Herbert
bbd3ea5b77
Update all actual usages of RulesetInfo.ID
to use OnlineID
instead
2021-11-24 15:50:26 +09:00
Dean Herbert
f283770f34
Update mock RulesetInfo
usage to set OnlineID
instead of ID
2021-11-24 15:50:26 +09:00
Dean Herbert
cb093e1e01
Remove reundant self-sets of metadata
2021-11-24 15:08:04 +09:00
Dean Herbert
3946a39b65
Make BeatmapSet.Metadata
non-null
2021-11-24 15:03:34 +09:00
Dean Herbert
44c34ca7b2
Revert changes causing BeatmapSet.Metadata
to be expectedly null in some tests
2021-11-24 14:52:08 +09:00
Dean Herbert
c7bc03e6f7
Add helper method for editor check tests
2021-11-24 14:22:41 +09:00
Dean Herbert
c2f8d9f677
Update tests which set Files
lists directly
2021-11-24 14:00:14 +09:00
Dan Balasescu
cf17c51df2
Merge pull request #15770 from peppy/fix-incorrect-id-usage-in-tests
...
Fix incorrect usage of `ID` in `TestSceneMultiplayerResults`
2021-11-24 13:51:30 +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
b1f3e98045
Fix incorrect usage of ID
in TestSceneMultiplayerResults
2021-11-24 13:05:51 +09:00
Dean Herbert
729f681938
Update cases where equality can be used instead of primary key equality
2021-11-24 12:49:57 +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
Bartłomiej Dach
1a1603f0db
Implement preview track playback
2021-11-23 23:17:30 +01:00
Bartłomiej Dach
9164f006aa
Implement basic behaviour of play button
2021-11-23 22:44:09 +01:00
Bartłomiej Dach
b44db9f5e5
Add test scene for thumbnail component
2021-11-23 22:44:08 +01:00
Dan Balasescu
a521d1b835
Wait for ready button to be enabled first
2021-11-23 17:09:38 +09:00
Dan Balasescu
fd4d5e98a7
Merge pull request #15745 from bdach/settings-number-box-stack-overflow
...
Fix crashes on trying to play back replays of seeded mods with seed value over 1 billion
2021-11-23 16:36:05 +09:00
Dan Balasescu
6363833fb3
Revert unnecessary changes
2021-11-23 16:17:09 +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
Bartłomiej Dach
b596a0204c
Rewrite overflow test step for legibility
2021-11-23 06:43:17 +01:00
Dan Balasescu
10bd7176e0
Fix potential test failure in TestSceneMultiplayerReadyButton
...
Couldn't exactly reproduce https://github.com/ppy/osu/runs/4294316800 ,
but I found a similar issue via:
```diff
diff --git a/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerReadyButton.cs b/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerReadyButton.cs
index 84b63a5733..29cac9b061 100644
--- a/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerReadyButton.cs
+++ b/osu.Game.Tests/Visual/Multiplayer/TestSceneMultiplayerReadyButton.cs
@@ -3,6 +3,7 @@
using System;
using System.Linq;
+using System.Threading;
using System.Threading.Tasks;
using NUnit.Framework;
using osu.Framework.Allocation;
@@ -81,6 +82,8 @@ private void load(GameHost host, AudioManager audio)
await Client.ToggleReady();
+ Thread.Sleep(1000);
+
readyClickOperation.Dispose();
});
}
```
2021-11-23 14:07:55 +09:00
Dean Herbert
119ac19f86
Merge branch 'master' into realm-beatmap-file-relation
2021-11-23 10:20:22 +09:00
Dean Herbert
e580fc5abc
Merge pull request #15735 from peppy/remove-ruleset-info-inheritance
...
Remove subclassing of `RulesetInfo`
2021-11-23 10:18:32 +09:00
Bartłomiej Dach
1ec5dd2cdf
Merge branch 'master' into realm-beatmap-file-relation
2021-11-22 21:53:08 +01:00
Bartłomiej Dach
dced6a2e68
Add extended test coverage for desired input handling
2021-11-22 20:39:44 +01:00
Bartłomiej Dach
2350806b4c
Add failing test case for number box stack overflow scenario
2021-11-22 20:26:45 +01:00
Dean Herbert
001f7c36f3
Use Equals
in carousel tests for better realm compatibility
2021-11-22 17:20:21 +09:00
Dean Herbert
b9923e5396
Remove subclassing of RulesetInfo
2021-11-22 16:39:17 +09:00
Dean Herbert
1cdfa6d9a0
Add helper property to access a realm beatmap's beatmap file
2021-11-22 15:30:11 +09:00
Dan Balasescu
f64d20ed71
Fix APIRoom queue mode not updated on change
2021-11-22 13:46:01 +09:00
Dean Herbert
bbb3abbc61
Merge branch 'master' into multi-queueing-modes
2021-11-22 12:32:47 +09:00
Dan Balasescu
cad6d1d25d
Adjust test to match new logic
2021-11-22 11:20:19 +09:00
Dan Balasescu
53dbbd6d64
Compare playlist item IDs instead in tests
2021-11-22 11:17:32 +09:00
Dan Balasescu
4b498c7bd6
Merge branch 'master' into multi-queueing-modes
2021-11-22 07:46:45 +09:00
Dean Herbert
c0962b1c4f
Merge branch 'master' into beatmap-card/download-button
2021-11-21 20:04:26 +09:00
Dean Herbert
63642450a4
Merge branch 'master' into fix-working-beatmap-wrong-exception-type
2021-11-21 15:50:07 +09:00
Dan Balasescu
a06b361fe2
Merge pull request #15705 from bdach/fix-difficulty-cache-caching-zeroes
...
Fix zero star difficulty values being cached when diffcalc was interrupted
2021-11-21 15:45:29 +09:00
Bartłomiej Dach
65cb011bac
Merge branch 'master' into beatmap-card/download-button
2021-11-20 18:49:11 +01:00
Bartłomiej Dach
297de27a6a
Use BindTarget
from card rather than caching & resolving download tracker
2021-11-20 18:48:26 +01:00
Bartłomiej Dach
78ee213573
Merge branch 'master' into storage-path-extension-method
2021-11-20 18:21:46 +01:00
Bartłomiej Dach
6100bf66a6
Clean up cancellation handling in WorkingBeatmap
...
After the recent changes introducing cancellation support to
`WorkingBeatmap`, it turned out that if the cancellation support was
used, `GetPlayableBeatmap()` would raise timeout exceptions rather than
the expected `OperationCanceledException`.
To that end, split off a separate overload for the typical usage, that
catches `OperationCanceledException` and converts them to beatmap load
timeout exceptions, and use normal `OperationCanceledException`s in the
overload that requires a cancellation token to work.
2021-11-20 17:23:55 +01:00
Bartłomiej Dach
15feb17da8
Change difficulty cache storage type to nullable
...
The recent changes related to adding support for working beatmap load
cancellation exposed a flaw in the beatmap difficulty cache. With the
way the difficulty computation logic was written, any error in the
calculation process (including beatmap load timeout, or cancellation)
would result in a 0.00 star rating being permanently cached in memory
for the given beatmap.
To resolve, change the difficulty cache's return type to nullable.
In failure scenarios, `null` is returned, rather than
`default(StarDifficulty)` as done previously.
2021-11-20 17:00:50 +01:00
Dean Herbert
e0629ba81c
Update all dependencies
2021-11-20 13:31:10 +09:00
Dan Balasescu
de0e8ad822
Merge branch 'master' into multi-queueing-modes
2021-11-19 18:58:15 +09:00
Dan Balasescu
4e625b78e2
Update queue mode names
2021-11-19 18:28:43 +09:00
Dean Herbert
59e763467f
Move StoragePath
implementation to an extension method
2021-11-19 16:08:38 +09:00
Dan Balasescu
a6a786b167
Remove namespacing of queue tests
2021-11-19 15:43:11 +09:00
Dean Herbert
5034cb1025
Merge branch 'master' into beatmap-card/download-button
2021-11-19 14:59:42 +09:00
Dean Herbert
0c289bf8e5
Remove pointless namespace
2021-11-19 14:46:53 +09:00
Dean Herbert
6dc6ca1bbb
Fix potential null reference in FadeAccessibleBackground
test class
2021-11-19 14:03:07 +09:00
Dean Herbert
cb2547a6be
Merge branch 'master' into multi-queueing-modes
2021-11-19 13:20:57 +09:00
Dan Balasescu
6ebe54b183
Merge pull request #15494 from Tollii/beatmap-cancellation-token
...
Add support for cancellation tokens for beatmap difficulty calculation
2021-11-19 10:54:32 +09:00
Bartłomiej Dach
8a1d6757af
Merge branch 'master' into beatmap-card/download-button
2021-11-18 22:37:35 +01:00
Bartłomiej Dach
412abf30d9
Refactor buttons again to work with latest design guidelines
2021-11-18 22:34:40 +01:00
Dan Balasescu
1dacc50ecb
Merge branch 'master' into multi-queueing-modes
2021-11-18 15:16:27 +09:00
Dean Herbert
d7b178ea37
Update test scenes which should not handle key repeat
2021-11-18 13:13:36 +09:00
Bartłomiej Dach
8528cab40b
Add test coverage for ruleset load failure scenario
2021-11-17 22:10:45 +01:00
Bartłomiej Dach
8b134914cf
Merge branch 'master' into beatmap-cancellation-token
2021-11-17 21:52:30 +01:00
Dan Balasescu
e4aec3f519
Merge pull request #15648 from peppy/playlist-show-invalid-beatmaps
...
Highlight invalid playlist items during room creation
2021-11-17 22:24:22 +09:00
Dean Herbert
a4953b5658
Update some remaining test usage of database ID
2021-11-17 20:56:57 +09:00