1
0
mirror of https://github.com/ppy/osu.git synced 2024-11-12 10:57:27 +08:00
Commit Graph

6453 Commits

Author SHA1 Message Date
Bartłomiej Dach
2921a13609
Add testing for mod bindable state propagation 2022-04-03 20:12:34 +02:00
Bartłomiej Dach
e46c2df409
Add testing for customisation panel show/hide logic 2022-04-03 20:12:33 +02:00
Bartłomiej Dach
293ef44836
Implement new mod select screen 2022-04-03 20:12:33 +02:00
Dean Herbert
969f7e121a
Merge pull request #17545 from jai-x/new-chat-textbox
Implement `ChatTextBox` for new chat design
2022-04-03 22:12:12 +09:00
Bartłomiej Dach
6d1844adc3
Use nameof() in test to reference event names 2022-04-03 14:27:37 +02:00
Jai Sharma
94fa5e2ef2 Use Action<string> for event OnChatMessageCommitted & clear textbox internally 2022-04-02 21:58:54 +01:00
Bartłomiej Dach
28ba437d24
Merge branch 'master' into sucess-rate-tooltip 2022-04-02 19:31:45 +02:00
Salman Ahmed
b815f685fc Flip viaConfig conditional branch 2022-04-02 19:28:33 +03:00
Jai Sharma
9e152cd3fd Fix code quality issues 2022-04-02 17:27:44 +01:00
Salman Ahmed
8534dd3463
Simplify TestCase attributes to one Values attribute
Co-authored-by: Bartłomiej Dach <dach.bartlomiej@gmail.com>
2022-04-02 19:24:16 +03:00
Jai Sharma
2297073b7e Use OnChatMessageCommit & OnSearchTermsChanged events in ChatTextBar 2022-04-02 17:15:19 +01:00
Salman Ahmed
c4635f3c03 Add failing test case 2022-04-02 18:36:32 +03:00
Salman Ahmed
a252c4cad5 Add random pass/play count data in test scene 2022-04-02 18:08:23 +03:00
CenTdemeern1
c103cee1d5 Need to commit the second half again because my Git UI messed up 2022-04-02 04:53:47 +02:00
CenTdemeern1
a1baced777 Change behavior of the display mode test
I remembered to run InspectCode this time, all good
2022-04-02 04:45:21 +02:00
CenTdemeern1
ee9696855b Remove hover test 2022-04-02 04:41:05 +02:00
CenTdemeern1
245e452d41 Remove redundant typecast I accidentally left in (Thanks InspectCode) 2022-04-02 04:31:43 +02:00
CenTdemeern1
95ccac50d4 Add display mode changing test
Yup this is gonna fail horribly
2022-04-02 04:26:16 +02:00
CenTdemeern1
9350f6f5f8 Add spaces around commas in Vector2 construction 2022-04-02 02:59:07 +02:00
CenTdemeern1
dc744f18ff Trim whitespace 2022-04-02 02:43:51 +02:00
CenTdemeern1
6685c97147 mainContainer -> toolbarClock 2022-04-02 02:43:44 +02:00
CenTdemeern1
b07152a119 Initial attempt at writing a test for the toolbarClock
I'll add more once I know if this code passes review or not
2022-04-02 02:35:37 +02: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
058350dfd8 Fix failing test due to incorrect sizing specification 2022-04-01 10:53:16 +09:00
Bartłomiej Dach
1c7b259f8e
Merge branch 'master' into mod-overlay/sheared-toggle 2022-03-31 22:20:20 +02:00
Bartłomiej Dach
e180db145d
Add constructor argument to facilitate fixed width/autosizing 2022-03-31 22:19:08 +02:00
Bartłomiej Dach
b3896257ca
Move shear amount to constant 2022-03-31 22:09:03 +02:00
Dean Herbert
e8a295a61b Add test coverage of textbox focus in settings panels when switching between nested panels 2022-03-31 15:24:21 +09:00
Bartłomiej Dach
3ac0da2da3
Implement sheared toggle button 2022-03-30 22:50:21 +02:00
Bartłomiej Dach
f4184cb6fe
Fix typo in step name 2022-03-30 22:04:55 +02:00
Bartłomiej Dach
9621a7f9cb
Merge branch 'master' into fix-autoplay-mod-user-id 2022-03-30 21:41:45 +02:00
Dan Balasescu
cb1ee05539
Merge pull request #17555 from peppy/remove-source-from-wedge
Remove song source from main wedge display
2022-03-30 18:57:25 +09:00
Dean Herbert
bc0b982102 Remove song source from main wedge display
This was definitely added at someone's request, since I wouldn't have
put it here. But it's displayed below in the details section already and
also not displayed in the updated "wedge" in the new design.

