35 lines
1.0 KiB
C#
35 lines
1.0 KiB
C#
using System.Drawing;
|
|
using Lithnet.CredentialProvider;
|
|
using Xunit;
|
|
|
|
namespace SGU.CredentialProvider.Tests;
|
|
|
|
public sealed class ProviderTileIconTests
|
|
{
|
|
[Fact]
|
|
public void ProviderPublishesASeventyTwoPixelLogoForSignInOptions()
|
|
{
|
|
SguCredentialProvider provider = new();
|
|
|
|
CredentialProviderLogoControl logo = Assert.Single(
|
|
provider.GetControls(UsageScenario.Logon).OfType<CredentialProviderLogoControl>());
|
|
|
|
Assert.Equal(ProviderTileIcon.Size, logo.Bitmap.Width);
|
|
Assert.Equal(ProviderTileIcon.Size, logo.Bitmap.Height);
|
|
Assert.Equal(Color.FromArgb(0, 83, 155).ToArgb(), logo.Bitmap.GetPixel(0, 0).ToArgb());
|
|
int lightPixels = 0;
|
|
for (int x = 0; x < logo.Bitmap.Width; x++)
|
|
{
|
|
for (int y = 0; y < logo.Bitmap.Height; y++)
|
|
{
|
|
if (logo.Bitmap.GetPixel(x, y).GetBrightness() > 0.7f)
|
|
{
|
|
lightPixels++;
|
|
}
|
|
}
|
|
}
|
|
|
|
Assert.InRange(lightPixels, 200, 2_000);
|
|
}
|
|
}
|