1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-12 06:47:25 +08:00
Commit Graph

6731 Commits

Author SHA1 Message Date
Dean Herbert
5a7d339cc8 Centralise and harden editor-ready-for-use check
Not only does this combine the check into one location, but it also adds
a check on the global `WorkingBeatmap` being updated, which is the only
way I can see the following failure happening:

```csharp
05:19:07     osu.Game.Tests: osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.TestAddAudioTrack
05:19:07       Failed TestAddAudioTrack [161 ms]
05:19:07       Error Message:
05:19:07        TearDown : System.NullReferenceException : Object reference not set to an instance of an object.
05:19:07       Stack Trace:
05:19:07       --TearDown
05:19:07        at osu.Game.Database.ModelManager`1.<>c__DisplayClass7_0.<AddFile>b__0(TModel managed) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07        at osu.Game.Database.ModelManager`1.<>c__DisplayClass8_0.<performFileOperation>b__0(Realm realm) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 49
05:19:07        at osu.Game.Database.RealmExtensions.Write(Realm realm, Action`1 function) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\RealmExtensions.cs:line 14
05:19:07        at osu.Game.Database.ModelManager`1.performFileOperation(TModel item, Action`1 operation) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 46
05:19:07        at osu.Game.Database.ModelManager`1.AddFile(TModel item, Stream contents, String filename) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Database\ModelManager.cs:line 36
05:19:07        at osu.Game.Screens.Edit.Setup.ResourcesSection.ChangeAudioTrack(FileInfo source) in C:\BuildAgent\work\ecd860037212ac52\osu.Game\Screens\Edit\Setup\ResourcesSection.cs:line 115
05:19:07        at osu.Game.Tests.Visual.Editing.TestSceneEditorBeatmapCreation.<TestAddAudioTrack>b__13_0() in C:\BuildAgent\work\ecd860037212ac52\osu.Game.Tests\Visual\Editing\TestSceneEditorBeatmapCreation.cs:line 101
05:19:07        at osu.Framework.Testing.Drawables.Steps.AssertButton.checkAssert()
05:19:07        at osu.Framework.Testing.Drawables.Steps.StepButton.PerformStep(Boolean userTriggered)
05:19:07        at osu.Framework.Testing.TestScene.runNextStep(Action onCompletion, Action`1 onError, Func`2 stopCondition)
```
2022-06-27 16:22:01 +09:00
Dean Herbert
b70b365411 Ensure files are cleaned up even on test step failure in TestAddAudioTrack 2022-06-27 15:53:05 +09:00
Dan Balasescu
05148d2b98
Merge pull request #18854 from peppy/fix-flaky-editor-navigation-test
Attempt to fix flaky `EditorNavigation` test
2022-06-27 13:58:28 +09:00
Dean Herbert
b5a8889fb8 Attempt to fix flaky EditorNavigation test
Conditionals taken from
f8830c6850/osu.Game/Tests/Visual/EditorTestScene.cs (L61-L62)
where it seemed to resolve other similar cases.
2022-06-27 03:04:50 +09:00
Dean Herbert
cd9eaf215b Attempt to fix flaky PlaylistOverlay test 2022-06-27 02:58:01 +09:00
Dean Herbert
31a447fda0 Update parameter discards 2022-06-24 21:26:19 +09:00
Dean Herbert
30eebf3511 Merge branch 'master' into c-sharp-10 2022-06-24 21:22:33 +09:00
Dean Herbert
2c5e5fed6f Add test coverage of star rating and difficulty updating on editor save 2022-06-24 21:02:38 +09:00
Dean Herbert
f71f6302fd Remove unnecessary null casts 2022-06-24 14:50:11 +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
01da6f20b3 Tidy up all remaining usages 2022-06-23 19:27:35 +09: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
Dean Herbert
97fcf8cec9
Merge pull request #18668 from smoogipoo/editor-controlpoint-undo-redo 2022-06-23 04:02:24 +09:00
Bartłomiej Dach
a9f6eb0293
Add test coverage for new intended behaviour of sequential hotkey style 2022-06-21 15:18:37 +02:00
Bartłomiej Dach
a996325e19
Add test coverage for filter handling in classic style 2022-06-21 15:00:39 +02:00
Bartłomiej Dach
da1814e7c3
Restructure everything to fix free mod overlay issue 2022-06-21 14:48:41 +02:00
Bartłomiej Dach
143c8e8da6
Add test scene for desired classic selection behaviour 2022-06-21 13:35:00 +02:00
Bartłomiej Dach
658f5341c7
Set up flow for switching between hotkey styles 2022-06-21 13:34:58 +02:00
Bartłomiej Dach
73124d2b1f
Encapsulate mod hotkey selection logic in strategy pattern 2022-06-21 12:49:01 +02:00
Dean Herbert
10efb4bc6c Fix incorrect disposal in teardown steps 2022-06-21 14:08:30 +09:00
Bartłomiej Dach
21d60231b6
Add limited test coverage of osu:// scheme link IPC flow 2022-06-20 22:22:25 +02:00
Dan Balasescu
e0c82d11ab Convert == usages to ReferenceEquals 2022-06-20 16:56:19 +09:00
Dean Herbert
7daab2d45b Merge branch 'master' into skin-editor-transform-fix 2022-06-20 14:10:01 +09:00
Dean Herbert
e4d0c7a0fb Move beatmap import step to only be required when entering gameplay 2022-06-20 14:08:05 +09:00
Dean Herbert
329f1a0822 Add test coverage of original fail case and improve test reliability and code quality 2022-06-20 14:08:05 +09:00
Dean Herbert
243806e810 Move common step of toggling skin editor to own method 2022-06-20 13:32:44 +09:00
Gabe Livengood
2b0e82be40
add test coverage 2022-06-19 14:35:05 -04:00
Bartłomiej Dach
def87ed782
Add failing test for editor gameplay test using wrong ruleset 2022-06-19 19:28:35 +02:00
Salman Ahmed
47ce087694 Actually click the gameplay scene button than TriggerClick 2022-06-18 18:32:02 +03:00
Bartłomiej Dach
f6a3047596
Merge branch 'master' into editor-metadata-name-unification 2022-06-18 10:22:52 +02:00
Dan Balasescu
f8830c6850 Automated #nullable processing 2022-06-17 16:37:17 +09:00
Salman Ahmed
42378dbb88 Improve test coverage to ensure volume is unaffected when mouse is away 2022-06-16 20:22:57 +03:00
Salman Ahmed
47d0ecf5e8 Merge branch 'master' into editor-metadata-name-unification 2022-06-16 18:53:23 +03:00
Bartłomiej Dach
9c4f6d2ce0
Merge branch 'master' into first-run-setup-notification-interruption 2022-06-16 15:14:40 +02:00
Salman Ahmed
2c35b1404b Use FileInfo as current bindable type 2022-06-15 19:29:09 +03:00
Salman Ahmed
387c54c252 Ensure notification is displayed after first-run setup is hidden 2022-06-15 18:13:24 +03:00
Dean Herbert
584345a97e
Merge pull request #18693 from frenzibyte/toolbar-volume-control
Add basic volume control support in toolbar music button
2022-06-15 17:50:10 +09:00
Dean Herbert
87bf53485a
Merge pull request #18649 from frenzibyte/selection-context-outside-bounds
Fix context menus not appearing when clicking outside of editor playfield's bounds
2022-06-15 17:08:09 +09:00
Dean Herbert
873806c2ea Add keyboard adjustment support 2022-06-15 15:58:22 +09:00
Salman Ahmed
f3f0960335 Use unified filename for background and track during editor import 2022-06-15 09:02:48 +03:00
Salman Ahmed
850afcb1c3 Add failing test case 2022-06-15 05:43:39 +03:00
Salman Ahmed
1171d44ad9 Add failing test case 2022-06-15 03:37:04 +03:00
Salman Ahmed
36599d1174
Merge branch 'master' into fix-hit-error-when-not-visible 2022-06-14 22:47:11 +03:00
Salman Ahmed
7f23677972 Add volume control support via toolbar music button 2022-06-14 22:15:12 +03:00
Salman Ahmed
6fe5cacd3c Fix hot reload crashing toolbar test scene 2022-06-14 22:15:12 +03:00
Salman Ahmed
cd74f22e12 Add failing test case 2022-06-14 19:10:13 +03:00
Dean Herbert
0147a8ecee Add test coverage of HUD components still getting updated when hidden 2022-06-14 18:35:49 +09:00
Dean Herbert
f997886142 Add scrolling gameplay visualisation mode to latency certifier 2022-06-13 17:18:32 +09:00
Dean Herbert
17eaf7bb5c Add failing test coverage showing hit meters don't update when not visible 2022-06-13 16:36:22 +09:00
Salman Ahmed
20e7f32fd9 Improve test case to work in headless 2022-06-12 17:53:10 +03:00
Salman Ahmed
038021f682 Add failing test case 2022-06-11 20:52:25 +03:00
Salman Ahmed
5b3b9a2cd3 Add test coverage for "simple" mode 2022-06-11 16:21:22 +03:00
Dean Herbert
8d53ed64a3 Fix mode cycling and add test coverage 2022-06-11 21:36:43 +09:00
Dean Herbert
096d6df868 Fix regression in testing and setting logic 2022-06-10 20:33:21 +09:00
Dean Herbert
d46739ff0b Add circle gameplay test coverage 2022-06-10 19:42:25 +09:00
Dan Balasescu
e5d6dc1ba5
Merge pull request #18606 from peppy/latency-comparer
Add latency certifier system
2022-06-10 19:41:44 +09:00
Dean Herbert
936b38e0c5 Reduce test coverage to a point where headless tests will run correctly 2022-06-10 16:13:53 +09:00
Dean Herbert
e0644f2726 Simplify flow of progression to be linear 2022-06-10 15:19:10 +09:00
Dan Balasescu
c9dfffbc0e
Merge pull request #18619 from peppy/fix-collection-performance
Fix performance overhead of large collections
2022-06-10 15:01:31 +09:00
Dean Herbert
7d86010903 Fix test regression 2022-06-10 14:41:22 +09:00
Dean Herbert
4a5e86e451 Rename Beatmaps to BeatmapHashes for clarity 2022-06-10 14:03:51 +09:00
Dan Balasescu
bc7262a3dd
Merge pull request #18627 from Joehuu/always-show-mod-selector-beatmap-info
Always show mod selector on beatmap info leaderboards regardless of supporter
2022-06-09 18:18:12 +09:00
Dean Herbert
8879c59b36
Merge pull request #18623 from LittleEndu/new-me-recommender
Use new own profile statistics in difficulty recommender
2022-06-09 11:11:21 +09:00
Joseph Madamba
5c138de446 Add failing mod selector visibility test 2022-06-08 13:22:49 -07:00
Joseph Madamba
c6264d5b3d Split beatmap set overlay tests to online and offline 2022-06-08 13:21:23 -07:00
Endrik Tombak
bf67b35ade Use new own profile statistics in difficulty recommender 2022-06-08 17:44:57 +03:00
Dean Herbert
c661f2b059 Ensure ChannelManager has access to API from point of construction
Closes https://github.com/ppy/osu/issues/18451.
2022-06-08 19:15:23 +09:00
Dean Herbert
42cd7d9e6e Change CollectionManager to only store MD5 hashes instead of full BeatmapInfo 2022-06-08 18:23:09 +09:00
Dan Balasescu
c43670fcd9
Merge pull request #18603 from peppy/fix-import-dialog
Add placeholder when no results are visible at song select
2022-06-08 15:22:31 +09:00
Dean Herbert
3b46787e06
Merge pull request #18496 from smoogipoo/multiplayer-leaderboard-user-mods-2
Support mod/ruleset combinations in multiplayer gameplay leaderboard
2022-06-08 14:58:13 +09:00
Dean Herbert
eee79c9531
Merge pull request #18610 from jai-x/refactor-chat-line
Refactor `ChatLine` and fix `DrawableChannel` flow padding
2022-06-08 13:54:53 +09:00
Dean Herbert
cd649f7d97
Merge branch 'master' into multiplayer-leaderboard-user-mods-2 2022-06-08 13:39:42 +09:00
Salman Ahmed
c69d53df00 Add failing test case 2022-06-08 04:29:50 +03:00
Jai Sharma
2f635fa854 Refactor ChatLine and fix DrawableChannel flow padding
Refactors `ChatLine` component to use more sensible override properties
and layout using grid container. Moves creation of username component
into its own method to simplify BDL.