See https://github.com/ppy/osu/discussions/17537 for discussion.
2022-03-30 17:59:40 +09:00
Dean Herbert
99f141d396
Merge pull request #17546 from frenzibyte/autoplay-cinema-incompatibility
Mark both "Autoplay" and "Cinema" mods as mutually exclusive
2022-03-30 16:41:07 +09:00
Salman Ahmed
7495a04990 Ignore EF-to-realm migration tests on ARM architectures 2022-03-30 01:24:37 +03:00
Salman Ahmed
b7ae431252 Add test coverage 2022-03-30 01:08:22 +03:00
Jai Sharma
f049d7cb67 Implement ChatTextBox for new chat design
Reference design: https://www.figma.com/file/f8b2dHp9LJCMOqYP4mdrPZ/Client%2FChat?node-id=1%3A297

Adds new component `ChatTextBox`.
Exposes `BindableBool` `ShowSearch` to change text input behaviour
between normal and search behaviour.

Adds new component `ChatTextBar`.
Exposes `BindableBool` `ShowSearch` which toggles between showing current
chat channel or search icon.
Additionally binds to child `ChatTextBox` components.
Requires a cached `Bindable<Channel>` instance to be managed by a parent
component.
2022-03-29 22:33:38 +01:00
Dean Herbert
ea9495eb74 Update all existing calls to extension method with correct fallback handling 2022-03-29 16:51:30 +09:00
Dean Herbert
7059e4bf94 Add test coverage for autoplay avatar not being clickable 2022-03-28 23:37:39 +09:00
Dean Herbert
01980effe2
Merge pull request #17449 from smoogipoo/countdown-button-ux
Improve multiplayer ready button/countdown button UX
2022-03-27 13:42:10 +09:00
Bartłomiej Dach
b68c3265f6
Merge branch 'master' into clock 2022-03-26 20:55:08 +01:00
Bartłomiej Dach
69cc863611
Fix test failures in skin editor test scene 2022-03-26 19:28:07 +01:00
Dean Herbert
622458e857 Allow scaling display in the test scene 2022-03-26 18:56:28 +09:00
Dean Herbert
999ae88af2 Show game time display in clock 2022-03-26 18:13:20 +09:00
Dean Herbert
0d8a7246dd Add basic implementation of clock 2022-03-26 18:13:13 +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
Dean Herbert
1acfbf490b
Merge branch 'master' into mod-overlay/settings-area 2022-03-25 17:37:39 +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
478174dd58
Merge pull request #17416 from peppy/skin-fuck
Refactor skin construction
2022-03-25 15:36:06 +09:00
Dan Balasescu
f0d132b16e Rename FinishCountdown() -> SkipToEndOfCountdown() 2022-03-24 15:21:46 +09:00
Dean Herbert
16dc2f6ef5 Adjust TestSceneFailAnimation to account for initial frequency change 2022-03-24 14:51:21 +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
Dean Herbert
6542f974f2
Merge branch 'master' into skin-fuck 2022-03-23 15:30:22 +09:00
Dan Balasescu
a83a90e675 Rename countdown Delay -> Duration 2022-03-23 15:21:16 +09:00
Dean Herbert
a7f63fb034 Make providing a custom ResourceStore to LegacyBeatmapSkin optional (for tests only) 2022-03-23 14:57:42 +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
Dan Balasescu
1ffa1e1219
Merge pull request #17400 from nagilson/screen-mod-retention
Fix mods from single player carrying over to multiplayer
2022-03-23 08:36:15 +09:00
Dan Balasescu
8591630e5c
Merge branch 'master' into editor-exit-harsh-blocking 2022-03-23 07:06:25 +09:00
Bartłomiej Dach
8647bebdca
Merge branch 'master' into hold-to-discard-changes 2022-03-22 20:37:43 +01:00
Bartłomiej Dach
c8d48f89e8
Remove unnecessary local 2022-03-22 19:13:22 +01:00
Bartłomiej Dach
94c5207f36
Fix test not actually testing desired scenario anymore
The test was checking the test scene's own `SelectedMods` bindable
rather than the multiplayer screen's, and the former was never actually
being mutated by anything. Therefore the case would pass even on
`master` with the fix reverted.
2022-03-22 19:04:32 +01:00
Dean Herbert
804e856160 Move and refactor test in line with functionality changes 2022-03-22 17:38:43 +09:00
Dean Herbert
ff8352b749
Merge branch 'master' into screen-mod-retention 2022-03-22 17:27:26 +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
Dean Herbert
61ddf1e6cf Disallow exiting the editor without saving (unless explicitly confirming) 2022-03-22 15:42:56 +09:00
NAGILSON
33d97f53cb Fill in assert details, remove whitespace 2022-03-21 22:58:53 -04:00
NAGILSON
aaf2edace9 remove code from old incorrect test 2022-03-21 22:48:08 -04:00
NAGILSON
74ce009ed8 [WIP] Multiplayer Mods Regression Test 2022-03-21 22:46:20 -04:00
Dean Herbert
ed66f86ac6 Update editor exit-without-safe tests to account for hold behaviour 2022-03-21 17:52:54 +09:00
Dean Herbert
3643f879e4 Add test coverage of skin editor settings slider not working via keyboard adjustments 2022-03-21 17:33:56 +09:00
Dean Herbert
b42081dd9b Add DangerousButton for use in popup dialogs 2022-03-21 16:06:45 +09:00
Dean Herbert
5104e4db21 Add step to TestSceneChannelListItem to actually select an item 2022-03-21 14:33:50 +09:00
Dean Herbert
812343b410 Merge branch 'master' into new-chat-channel-control 2022-03-21 14:14:02 +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
Jai Sharma
ba5a43b526 Rename ControlItem -> ChannelListItem and associated classes 2022-03-19 21:49:14 +00:00
Dean Herbert
63998ad9f1 Add test coverage of SpectatorPlayer failing to seek on inopportune frame arrival time 2022-03-19 15:06:22 +09: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
Dan Balasescu
af6d53ad64
Merge pull request #17279 from peppy/skin-editor-borrowed-dependencies
Only show components in skin editor which are usable on the current screen
2022-03-18 11:29:12 +09:00
Dean Herbert
6ec024c84d
Merge pull request #17307 from frenzibyte/lead-in-test-scene-manual 2022-03-18 10:53:16 +09:00
Bartłomiej Dach
cf623a2889
Merge branch 'master' into multiplayer-button-refactor 2022-03-17 22:33:48 +01:00
Bartłomiej Dach
50d64e1b65
Merge branch 'master' into skin-editor-borrowed-dependencies 2022-03-17 21:27:43 +01:00
Bartłomiej Dach
a8bb696e5b
Cache gameplay clock in more places to fix song progress related tests 2022-03-17 21:22:07 +01:00
Dean Herbert
e3ab5de8cd Tidy up constructor logic overlap with gameplayStartTime 2022-03-18 01:35:50 +09:00
Dean Herbert
e3a8bb2d1c Add test coverage of SpectatorPlayer failing to seek on inopportune frame arrival time 2022-03-17 20:57:30 +09:00
Dean Herbert
ef29de9971 Add one more missing dependency required by SongProgress 2022-03-17 19:50:43 +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
ac739c9dae Change PerformancePointsCounter resolution requirements to be required
All other similar UI components have required dependencies, so this is
mainly to bring things in line with expectations. I am using this fact
in the skin editor to only show components which can be used in the
current editor context (by `try-catch`ing their
`Activator.CreateInstance`).
2022-03-17 14:56:35 +09:00
Salman Ahmed
46e66e66e4 Make opening chat overlay opt-in to add coverage for unloaded chat overlays
Causes `TestHighlightWhileChatNeverOpen` to fail as expected.
2022-03-17 08:19:40 +03:00
Bartłomiej Dach
624f9fc774
Implement mod settings area component 2022-03-16 23:13:11 +01:00
Bartłomiej Dach
a8cefca685
Simplify fade-out transform 2022-03-16 21:49:04 +01:00
Bartłomiej Dach
03d3969b38
Remove unnecessary OsuColour cache
One is already cached at `OsuGameBase` level.
2022-03-16 21:46:02 +01:00
Dean Herbert
3f61b0d968 Add missing OverlayColourProvider to SkinEditor test 2022-03-16 22:23:19 +09:00
Dan Balasescu
7f65f6adcc
Merge branch 'master' into skin-editor-sidebars 2022-03-16 21:12:18 +09:00
Jai Sharma
c2e4779c2e Remove redundant spacing in ControlItem test scene 2022-03-16 11:57:11 +00:00
Dan Balasescu
b9387c7ff1
Merge branch 'master' into skin-editor-scene-library 2022-03-16 20:42:30 +09:00
Dean Herbert
4525ed645c Update skin editor to use EditorSidebar 2022-03-16 19:30:51 +09:00
Dean Herbert
d062810ff2 Add basic scene selector 2022-03-16 19:12:06 +09:00
Dean Herbert
2452d84e98 Add missing Schedule call to allow individual tests from TestSceneMessageNotifier to pass 2022-03-16 18:44:30 +09:00
Dan Balasescu
7e8aa77b2b
Merge pull request #17260 from peppy/editor-sidebar
Add `EditorSidebar` component
2022-03-16 18:20:18 +09:00
Dean Herbert
ba1642a680 Allow section headers to wrap 2022-03-16 17:19:08 +09:00
Jai Sharma
1c79083f96 Move all PlaylistResultScreen test state initialisation into SetUpSteps 2022-03-15 22:15:35 +00:00
Jai Sharma
c56df80106 Fix PlaylistResultsScreen test failures
As seen: https://github.com/ppy/osu/pull/17252/checks?check_run_id=5545717506

