This commit is contained in:
Dan Balasescu
2021-12-21 18:38:31 +09:00
parent a34d24fb20
commit e2f8c71081

View File

@ -6,7 +6,6 @@ using System.Linq;
using NUnit.Framework; using NUnit.Framework;
using osu.Framework.Allocation; using osu.Framework.Allocation;
using osu.Framework.Audio; using osu.Framework.Audio;
using osu.Framework.Bindables;
using osu.Framework.Graphics; using osu.Framework.Graphics;
using osu.Framework.Graphics.Containers; using osu.Framework.Graphics.Containers;
using osu.Framework.Platform; using osu.Framework.Platform;
@ -26,8 +25,6 @@ namespace osu.Game.Tests.Visual.Multiplayer
{ {
public class TestSceneMultiplayerQueueList : MultiplayerTestScene public class TestSceneMultiplayerQueueList : MultiplayerTestScene
{ {
private readonly Bindable<PlaylistItem> selectedItem = new Bindable<PlaylistItem>();
[Cached(typeof(UserLookupCache))] [Cached(typeof(UserLookupCache))]
private readonly TestUserLookupCache userLookupCache = new TestUserLookupCache(); private readonly TestUserLookupCache userLookupCache = new TestUserLookupCache();
@ -50,14 +47,11 @@ namespace osu.Game.Tests.Visual.Multiplayer
AddStep("create playlist", () => AddStep("create playlist", () =>
{ {
selectedItem.Value = null;
Child = playlist = new MultiplayerQueueList Child = playlist = new MultiplayerQueueList
{ {
Anchor = Anchor.Centre, Anchor = Anchor.Centre,
Origin = Anchor.Centre, Origin = Anchor.Centre,
Size = new Vector2(500, 300), Size = new Vector2(500, 300),
SelectedItem = { BindTarget = selectedItem },
Items = { BindTarget = Client.APIRoom!.Playlist } Items = { BindTarget = Client.APIRoom!.Playlist }
}; };
}); });
@ -111,12 +105,13 @@ namespace osu.Game.Tests.Visual.Multiplayer
addPlaylistItem(() => API.LocalUser.Value.OnlineID); addPlaylistItem(() => API.LocalUser.Value.OnlineID);
AddStep("select item 0", () => selectedItem.Value = playlist.ChildrenOfType<RearrangeableListItem<PlaylistItem>>().ElementAt(0).Model);
assertDeleteButtonVisibility(0, false); assertDeleteButtonVisibility(0, false);
assertDeleteButtonVisibility(1, true); assertDeleteButtonVisibility(1, true);
AddStep("select item 1", () => selectedItem.Value = playlist.ChildrenOfType<RearrangeableListItem<PlaylistItem>>().ElementAt(1).Model); AddStep("finish current item", () => Client.FinishCurrentItem());
assertDeleteButtonVisibility(0, true); AddUntilStep("wait for next item to be selected", () => Client.Room?.Settings.PlaylistItemId == 2);
assertDeleteButtonVisibility(0, false);
assertDeleteButtonVisibility(1, false); assertDeleteButtonVisibility(1, false);
} }