Browse Source

2 more unit test for parsing avalonia properties without getter or setter

pull/916/head
Andrey Kunchev 10 years ago
parent
commit
824429b049
  1. 26
      tests/Avalonia.Markup.Xaml.UnitTests/Xaml/BasicTests.cs
  2. 3
      tests/Avalonia.Markup.Xaml.UnitTests/Xaml/InitializationOrderTracker.cs
  3. 15
      tests/Avalonia.Markup.Xaml.UnitTests/Xaml/NonControl.cs

26
tests/Avalonia.Markup.Xaml.UnitTests/Xaml/BasicTests.cs

@ -41,6 +41,32 @@ namespace Avalonia.Markup.Xaml.UnitTests.Xaml
Assert.Equal("Foo", target.Content);
}
[Fact]
public void AvaloniaProperty_Without_Getter_And_Setter_Is_Set()
{
var xaml =
@"<local:NonControl xmlns='https://github.com/avaloniaui'
xmlns:local='clr-namespace:Avalonia.Markup.Xaml.UnitTests.Xaml;assembly=Avalonia.Markup.Xaml.UnitTests'
Foo='55' />";
var target = AvaloniaXamlLoader.Parse<NonControl>(xaml);
Assert.Equal(55, target.GetValue(NonControl.FooProperty));
}
[Fact]
public void AvaloniaProperty_With_Getter_And_No_Setter_Is_Set()
{
var xaml =
@"<local:NonControl xmlns='https://github.com/avaloniaui'
xmlns:local='clr-namespace:Avalonia.Markup.Xaml.UnitTests.Xaml;assembly=Avalonia.Markup.Xaml.UnitTests'
Bar='bar' />";
var target = AvaloniaXamlLoader.Parse<NonControl>(xaml);
Assert.Equal("bar", target.Bar);
}
[Fact]
public void Attached_Property_Is_Set()
{

3
tests/Avalonia.Markup.Xaml.UnitTests/Xaml/InitializationOrderTracker.cs

@ -7,8 +7,7 @@ using System.Collections.Generic;
namespace Avalonia.Markup.Xaml.UnitTests.Xaml
{
public class InitializationOrderTracker : Control,
ISupportInitialize
public class InitializationOrderTracker : Control, ISupportInitialize
{
public IList<string> Order { get; } = new List<string>();

15
tests/Avalonia.Markup.Xaml.UnitTests/Xaml/NonControl.cs

@ -13,6 +13,14 @@ namespace Avalonia.Markup.Xaml.UnitTests.Xaml
public static readonly StyledProperty<string> StringProperty =
AvaloniaProperty.Register<NonControl, string>("String");
//No getter or setter Avalonia property
public static readonly StyledProperty<int> FooProperty =
AvaloniaProperty.Register<NonControl, int>("Foo");
//getter only Avalonia property
public static readonly StyledProperty<string> BarProperty =
AvaloniaProperty.Register<NonControl, string>("Bar");
public Control Control
{
get { return GetValue(ControlProperty); }
@ -24,5 +32,10 @@ namespace Avalonia.Markup.Xaml.UnitTests.Xaml
get { return GetValue(StringProperty); }
set { SetValue(StringProperty, value); }
}
public string Bar
{
get { return GetValue(BarProperty); }
}
}
}
}
Loading…
Cancel
Save