The `PlaylistsResultsScreen` takes a lease on the `Beatmap` bindable
when entered. During `SetUp`, the `Beatmap` bindable is reassigned but
fails in cases where an existing test instance of the screen hasn't been
exited yet. This fix moves the assignment into the `SetUpSteps` function
after `base.SetUpSteps` is called which will exit the existing screens
first.
2022-03-15 20:38:04 +00:00
Dean Herbert
9e476ced63 Add EditorSidebar component 2022-03-15 16:38:00 +09:00
Dean Herbert
6fb06d69cc
Merge branch 'master' into pp-counter-alloc-reduction 2022-03-15 13:31:57 +09:00
Dean Herbert
deb4aeb4b2
Merge pull request #17242 from smoogipoo/performance-calculator-cleanup
Restructure PerformanceCalculator to not require ScoreInfo argument
2022-03-15 13:31:34 +09:00
Dan Balasescu
daac933498 Remove unnecessary ctor arguments 2022-03-15 12:34:58 +09:00
Dan Balasescu
59d57a44d4 Prevent incorrect usages by hard-typing ctor type 2022-03-15 09:11:59 +09:00
Jai Sharma
6628b7c654 Ensure existing items are expired and cleared in ChannelControlItem test setup 2022-03-14 22:21:18 +00:00
Jai Sharma
75958bf270 Refactor ControlItemText to use bindable flow for unread state 2022-03-14 21:32:30 +00:00
Jai Sharma
b01a809d55 Refactor ControlItemMention to use bindable flow 2022-03-14 21:26:33 +00:00
Jai Sharma
9621ef9437 Use OsuColour.Red1 for ControlItemClose hover colour 2022-03-14 21:10:39 +00:00
Jai Sharma
e9f0ad33ef Use autosizing for ChannelControlItem test scene 2022-03-14 20:06:31 +00:00
Jai Sharma
c0d82dfb41 Code quality fixes 2022-03-14 19:42:55 +00:00
Jai Sharma
39c30516d0 Implement ChannelControlItem for new chat design
Adds new component `ChannelControlItem` and it's child components to be
used as the clickable control in the new chat sidebar for joined
channels.

