1
0
mirror of https://github.com/ppy/osu.git synced 2025-02-22 17:22:58 +08:00

Fix test case.

This commit is contained in:
DrabWeb 2018-05-22 02:08:50 -03:00
parent 349b0a3322
commit 0b19b7d9e5

View File

@ -173,34 +173,33 @@ namespace osu.Game.Tests.Visual
filterAssert(@"no matches", LoungeTab.Public, 0); filterAssert(@"no matches", LoungeTab.Public, 0);
AddStep(@"clear rooms", () => lounge.Rooms = new Room[] {}); AddStep(@"clear rooms", () => lounge.Rooms = new Room[] {});
AddStep(@"set rooms", () => lounge.Rooms = rooms); AddStep(@"set rooms", () => lounge.Rooms = rooms);
AddAssert(@"no matches after clear", () => lounge.MatchedCount == 0); AddAssert(@"no matches after clear", () => !lounge.ChildRooms.Any());
filterAssert(string.Empty, LoungeTab.Public, 2); filterAssert(string.Empty, LoungeTab.Public, 2);
AddStep(@"exit", lounge.Exit); AddStep(@"exit", lounge.Exit);
} }
private void clickRoom(int n) private void clickRoom(int n)
{ {
InputManager.MoveMouseTo(lounge.ChildRooms[n]); InputManager.MoveMouseTo(lounge.ChildRooms.ElementAt(n));
InputManager.Click(MouseButton.Left); InputManager.Click(MouseButton.Left);
} }
private void selectAssert(int n) private void selectAssert(int n)
{ {
AddStep($@"select room {n}", () => clickRoom(n)); AddStep($@"select room {n}", () => clickRoom(n));
AddAssert($@"room {n} selected", () => lounge.SelectedRoom == lounge.ChildRooms[n].Room); AddAssert($@"room {n} selected", () => lounge.SelectedRoom == lounge.ChildRooms.ElementAt(n).Room);
} }
private void filterAssert(string filter, LoungeTab tab, int endCount) private void filterAssert(string filter, LoungeTab tab, int endCount)
{ {
AddStep($@"filter '{filter}', {tab}", () => lounge.SetFilter(filter, tab)); AddStep($@"filter '{filter}', {tab}", () => lounge.SetFilter(filter, tab));
AddAssert(@"filtered correctly", () => lounge.MatchedCount == endCount); AddAssert(@"filtered correctly", () => lounge.ChildRooms.Count() == endCount);
} }
private class TestLounge : Lounge private class TestLounge : Lounge
{ {
public IReadOnlyList<DrawableRoom> ChildRooms => RoomsContainer.Children; public IEnumerable<DrawableRoom> ChildRooms => RoomsContainer.Children.Where(r => r.MatchingFilter);
public Room SelectedRoom => Inspector.Room; public Room SelectedRoom => Inspector.Room;
public int MatchedCount => ChildRooms.Count(r => r.MatchingFilter);
public void SetFilter(string filter, LoungeTab tab) public void SetFilter(string filter, LoungeTab tab)
{ {