Updates padding of base `DrawableChannel` flow padding.

Removes usage of `ChatOverlayDrawableChannel` since it's overrides are
no longer needed.

Updates usage of `StandAloneChatDisplay` to use new override properties
of `DrawableChannel`.
2022-06-07 22:35:45 +01:00
Dean Herbert
b924aa3296 Fix tests failing when run headless 2022-06-08 00:36:19 +09:00
Dean Herbert
9da99a0ddf Rename to latency certifier 2022-06-07 23:34:55 +09:00
Dean Herbert
95dea00725 Tidy up code and namespaces 2022-06-07 23:10:08 +09:00
Dean Herbert
058760253a Add test coverage of certification flow 2022-06-07 23:02:15 +09:00
Dean Herbert
0adeccbf03 Add full latency testing flow 2022-06-07 17:28:31 +09:00
Dean Herbert
430bacf917 Add initial layout of comparison screens 2022-06-07 17:28:31 +09:00
Dean Herbert
0d32c94104 Add initial implementation of beatmap carousel no-results-placeholder 2022-06-07 17:25:06 +09:00
Dean Herbert
df9174ec00 Remove import popup dialog from song select
This has been replaced in spirit by the first run overlay.
2022-06-07 16:45:27 +09:00
Henry Lin
ef5d601f67 Fix difficulty name overflow in score panel 2022-06-07 12:05:03 +08:00
Dean Herbert
734636299e
Merge pull request #18567 from jai-x/update-dayseparator
Update `DaySeparator` to use new design throughout
2022-06-06 19:15:43 +09:00
Dan Balasescu
b897e1464f
Merge pull request #18462 from frenzibyte/fix-timeline-zooming
Fix timeline objects disappearing prematurely on wide-screens
2022-06-05 11:49:44 +09:00
Jai Sharma
c0aaeff2b3 Update DaySeparator to use new design throughout
Moves `DaySeparator` chat component to it's own file and update it to
match new chat design. Makes use of several virtual attributes that can
be overridden to update spacing and layout in other usage contexts.