Has public properties `HasUnread` and `MentionCount` to control the
display of the channel having unread messages or mentions of the user.

Channel select/join requests are exposed via `OnRequestSelect` and
`OnRequestLeave` events respectively which should be handled by a parent
component.

Requires a cached `Bindable<Channel>` instance to be managed by a parent
component.

Requires a cached `OveralayColourScheme` instance to be provided by a
parent component.
2022-03-14 18:55:27 +00:00
Dean Herbert
b31ff679fb Provide correct HitResult type for random judgements in TestSceneHitErrorMeter 2022-03-14 19:16:19 +09:00
Dan Balasescu
3fff7f4b7e Require ScoreProcessor to receive ruleset 2022-03-14 15:51:10 +09:00
Dan Balasescu
4a3e3aba65 Restructure PerformanceCalculator to not require ScoreInfo argument 2022-03-14 14:25:28 +09:00
Salman Ahmed
720e1cd206 Add failing test cases 2022-03-14 03:47:18 +03:00
Salman Ahmed
dbc26c3534 Add failing test assertion 2022-03-14 03:46:11 +03:00
Salman Ahmed
cc87563d57
Merge branch 'master' into chat-mention-highlight 2022-03-11 17:51:22 +03:00
Salman Ahmed
a31611bdec Improve channel switching flow in HighlightMessage 2022-03-10 23:07:15 +03:00
Salman Ahmed
e419370830 Add test coverage for highlighting message on left channel 2022-03-10 21:30:02 +03:00
Dean Herbert
d1f8fd01df
Merge pull request #17180 from jai-x/new-chat-channel-listing
Implement `ChannelListing` for new chat design
2022-03-10 19:27:58 +09:00
Dean Herbert
d5eca16b69 Fix potential test failures due to slow realm refresh in TestSceneScreenNavigation
As seen at https://github.com/ppy/osu/runs/5492345983?check_suite_focus=true.
2022-03-10 18:10:08 +09:00
Dean Herbert
db5c2c15dc
Merge pull request #17164 from smoogipoo/scoreprocessor-rework
Rework ScoreProcessor score calculation methods to fix various issues
2022-03-10 16:48:58 +09:00
Dean Herbert
0155519343 Merge branch 'master' into new-chat-channel-listing 2022-03-10 15:49:06 +09:00
Dean Herbert
022dd88aef
Merge branch 'master' into chat-mention-highlight 2022-03-10 14:23:23 +09:00
Salman Ahmed
f229447453 Add too many messages to better test long scrolls 2022-03-10 04:01:07 +03:00
Salman Ahmed
d4de435eb2 Add test case for highlighting while chat overlay is hidden 2022-03-10 02:50:27 +03:00
Salman Ahmed
80c0df6af5 Scroll chat line to channel center
We may eventually want that encapsulated within `ScrollIntoView`, as it
would also come in handy for `GameplayLeaderboard`.
2022-03-10 02:50:15 +03:00
Jai Sharma
b67f9269f9 Remove NewChat namespace 2022-03-09 18:13:56 +00:00
Dean Herbert
94ff6a338f
Merge branch 'master' into scoreprocessor-rework 2022-03-09 23:04:18 +09:00
Dean Herbert
2e350a91cc Fix non-matching filename 2022-03-09 18:07:43 +09:00
Dean Herbert
2eb3365f46 Fix regressing issues when attempting to exit Player after an unsuccessful beatmap load 2022-03-09 17:57:58 +09:00
Dean Herbert
1ee0be5e39 Ensure gameplay can't start when an UnknownMod is present 2022-03-09 17:57:58 +09:00
Dean Herbert
affcf5180b
Merge pull request #17161 from smoogipoo/fix-listing-score-conversion
Fix scores not being recalculated in beatmap overlay
2022-03-09 13:32:45 +09:00
Dean Herbert
58aef25ad5
Merge pull request #17152 from bdach/mod-overlay/difficulty-multiplier
Implement difficulty multiplier display for new mod select design
2022-03-09 12:11:16 +09:00
Dan Balasescu
810cbd745d
Merge pull request #17170 from peppy/fix-top-local-rank-test-failures-realm-callback
Refactor top local rank test method to be more resilient to slow realm callbacks
2022-03-09 11:14:37 +09:00
Dan Balasescu
af4423959c
Merge pull request #17169 from peppy/fix-song-select-test-failures-realm-callback
Refactor song select test methods to be resilient to slow realm callbacks
2022-03-09 11:14:26 +09:00
Jai Sharma
9720a06b16 Use int in ChannelListing test 2022-03-09 00:52:33 +00:00
Jai Sharma
a3477c3841 Implement ChannelListing for new chat design
Adds components `ChannelListing` and `ChannelListing` item with visual
test. Essentially a more simplified version of the existing
`ChannelSelectionOverlay` component.

