mirror of
https://github.com/osukey/osukey.git
synced 2025-04-29 02:37:25 +09:00
add new test case and fix rotation not working
This commit is contained in:
parent
046412f962
commit
de9f15f620
62
osu.Game.Tests/Visual/TestCaseBadgeContainer.cs
Normal file
62
osu.Game.Tests/Visual/TestCaseBadgeContainer.cs
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
// Copyright (c) 2007-2018 ppy Pty Ltd <contact@ppy.sh>.
|
||||||
|
// Licensed under the MIT Licence - https://raw.githubusercontent.com/ppy/osu/master/LICENCE
|
||||||
|
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using NUnit.Framework;
|
||||||
|
using osu.Framework.Graphics;
|
||||||
|
using osu.Game.Overlays.Profile.Header;
|
||||||
|
using osu.Game.Users;
|
||||||
|
|
||||||
|
namespace osu.Game.Tests.Visual
|
||||||
|
{
|
||||||
|
[TestFixture]
|
||||||
|
public class TestCaseBadgeContainer : OsuTestCase
|
||||||
|
{
|
||||||
|
public override IReadOnlyList<Type> RequiredTypes => new[] { typeof(BadgeContainer) };
|
||||||
|
|
||||||
|
public TestCaseBadgeContainer()
|
||||||
|
{
|
||||||
|
BadgeContainer badgeContainer;
|
||||||
|
|
||||||
|
Child = badgeContainer = new BadgeContainer
|
||||||
|
{
|
||||||
|
RelativeSizeAxes = Axes.Both
|
||||||
|
};
|
||||||
|
|
||||||
|
AddStep("Show 1 badge", () => badgeContainer.ShowBadges(new[]
|
||||||
|
{
|
||||||
|
new Badge
|
||||||
|
{
|
||||||
|
AwardedAt = DateTimeOffset.Now,
|
||||||
|
Description = "Appreciates compasses",
|
||||||
|
ImageUrl = "https://assets.ppy.sh/profile-badges/mg2018-1star.png",
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
|
||||||
|
AddStep("Show 2 badges", () => badgeContainer.ShowBadges(new[]
|
||||||
|
{
|
||||||
|
new Badge
|
||||||
|
{
|
||||||
|
AwardedAt = DateTimeOffset.Now,
|
||||||
|
Description = "Contributed to osu!lazer testing",
|
||||||
|
ImageUrl = "https://assets.ppy.sh/profile-badges/contributor.png",
|
||||||
|
},
|
||||||
|
new Badge
|
||||||
|
{
|
||||||
|
AwardedAt = DateTimeOffset.Now,
|
||||||
|
Description = "Appreciates compasses",
|
||||||
|
ImageUrl = "https://assets.ppy.sh/profile-badges/mg2018-1star.png",
|
||||||
|
}
|
||||||
|
}));
|
||||||
|
|
||||||
|
AddStep("Show many badges", () => badgeContainer.ShowBadges(Enumerable.Range(1, 20).Select(i => new Badge
|
||||||
|
{
|
||||||
|
AwardedAt = DateTimeOffset.Now,
|
||||||
|
Description = $"Contributed to osu!lazer testing {i} times",
|
||||||
|
ImageUrl = "https://assets.ppy.sh/profile-badges/contributor.jpg",
|
||||||
|
}).ToArray()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
@ -36,24 +36,36 @@ namespace osu.Game.Tests.Visual
|
|||||||
{
|
{
|
||||||
base.LoadComplete();
|
base.LoadComplete();
|
||||||
|
|
||||||
AddStep("Show offline dummy", () => profile.ShowUser(createDummyUser(new Badge[0]), false));
|
AddStep("Show offline dummy", () => profile.ShowUser(new User
|
||||||
|
|
||||||
AddStep("Show with badge", () => profile.ShowUser(createDummyUser(new[]
|
|
||||||
{
|
{
|
||||||
new Badge
|
Username = @"Somebody",
|
||||||
|
Id = 1,
|
||||||
|
Country = new Country { FullName = @"Alien" },
|
||||||
|
CoverUrl = @"https://osu.ppy.sh/images/headers/profile-covers/c1.jpg",
|
||||||
|
JoinDate = DateTimeOffset.Now.AddDays(-1),
|
||||||
|
LastVisit = DateTimeOffset.Now,
|
||||||
|
Age = 1,
|
||||||
|
ProfileOrder = new[] { "me" },
|
||||||
|
Statistics = new UserStatistics
|
||||||
{
|
{
|
||||||
AwardedAt = DateTimeOffset.FromUnixTimeSeconds(1505741569),
|
Ranks = new UserStatistics.UserRanks { Global = 2148, Country = 1 },
|
||||||
Description = "Outstanding help by being a voluntary test subject.",
|
PP = 4567.89m,
|
||||||
ImageUrl = "https://assets.ppy.sh/profile-badges/contributor.jpg"
|
},
|
||||||
|
RankHistory = new User.RankHistoryData
|
||||||
|
{
|
||||||
|
Mode = @"osu",
|
||||||
|
Data = Enumerable.Range(2345, 45).Concat(Enumerable.Range(2109, 40)).ToArray()
|
||||||
|
},
|
||||||
|
Badges = new[]
|
||||||
|
{
|
||||||
|
new Badge
|
||||||
|
{
|
||||||
|
AwardedAt = DateTimeOffset.FromUnixTimeSeconds(1505741569),
|
||||||
|
Description = "Outstanding help by being a voluntary test subject.",
|
||||||
|
ImageUrl = "https://assets.ppy.sh/profile-badges/contributor.jpg"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}), false));
|
}, false));
|
||||||
|
|
||||||
AddStep("Show many badges", () => profile.ShowUser(createDummyUser(Enumerable.Range(0, 10).Select(i => new Badge
|
|
||||||
{
|
|
||||||
AwardedAt = DateTimeOffset.Now,
|
|
||||||
Description = i.ToString(),
|
|
||||||
ImageUrl = "https://assets.ppy.sh/profile-badges/contributor.jpg"
|
|
||||||
}).ToArray()), false));
|
|
||||||
|
|
||||||
checkSupporterTag(false);
|
checkSupporterTag(false);
|
||||||
|
|
||||||
@ -94,32 +106,6 @@ namespace osu.Game.Tests.Visual
|
|||||||
AddAssert("no supporter", () => profile.Header.SupporterTag.Alpha == 0);
|
AddAssert("no supporter", () => profile.Header.SupporterTag.Alpha == 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
private User createDummyUser(Badge[] badges)
|
|
||||||
{
|
|
||||||
return new User
|
|
||||||
{
|
|
||||||
Username = @"Somebody",
|
|
||||||
Id = 1,
|
|
||||||
Country = new Country { FullName = @"Alien" },
|
|
||||||
CoverUrl = @"https://osu.ppy.sh/images/headers/profile-covers/c1.jpg",
|
|
||||||
JoinDate = DateTimeOffset.Now.AddDays(-1),
|
|
||||||
LastVisit = DateTimeOffset.Now,
|
|
||||||
Age = 1,
|
|
||||||
ProfileOrder = new[] { "me" },
|
|
||||||
Statistics = new UserStatistics
|
|
||||||
{
|
|
||||||
Ranks = new UserStatistics.UserRanks { Global = 2148, Country = 1 },
|
|
||||||
PP = 4567.89m,
|
|
||||||
},
|
|
||||||
RankHistory = new User.RankHistoryData
|
|
||||||
{
|
|
||||||
Mode = @"osu",
|
|
||||||
Data = Enumerable.Range(2345, 45).Concat(Enumerable.Range(2109, 40)).ToArray()
|
|
||||||
},
|
|
||||||
Badges = badges
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
private class TestUserProfileOverlay : UserProfileOverlay
|
private class TestUserProfileOverlay : UserProfileOverlay
|
||||||
{
|
{
|
||||||
public new ProfileHeader Header => base.Header;
|
public new ProfileHeader Header => base.Header;
|
||||||
|
@ -31,8 +31,6 @@ namespace osu.Game.Overlays.Profile.Header
|
|||||||
{
|
{
|
||||||
Child = new Container
|
Child = new Container
|
||||||
{
|
{
|
||||||
Anchor = Anchor.BottomLeft,
|
|
||||||
Origin = Anchor.BottomLeft,
|
|
||||||
Masking = true,
|
Masking = true,
|
||||||
CornerRadius = 4,
|
CornerRadius = 4,
|
||||||
AutoSizeAxes = Axes.Both,
|
AutoSizeAxes = Axes.Both,
|
||||||
@ -68,8 +66,6 @@ namespace osu.Game.Overlays.Profile.Header
|
|||||||
AutoSizeAxes = Axes.Both,
|
AutoSizeAxes = Axes.Both,
|
||||||
Child = badgeFlowContainer = new FillFlowContainer
|
Child = badgeFlowContainer = new FillFlowContainer
|
||||||
{
|
{
|
||||||
Anchor = Anchor.TopCentre,
|
|
||||||
Origin = Anchor.TopCentre,
|
|
||||||
Direction = FillDirection.Horizontal,
|
Direction = FillDirection.Horizontal,
|
||||||
AutoSizeAxes = Axes.Both,
|
AutoSizeAxes = Axes.Both,
|
||||||
}
|
}
|
||||||
@ -114,6 +110,7 @@ namespace osu.Game.Overlays.Profile.Header
|
|||||||
badgeCount = badges.Length;
|
badgeCount = badges.Length;
|
||||||
visibleBadge = 0;
|
visibleBadge = 0;
|
||||||
|
|
||||||
|
badgeFlowContainer.Clear();
|
||||||
foreach (var badge in badges)
|
foreach (var badge in badges)
|
||||||
{
|
{
|
||||||
LoadComponentAsync(new DrawableBadge(badge)
|
LoadComponentAsync(new DrawableBadge(badge)
|
||||||
|
@ -122,7 +122,8 @@ namespace osu.Game.Overlays.Profile
|
|||||||
},
|
},
|
||||||
badgeContainer = new BadgeContainer
|
badgeContainer = new BadgeContainer
|
||||||
{
|
{
|
||||||
RelativeSizeAxes = Axes.Both,
|
RelativeSizeAxes = Axes.X,
|
||||||
|
AutoSizeAxes = Axes.Y,
|
||||||
Origin = Anchor.BottomLeft,
|
Origin = Anchor.BottomLeft,
|
||||||
Margin = new MarginPadding { Bottom = 5 },
|
Margin = new MarginPadding { Bottom = 5 },
|
||||||
Alpha = 0,
|
Alpha = 0,
|
||||||
|
Loading…
x
Reference in New Issue
Block a user