2018-05-29 08:01:56 +08:00
|
|
|
|
// Copyright (c) 2007-2018 ppy Pty Ltd <contact@ppy.sh>.
|
|
|
|
|
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
|
|
|
|
|
2018-05-29 14:24:38 +08:00
|
|
|
|
using NUnit.Framework;
|
2018-05-29 12:51:04 +08:00
|
|
|
|
using osu.Framework.Allocation;
|
2018-05-29 09:11:01 +08:00
|
|
|
|
using osu.Game.Beatmaps;
|
2018-05-29 08:01:56 +08:00
|
|
|
|
using osu.Game.Online.Multiplayer;
|
2018-05-29 12:51:04 +08:00
|
|
|
|
using osu.Game.Rulesets;
|
2018-05-29 08:01:56 +08:00
|
|
|
|
using osu.Game.Screens.Multi.Screens.Match;
|
2018-05-29 13:42:52 +08:00
|
|
|
|
using osu.Game.Users;
|
2018-05-29 08:01:56 +08:00
|
|
|
|
|
|
|
|
|
namespace osu.Game.Tests.Visual
|
|
|
|
|
{
|
2018-05-29 14:24:38 +08:00
|
|
|
|
[TestFixture]
|
2018-05-29 08:01:56 +08:00
|
|
|
|
public class TestCaseMatch : OsuTestCase
|
|
|
|
|
{
|
2018-05-29 12:51:04 +08:00
|
|
|
|
[BackgroundDependencyLoader]
|
|
|
|
|
private void load(RulesetStore rulesets)
|
2018-05-29 08:01:56 +08:00
|
|
|
|
{
|
|
|
|
|
Room room = new Room
|
|
|
|
|
{
|
2018-05-29 12:51:04 +08:00
|
|
|
|
Name = { Value = @"One Awesome Room" },
|
|
|
|
|
Status = { Value = new RoomStatusOpen() },
|
|
|
|
|
Availability = { Value = RoomAvailability.Public },
|
|
|
|
|
Type = { Value = new GameTypeTeamVersus() },
|
2018-05-29 09:11:01 +08:00
|
|
|
|
Beatmap =
|
|
|
|
|
{
|
|
|
|
|
Value = new BeatmapInfo
|
|
|
|
|
{
|
2018-05-29 12:51:04 +08:00
|
|
|
|
StarDifficulty = 5.02,
|
|
|
|
|
Ruleset = rulesets.GetRuleset(1),
|
|
|
|
|
Metadata = new BeatmapMetadata
|
|
|
|
|
{
|
|
|
|
|
Title = @"Paradigm Shift",
|
|
|
|
|
Artist = @"Morimori Atsushi",
|
|
|
|
|
AuthorString = @"eiri-",
|
|
|
|
|
},
|
2018-05-29 09:11:01 +08:00
|
|
|
|
BeatmapSet = new BeatmapSetInfo
|
|
|
|
|
{
|
|
|
|
|
OnlineInfo = new BeatmapSetOnlineInfo
|
|
|
|
|
{
|
|
|
|
|
Covers = new BeatmapSetOnlineCovers
|
|
|
|
|
{
|
|
|
|
|
Cover = @"https://assets.ppy.sh/beatmaps/765055/covers/cover.jpg?1526955337",
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
},
|
2018-05-29 13:42:52 +08:00
|
|
|
|
MaxParticipants = { Value = 5 },
|
|
|
|
|
Participants =
|
|
|
|
|
{
|
|
|
|
|
Value = new[]
|
|
|
|
|
{
|
|
|
|
|
new User
|
|
|
|
|
{
|
|
|
|
|
Username = @"eiri-",
|
|
|
|
|
Id = 3388410,
|
|
|
|
|
Country = new Country { FlagName = @"US" },
|
|
|
|
|
CoverUrl = @"https://assets.ppy.sh/user-profile-covers/3388410/00a8486a247831e1cc4375db519f611ac970bda8bc0057d78b0f540ea38c3e58.jpeg",
|
|
|
|
|
IsSupporter = true,
|
|
|
|
|
},
|
|
|
|
|
new User
|
|
|
|
|
{
|
|
|
|
|
Username = @"Nepuri",
|
|
|
|
|
Id = 6637817,
|
|
|
|
|
Country = new Country { FlagName = @"DE" },
|
|
|
|
|
CoverUrl = @"https://assets.ppy.sh/user-profile-covers/6637817/9085fc60248b6b5327a72c1dcdecf2dbedba810ae0ab6bcf7224e46b1339632a.jpeg",
|
|
|
|
|
IsSupporter = true,
|
|
|
|
|
},
|
|
|
|
|
new User
|
|
|
|
|
{
|
|
|
|
|
Username = @"goheegy",
|
|
|
|
|
Id = 8057655,
|
|
|
|
|
Country = new Country { FlagName = @"GB" },
|
|
|
|
|
CoverUrl = @"https://assets.ppy.sh/user-profile-covers/8057655/21cec27c25a11dc197a4ec6a74253dbabb495949b0e0697113352f12007018c5.jpeg",
|
|
|
|
|
},
|
|
|
|
|
new User
|
|
|
|
|
{
|
|
|
|
|
Username = @"Alumetri",
|
|
|
|
|
Id = 5371497,
|
|
|
|
|
Country = new Country { FlagName = @"RU" },
|
|
|
|
|
CoverUrl = @"https://assets.ppy.sh/user-profile-covers/5371497/e023b8c7fbe3613e64bd4856703517ea50fbed8a5805dc9acda9efe9897c67e2.jpeg",
|
|
|
|
|
},
|
|
|
|
|
}
|
|
|
|
|
},
|
2018-05-29 08:01:56 +08:00
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
Match match = new Match(room);
|
|
|
|
|
|
|
|
|
|
AddStep(@"show", () => Add(match));
|
2018-05-29 15:16:19 +08:00
|
|
|
|
AddStep(@"null beatmap", () => room.Beatmap.Value = null);
|
|
|
|
|
AddStep(@"change name", () => room.Name.Value = @"Two Awesome Rooms");
|
|
|
|
|
AddStep(@"change status", () => room.Status.Value = new RoomStatusPlaying());
|
|
|
|
|
AddStep(@"change availability", () => room.Availability.Value = RoomAvailability.FriendsOnly);
|
|
|
|
|
AddStep(@"change type", () => room.Type.Value = new GameTypeTag());
|
|
|
|
|
AddStep(@"change beatmap", () => room.Beatmap.Value = new BeatmapInfo
|
|
|
|
|
{
|
|
|
|
|
StarDifficulty = 4.33,
|
|
|
|
|
Ruleset = rulesets.GetRuleset(2),
|
|
|
|
|
Metadata = new BeatmapMetadata
|
|
|
|
|
{
|
|
|
|
|
Title = @"Yasashisa no Riyuu",
|
|
|
|
|
Artist = @"ChouCho",
|
|
|
|
|
AuthorString = @"celerih",
|
|
|
|
|
},
|
|
|
|
|
BeatmapSet = new BeatmapSetInfo
|
|
|
|
|
{
|
|
|
|
|
OnlineInfo = new BeatmapSetOnlineInfo
|
|
|
|
|
{
|
|
|
|
|
Covers = new BeatmapSetOnlineCovers
|
|
|
|
|
{
|
|
|
|
|
Cover = @"https://assets.ppy.sh/beatmaps/685391/covers/cover.jpg?1524597970",
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
AddStep(@"null max participants", () => room.MaxParticipants.Value = null);
|
|
|
|
|
AddStep(@"change participants", () => room.Participants.Value = new[]
|
|
|
|
|
{
|
|
|
|
|
new User
|
|
|
|
|
{
|
|
|
|
|
Username = @"Spectator",
|
|
|
|
|
Id = 702598,
|
|
|
|
|
Country = new Country { FlagName = @"KR" },
|
|
|
|
|
CoverUrl = @"https://assets.ppy.sh/user-profile-covers/702598/3bbf4cb8b8d2cf8b03145000a975ff27e191ab99b0920832e7dd67386280e288.jpeg",
|
|
|
|
|
IsSupporter = true,
|
|
|
|
|
},
|
|
|
|
|
new User
|
|
|
|
|
{
|
|
|
|
|
Username = @"celerih",
|
|
|
|
|
Id = 4696296,
|
|
|
|
|
Country = new Country { FlagName = @"CA" },
|
|
|
|
|
CoverUrl = @"https://assets.ppy.sh/user-profile-covers/4696296/7f8500731d0ac66d5472569d146a7be07d9460273361913f22c038867baddaef.jpeg",
|
|
|
|
|
},
|
|
|
|
|
});
|
|
|
|
|
|
2018-05-29 08:01:56 +08:00
|
|
|
|
AddStep(@"exit", match.Exit);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
}
|