Correctly implements `IFilterable` behaviour to filter child channel
items. Channel joined state is based on the underlying `Joined` bindable
of the `Channel` class.

Channel join/leave events are exposed via `OnRequestJoin` and
`OnRequestLeave` events which should be handled by parent component.

Requires a cached `OverlayColourScheme` instance to be provided by the
parent overlay component when added.
2022-03-08 22:30:58 +00:00
Dan Balasescu
714789f726
Merge pull request #17167 from peppy/fix-download-button-test-failure
Fix potential test failure on slow realm callback in `TestSceneBeatmapDownloadButton`
2022-03-09 01:49:23 +09:00
Dean Herbert
233c8232d3 Fix TestSceneTopLocalRank.TestHighScoreSet not waiting for potentially slow realm callback
As brought to light by https://gist.github.com/smoogipoo/56eda7ab56b9d1966556f2ca7a80a847.
2022-03-09 01:22:01 +09:00
Dean Herbert
286bafe326 Refactor multiple TestScenePlaySongSelect test methods to be resilient to slow realm callbacks 2022-03-09 01:18:53 +09:00
Dean Herbert
56ad684f5b Fix potential test failure on slow realm callback in TestSceneBeatmapDownloadButton
As brought to light by https://gist.github.com/smoogipoo/56eda7ab56b9d1966556f2ca7a80a847.
2022-03-09 01:11:46 +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
e9a2d23542 Fix score order related test failure 2022-03-08 23:35:35 +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
Dean Herbert
da7c6f1772 Merge branch 'master' into chat-mention-highlight 2022-03-08 21:15:12 +09:00
Dan Balasescu
d13a66a96c Rework test scene by only relying on OnlineID 2022-03-08 20:11:56 +09:00
Salman Ahmed
7f47be4680 Refactor message highlighting logic to rely on a Channel data bindable 2022-03-08 03:19:37 +03:00
Bartłomiej Dach
78a3b5961e
Implement basic difficulty multiplier display 2022-03-07 22:50:51 +01:00
Dean Herbert
bd1adaf245
Merge pull request #17115 from frenzibyte/manual-channel-scroll
Refactor channel scrolling container to handle non-user scrolls
2022-03-07 11:26:23 +09:00
Salman Ahmed
741702549b Add test coverage for chat overlay message highlighting 2022-03-07 05:10:49 +03:00
Salman Ahmed
cb2133944d Add test coverage for channel message highlighting 2022-03-07 05:10:49 +03:00
Dan Balasescu
ba83db0229
Merge pull request #17134 from bdach/mod-overlay/popup-screen-title
Implement popup screen title component
2022-03-07 11:03:38 +09:00
Salman Ahmed
e5a6564034
Merge branch 'master' into fix-storyboard-sample-rate 2022-03-07 03:12:40 +03:00
Salman Ahmed
9bc1f3f014 Further refactor and simplify ChannelScrollContainer 2022-03-06 23:34:12 +03:00
Bartłomiej Dach
54275813b5
Use text flow container in popup screen title 2022-03-06 20:41:31 +01:00
Bartłomiej Dach
df0617f34c
Implement popup screen title component 2022-03-06 16:09:18 +01:00
Salman Ahmed
5b3ffb12b7 Refactor channel scrolling container to handle manual scrolls resiliently 2022-03-05 23:27:07 +03:00
Dean Herbert
0e8ad4b143 Switch step to Until steps due to AddOnce firing logic 2022-03-06 01:50:25 +09:00
Salman Ahmed
76e64f5013 Use manual framed clock for lead-in player test scene 2022-03-04 14:22:39 +03:00
Dean Herbert
e9e92b991e Fix calibrating offset from previous non-zero offset not applying adjustment correctly 2022-03-04 15:09:44 +09:00
Dean Herbert
92cd8ee29f Decrease overhead of hit event distribution tests 2022-03-04 14:56:49 +09:00
Dean Herbert
540d7d0e2c Add the ability to set and show an offset value on timing distribution graph 2022-03-04 14:36:15 +09:00
Dean Herbert
e09dd7d8fe Fix calibrating offset from previous non-zero offset not applying adjustment correctly 2022-03-04 13:25:14 +09:00
Dean Herbert
835cb09537 Merge branch 'master' into fix-hit-distribution-rounding 2022-03-04 12:43:57 +09:00
Dean Herbert
b0688cc6dd Merge branch 'master' into fix-storyboard-sample-rate 2022-03-04 12:04:49 +09:00
Bartłomiej Dach
e1610b5d32
Merge branch 'master' into ruleset-leaderboard-unavailable 2022-03-03 22:52:20 +01:00
Dean Herbert
a06d806fb9 Fix hit distribution graph midpoint rounding not looking great around zero
Not sure this will be accepted and it's likely only ever going to show
in tests, but seems to be a better approach to midpoint rounding for
this case?
2022-03-03 15:43:02 +09:00
Dean Herbert
a38eb426ef
Merge pull request #17026 from peppy/beatmap-offset-control
Add basic beatmap offset adjustment
2022-03-03 14:23:19 +09:00
Salman Ahmed
2f485a29d5
Merge branch 'master' into mod-overlay/columns 2022-03-03 00:11:33 +03:00
Salman Ahmed
2ce4faa356 Fix typo in method name 2022-03-03 00:02:36 +03:00
Salman Ahmed
bb94d68139 Separate storyboard samples and skip intro steps to own methods 2022-03-02 23:55:42 +03:00
Salman Ahmed
82bbc32d74 Remove unnecessary Schedule during setup 2022-03-02 23:44:58 +03:00
Salman Ahmed
a812ed4462 Ensure there is at least one sample during rate assertion 2022-03-02 23:40:14 +03:00
Salman Ahmed
cbb8dc2891 Fix storyboard samples rate not adjusted from actual gameplay mods 2022-03-02 20:56:18 +03:00
Salman Ahmed
e14a35b469 Add failing test case 2022-03-02 20:32:41 +03:00
Dean Herbert
f15b8781bb Move editor mode selector out of EditorMenuBar to allow for better reuse 2022-03-02 20:05:01 +09:00
Dean Herbert
dc6fa13337
Merge branch 'master' into mod-overlay/columns 2022-03-02 15:04:37 +09:00
Dean Herbert
ed9ecd6951 Fix test scene failures by ensuring that first GameplayClock frame has processed first 2022-03-02 14:45:39 +09:00
Dean Herbert
3cbcb702f6 Fix calibration button disabled state not checking in corrrect direction 2022-03-02 14:36:15 +09:00
Dean Herbert
c342030b2c Add specific placeholder message for custom rulesets rather than showing network error 2022-03-02 14:10:59 +09:00
Salman Ahmed
2767dda9d6 Add failing test case 2022-03-01 20:21:33 +03:00
Dean Herbert
222f50d211 Fix calibration being back-to-front 2022-03-01 20:41:54 +09:00
Dean Herbert
4d9efe771b Don't display calibration options when the previous play was too short to be useful 2022-03-01 20:12:59 +09:00
Dean Herbert
fab09575ec Add full testing flow for BeatmapOffsetControl 2022-03-01 18:44:15 +09:00
Dean Herbert
1847f69bf9 Add basic beatmap offset adjustment control 2022-03-01 18:44:15 +09:00
Dean Herbert
5e47e35f0d Add ability to change distribution of test HitEvents 2022-03-01 18:44:15 +09:00
Bartłomiej Dach
6cc972aa6a
Fix test failures by waiting for panel load 2022-02-28 21:36:13 +01:00
Bartłomiej Dach
42b27e3050
Clean up test step names 2022-02-28 20:44:13 +01:00
Dean Herbert
3634e12e66 Automatically focus divisor textbox and hide popover after successful change 2022-02-28 15:23:01 +09:00
Bartłomiej Dach
16c6b9b3b3
Add keyboard selection support to mod column 2022-02-27 22:51:29 +01:00
Bartłomiej Dach
b690df05de
Hide multiselection checkbox if everything is filtered 2022-02-27 22:51:29 +01:00
Bartłomiej Dach
a83f96b026
Add filtering support to mod column 2022-02-27 22:51:29 +01:00
Bartłomiej Dach
fe4e4bf9c5
Add test coverage of multiselection behaviour 2022-02-27 22:51:28 +01:00
Bartłomiej Dach
53e8072632
Port multiselection from previous design 2022-02-27 22:51:28 +01:00
Bartłomiej Dach
2e04a83554
Implement column display for new mod design 2022-02-27 22:51:27 +01:00
Bartłomiej Dach
a5600516f0
Fix test failures 2022-02-27 20:13:44 +01:00
Bartłomiej Dach
7de5dad4f0
Add test coverage for divisor behaviour 2022-02-27 19:23:02 +01:00
Bartłomiej Dach
423838a649
Add flow for specifying entirely custom snaps 2022-02-27 17:55:20 +01:00
Bartłomiej Dach
d0c01afc2e
Add flow for changing set of valid divisors between presets 2022-02-27 15:37:51 +01: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
6e8daa06fa Merge branch 'master' into mod-overlay/panel 2022-02-24 14:34:59 +09:00
Bartłomiej Dach
713f89a59c
Implement incompatibility-displaying variant of mod panel 2022-02-23 23:19:06 +01:00
Bartłomiej Dach
8a0aba6c59
Implement mod panel for new mod select screen 2022-02-23 23:18:14 +01:00
Bartłomiej Dach
29d77a29aa
Merge branch 'master' into startup-protocol-handling 2022-02-23 21:10:27 +01:00
Dean Herbert
260cf793fe Add test coverage of more advanced frame delivery scenarios to TestSceneSpectatorPlayback 2022-02-24 02:28:13 +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
5e7dd31f6d
Merge branch 'master' into mod-overlay/switches 2022-02-23 13:49:23 +09:00
Bartłomiej Dach
1a358698fb
Merge branch 'master' into startup-protocol-handling 2022-02-22 22:42:16 +01:00
Dean Herbert
5efffa208a Add test coverage of beatmap set overlay actually showing requested beatmap 2022-02-22 17:08:09 +09:00
Dean Herbert
347a2346b9 Fix TestSceneEditorSaving not waiting for timeline load
As seen at
https://github.com/ppy/osu/runs/5276431764?check_suite_focus=true.
2022-02-22 15:41:08 +09:00
Bartłomiej Dach
cfc41a0a36
Implement small mod switch 2022-02-22 00:26:35 +01:00
Bartłomiej Dach
5186693dad
Implement tiny mod switch 2022-02-22 00:26:35 +01:00
Bartłomiej Dach
d71e511413
Merge branch 'master' into spotlights-on-top 2022-02-21 23:42:02 +01: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
abe1a3990a
Merge branch 'master' into leaderboard-score-timeref 2022-02-21 12:11:10 +09:00
dekrain
15ed9ec4fa
Merge scoreboard and leaderboard implementations together 2022-02-19 20:47:02 +01:00
Dean Herbert
631c23ea3a Merge branch 'master' into beatmap-decoder-ruleset-store 2022-02-18 16:52:33 +09:00
Dean Herbert
29c5683ba3 Add handling of beatmap links on startup 2022-02-18 16:14:37 +09:00
Dean Herbert
98aaf83177 Add a centralised constant for the osu URL schema protocol 2022-02-18 15:57:37 +09:00
Dean Herbert
bbc4ea1203
Merge branch 'master' into better-new-difficulty-naming 2022-02-17 19:21:33 +09:00
dekrain
f4d1e6f600
Add tests for timerefs 2022-02-17 10:38:29 +01:00
Bartłomiej Dach
e459523afe
Adjust beatmap creation test cases to new behaviour 2022-02-17 00:28:18 +01:00
Dean Herbert
0138f22c8d Update existing usages to point to RealmRulesetStore 2022-02-16 17:13:54 +09:00
Dan Balasescu
5dd9771c5f Remove mod multipliers from being applied to scores 2022-02-16 16:27:27 +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
Salman Ahmed
0992bec2c8 Change "distance spacing" multipler type to double
Avoids losing precision on initial load, causing an unnecessary
hash change in `EditorChangeHandler`.

