diff --git a/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/BasicTests.cs b/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/BasicTests.cs index cfa7f50d96..4cc653fc62 100644 --- a/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/BasicTests.cs +++ b/tests/Avalonia.Markup.Xaml.UnitTests/Xaml/BasicTests.cs @@ -3,7 +3,10 @@ using System.Linq; using Avalonia.Controls; +using Avalonia.Controls.Presenters; +using Avalonia.Markup.Xaml.Data; using Avalonia.Markup.Xaml.Styling; +using Avalonia.Markup.Xaml.Templates; using Avalonia.Media; using Avalonia.Styling; using Avalonia.UnitTests; @@ -188,6 +191,91 @@ namespace Avalonia.Markup.Xaml.UnitTests.Xaml } } + [Fact] + public void Simple_Xaml_Binding_Is_Operational() + { + using (UnitTestApplication.Start(TestServices.MockPlatformWrapper + .With(windowingPlatform: new MockWindowingPlatform()))) + { + var xaml = +@""; + + var target = AvaloniaXamlLoader.Parse(xaml); + + Assert.Null(target.Content); + + target.DataContext = "Foo"; + + Assert.Equal("Foo", target.Content); + } + } + + [Fact] + public void Control_Template_Is_Operational() + { + var xaml = @" + + + + + + +"; + + var target = AvaloniaXamlLoader.Parse(xaml); + + Assert.NotNull(target.Template); + + Assert.Null(target.Presenter); + + target.ApplyTemplate(); + + Assert.NotNull(target.Presenter); + + target.Content = "Foo"; + + Assert.Equal("Foo", target.Presenter.Content); + } + + [Fact] + public void Style_ControlTemplate_Is_Build() + { + var xaml = @" + "; + + var style = AvaloniaXamlLoader.Parse