Browse Source

Add more unit tests

pull/2497/head
Benedikt Schroeder 7 years ago
parent
commit
bbccc6e355
  1. 2
      src/Avalonia.Visuals/Media/Fonts/FontFamilyKey.cs
  2. 35
      tests/Avalonia.Visuals.UnitTests/Media/FontFamilyTests.cs

2
src/Avalonia.Visuals/Media/Fonts/FontFamilyKey.cs

@ -95,7 +95,7 @@ namespace Avalonia.Media.Fonts
{
if (!Source.IsAbsoluteUri && BaseUri != null)
{
return BaseUri.Authority + Source;
return BaseUri.AbsoluteUri + Source.OriginalString;
}
return Source.ToString();

35
tests/Avalonia.Visuals.UnitTests/Media/FontFamilyTests.cs

@ -28,7 +28,7 @@ namespace Avalonia.Visuals.UnitTests.Media
}
[Fact]
public void Parse_Parses_FontFamily_With_Name()
public void Should_Parse_FontFamily_With_SystemFont_Name()
{
var fontFamily = FontFamily.Parse("Courier New");
@ -36,7 +36,7 @@ namespace Avalonia.Visuals.UnitTests.Media
}
[Fact]
public void Parse_Parses_FontFamily_With_Names()
public void Should_Parse_FontFamily_With_Fallbacks()
{
var fontFamily = FontFamily.Parse("Courier New, Times New Roman");
@ -48,7 +48,7 @@ namespace Avalonia.Visuals.UnitTests.Media
}
[Fact]
public void Parse_Parses_FontFamily_With_Resource_Folder()
public void Should_Parse_FontFamily_With_Resource_Folder()
{
var source = new Uri("resm:Avalonia.Visuals.UnitTests#MyFont");
@ -62,7 +62,7 @@ namespace Avalonia.Visuals.UnitTests.Media
}
[Fact]
public void Parse_Parses_FontFamily_With_Resource_Filename()
public void Should_Parse_FontFamily_With_Resource_Filename()
{
var source = new Uri("resm:Avalonia.Visuals.UnitTests.MyFont.ttf#MyFont");
@ -74,5 +74,32 @@ namespace Avalonia.Visuals.UnitTests.Media
Assert.Equal(key, fontFamily.Key);
}
[Theory]
[InlineData("resm:Avalonia.Visuals.UnitTests/Assets/Fonts#MyFont")]
[InlineData("avares://Avalonia.Visuals.UnitTests/Assets/Fonts#MyFont")]
public void Should_Create_FontFamily_From_Uri(string name)
{
var fontFamily = new FontFamily(name);
Assert.Equal("MyFont", fontFamily.Name);
Assert.NotNull(fontFamily.Key);
}
[Theory]
[InlineData("resm:Avalonia.Visuals.UnitTests.Assets.Fonts", "#MyFont")]
[InlineData("avares://Avalonia.Visuals.UnitTests/Assets/Fonts", "#MyFont")]
[InlineData("avares://Avalonia.Visuals.UnitTests", "/Assets/Fonts#MyFont")]
public void Should_Create_FontFamily_From_Uri_With_Base_Uri(string @base, string name)
{
var baseUri = new Uri(@base);
var fontFamily = new FontFamily(baseUri, name);
Assert.Equal("MyFont", fontFamily.Name);
Assert.NotNull(fontFamily.Key);
}
}
}

Loading…
Cancel
Save