using System;
using Avalonia.Controls;
using Avalonia.Media;
using Avalonia.UnitTests;
using Xunit;
namespace Avalonia.Markup.Xaml.UnitTests.Data
{
public class ResourceIncludeTests
{
public class StaticResourceExtensionTests
{
[Fact]
public void ResourceInclude_Loads_ResourceDictionary()
{
var includeXaml = @"
#ff506070
";
using (StartWithResources(("test:include.xaml", includeXaml)))
{
var xaml = @"
";
var loader = new AvaloniaXamlLoader();
var userControl = (UserControl)loader.Load(xaml);
var border = userControl.FindControl("border");
var brush = (SolidColorBrush)border.Background;
Assert.Equal(0xff506070, brush.Color.ToUint32());
}
}
private IDisposable StartWithResources(params (string, string)[] assets)
{
var assetLoader = new MockAssetLoader(assets);
var services = new TestServices(assetLoader: assetLoader);
return UnitTestApplication.Start(services);
}
}
}
}