Remove redundant usage of `ChatOverlayDaySeparator`, since the new
design is now part of the base class.

Create `StandAloneDaySeparator` to use in `StandAloneChatDisplay` which
overrides attributes to match correct spacing and layout for its design.

Ensure that `DrawableChannel.CreateDaySeparator` returns type of
`DaySeparator` instead of `Drawable`.
2022-06-04 18:02:14 +01:00
Dan Balasescu
1c738e22ae
Merge pull request #18523 from peppy/tap-button
Add tap for BPM button
2022-06-03 18:11:10 +09:00
Salman Ahmed
588151f48b Add new failing test coverage 2022-06-03 02:34:10 +03:00
Salman Ahmed
ca68751fdc Update test to match expectation 2022-06-03 02:22:16 +03:00
Salman Ahmed
8471b24659 Merge branch 'master' into fix-timeline-zooming 2022-06-03 02:00:09 +03:00
Bartłomiej Dach
6f1437e73d
Fix compilation failure due not applying rename fully 2022-06-02 21:18:09 +02:00
Bartłomiej Dach
59ffc8b08e
Merge branch 'master' into multiplayer-leaderboard-user-mods-2 2022-06-02 20:45:10 +02:00
Dean Herbert
c42485cea9 Fix test button references 2022-06-02 17:29:45 +09:00
Dean Herbert
5adbf85654
Merge pull request #18422 from smoogipoo/detect-exclusive-fullscreen
Detect exclusive fullscreen on Windows
2022-06-02 15:13:02 +09: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