Browse Source

try fix tests

pull/9803/head
daniel 3 years ago
parent
commit
5f5f5ebc9b
  1. 55
      tests/Avalonia.Controls.UnitTests/TransitioningContentControlTests.cs

55
tests/Avalonia.Controls.UnitTests/TransitioningContentControlTests.cs

@ -13,40 +13,43 @@ namespace Avalonia.Controls.UnitTests
[Fact]
public void Old_Content_Shuold_Be_Removed__From_Logical_Tree_After_Out_Animation()
{
var testTransition = new TestTransition();
using (UnitTestApplication.Start(TestServices.MockThreadingInterface))
{
var testTransition = new TestTransition();
var target = new TransitioningContentControl();
target.PageTransition = testTransition;
var target = new TransitioningContentControl();
target.PageTransition = testTransition;
var root = new TestRoot() { Child = target };
var root = new TestRoot() { Child = target };
var oldControl = new Control();
var newControl = new Control();
var oldControl = new Control();
var newControl = new Control();
target.Content = oldControl;
Threading.Dispatcher.UIThread.RunJobs();
target.Content = oldControl;
Threading.Dispatcher.UIThread.RunJobs();
Assert.Equal(target, oldControl.GetLogicalParent());
Assert.Equal(null, newControl.GetLogicalParent());
Assert.Equal(target, oldControl.GetLogicalParent());
Assert.Equal(null, newControl.GetLogicalParent());
testTransition.BeginTransition += isFrom =>
{
// Old out
if (isFrom)
{
Assert.Equal(target, oldControl.GetLogicalParent());
Assert.Equal(null, newControl.GetLogicalParent());
}
// New in
else
testTransition.BeginTransition += isFrom =>
{
Assert.Equal(null, oldControl.GetLogicalParent());
Assert.Equal(target, newControl.GetLogicalParent());
}
};
// Old out
if (isFrom)
{
Assert.Equal(target, oldControl.GetLogicalParent());
Assert.Equal(null, newControl.GetLogicalParent());
}
// New in
else
{
Assert.Equal(null, oldControl.GetLogicalParent());
Assert.Equal(target, newControl.GetLogicalParent());
}
};
target.Content = newControl;
Threading.Dispatcher.UIThread.RunJobs();
target.Content = newControl;
Threading.Dispatcher.UIThread.RunJobs();
}
}
}
public class TestTransition : IPageTransition

Loading…
Cancel
Save