Resolves test failures in `TestSceneEditorChangeStates`
(https://github.com/ppy/osu/runs/5192493482?check_suite_focus=true).
2022-02-16 03:28:12 +03:00
Salman Ahmed
7654584e40 Allow using SizeSlider on different value types 2022-02-16 03:25:03 +03:00
Dean Herbert
954ae60b81
Merge branch 'master' into copy-existing-difficulty 2022-02-16 08:55:12 +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
ccd265ebe7 Handle beatmap lookup requests in TestRoomRequestsHandler 2022-02-15 23:41:50 +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
Dean Herbert
a8f09a8676
Merge branch 'master' into remove-playlistitem-ruleset-mods 2022-02-15 17:40:39 +09:00
Dan Balasescu
03106e846c Fix test failures due to async mod icon loads 2022-02-15 17:15:00 +09:00
Dean Herbert
b1cf014dc2 Add test coverage of EF to Realm migration process 2022-02-15 17:00:17 +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
Salman Ahmed
cbc8f7ff90 Remove test coverage of "shift" hotkey behaviour 2022-02-15 02:29:09 +03:00
Salman Ahmed
9504942cfd Add test case for distance spacing hotkeys scrolling behaviour 2022-02-15 02:21:53 +03:00
Salman Ahmed
528dc03b8c Expose distance spacing in IPositionSnapProvider for updating distance grid
Alternate method is to expose a `SnapDistancesChanged` event in
`IPositionSnapProvider` instead, but I chose this way as an analogue to
`IBeatSnapProvider.BeatDivisor`, which might even make sense to be
exposed as `BindableBeatDivisor` instead of caching that separately.
2022-02-15 02:21:53 +03:00
Bartłomiej Dach
1685e214d3
Adjust test coverage to cover desired copy naming scheme 2022-02-14 19:59:54 +01:00
Dean Herbert
db74a226c0 Fix test regression due to mouse overlapping settings overlay 2022-02-15 02:54:45 +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
b9d9fc56af Move files to UI namespace 2022-02-14 17:51:39 +09:00
Dean Herbert
80ba06b0e3
Merge branch 'master' into expandable-controls 2022-02-14 16:57:45 +09:00
Bartłomiej Dach
13abc392bd
Add failing test coverage for not copying online properties 2022-02-13 18:54:52 +01:00
Bartłomiej Dach
90c48de9f8
Add failing test coverage for save of copied beatmap keeping old beatmap file 2022-02-13 14:01:23 +01:00
Bartłomiej Dach
1292722a00
Add failing test coverage for correct combo colour copy 2022-02-13 14:01:22 +01:00
Bartłomiej Dach
fd1c8c3614
Add failing test coverage for correct beatmap difficulty copy 2022-02-13 14:01:21 +01:00
Bartłomiej Dach
eb939547a9
Add test coverage for difficulty copy flow 2022-02-13 14:01:21 +01:00
Bartłomiej Dach
0d1171b7fa
Adjust existing test coverage to pass 2022-02-13 14:01:20 +01:00
Dean Herbert
6005daeba8 Fix fire-and-forget async calls to use WaitSafely 2022-02-11 16:02:42 +09:00
Dean Herbert
f012f64fd1 Add test coverage checking carousel panel visual state after ruleset filter change 2022-02-11 15:21:01 +09:00
Dean Herbert
eda213e4de
Merge pull request #16827 from smoogipoo/spectator-state-rework
Add user state to SpectatorState, allowing multiplayer to continue to results
2022-02-11 01:48:47 +09:00
Dean Herbert
19cb8cb03a Update tests 2022-02-10 19:35:28 +09:00
Dan Balasescu
ffc4c64f7e Unify namings across the board 2022-02-09 12:10:07 +09:00
Dan Balasescu
4966c4e974 Remove redundant parameter 2022-02-09 11:51:47 +09:00
Dan Balasescu
886d1d2df6 Refactorings 2022-02-08 21:29:43 +09:00
Dan Balasescu
4c76027178 Rename completed state to passed 2022-02-08 20:29:49 +09:00
Dan Balasescu
0d99017178 Add state tests 2022-02-08 20:27:08 +09:00