Browse Source

Add failing tests for #2838.

pull/3678/head
Steven Kirk 6 years ago
parent
commit
370590f3e0
  1. 62
      tests/Avalonia.Markup.Xaml.UnitTests/Xaml/StyleTests.cs

62
tests/Avalonia.Markup.Xaml.UnitTests/Xaml/StyleTests.cs

@ -278,5 +278,67 @@ namespace Avalonia.Markup.Xaml.UnitTests.Xaml
Assert.Equal(Colors.Red, ((ISolidColorBrush)notFoo.Background).Color); Assert.Equal(Colors.Red, ((ISolidColorBrush)notFoo.Background).Color);
} }
} }
[Fact]
public void Style_Can_Use_Or_Selector_1()
{
using (UnitTestApplication.Start(TestServices.StyledWindow))
{
var xaml = @"
<Window xmlns='https://github.com/avaloniaui'
xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'>
<Window.Styles>
<Style Selector='Border.foo, Border.bar'>
<Setter Property='Background' Value='Red'/>
</Style>
</Window.Styles>
<StackPanel>
<Border Name='foo' Classes='foo'/>
<Border Name='bar' Classes='bar'/>
<Border Name='baz' Classes='baz'/>
</StackPanel>
</Window>";
var loader = new AvaloniaXamlLoader();
var window = (Window)loader.Load(xaml);
var foo = window.FindControl<Border>("foo");
var bar = window.FindControl<Border>("bar");
var baz = window.FindControl<Border>("baz");
Assert.Equal(Brushes.Red, foo.Background);
Assert.Equal(Brushes.Red, bar.Background);
Assert.Null(baz.Background);
}
}
[Fact]
public void Style_Can_Use_Or_Selector_2()
{
using (UnitTestApplication.Start(TestServices.StyledWindow))
{
var xaml = @"
<Window xmlns='https://github.com/avaloniaui'
xmlns:x='http://schemas.microsoft.com/winfx/2006/xaml'>
<Window.Styles>
<Style Selector='Border,Canvas,ListBox'>
<Setter Property='Background' Value='Red'/>
</Style>
</Window.Styles>
<StackPanel>
<Border Name='border'/>
<Canvas Name='canvas'/>
<ListBox Name='listBox'/>
</StackPanel>
</Window>";
var loader = new AvaloniaXamlLoader();
var window = (Window)loader.Load(xaml);
var border = window.FindControl<Border>("border");
var canvas = window.FindControl<Canvas>("canvas");
var listBox = window.FindControl<ListBox>("listBox");
Assert.Equal(Brushes.Red, border.Background);
Assert.Equal(Brushes.Red, canvas.Background);
Assert.Equal(Brushes.Red, listBox.Background);
}
}
} }
} }

Loading…
Cancel
Save