|
|
|
@ -19,11 +19,10 @@ namespace Avalonia.Controls.UnitTests |
|
|
|
target.Arrange(new Rect(new Point(0, 0), target.DesiredSize)); |
|
|
|
|
|
|
|
Assert.Equal(new Size(200, 100), target.DesiredSize); |
|
|
|
var scaleTransform = target.InternalTransform as ScaleTransform; |
|
|
|
|
|
|
|
Assert.NotNull(scaleTransform); |
|
|
|
Assert.Equal(2.0, scaleTransform.ScaleX); |
|
|
|
Assert.Equal(2.0, scaleTransform.ScaleY); |
|
|
|
|
|
|
|
Assert.True(TryGetScale(target, out Vector scale)); |
|
|
|
Assert.Equal(2.0, scale.X); |
|
|
|
Assert.Equal(2.0, scale.Y); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
@ -37,11 +36,10 @@ namespace Avalonia.Controls.UnitTests |
|
|
|
target.Arrange(new Rect(new Point(0, 0), target.DesiredSize)); |
|
|
|
|
|
|
|
Assert.Equal(new Size(100, 50), target.DesiredSize); |
|
|
|
var scaleTransform = target.InternalTransform as ScaleTransform; |
|
|
|
|
|
|
|
Assert.NotNull(scaleTransform); |
|
|
|
Assert.Equal(1.0, scaleTransform.ScaleX); |
|
|
|
Assert.Equal(1.0, scaleTransform.ScaleY); |
|
|
|
|
|
|
|
Assert.True(TryGetScale(target, out Vector scale)); |
|
|
|
Assert.Equal(1.0, scale.X); |
|
|
|
Assert.Equal(1.0, scale.Y); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
@ -55,11 +53,10 @@ namespace Avalonia.Controls.UnitTests |
|
|
|
target.Arrange(new Rect(new Point(0, 0), target.DesiredSize)); |
|
|
|
|
|
|
|
Assert.Equal(new Size(200, 200), target.DesiredSize); |
|
|
|
var scaleTransform = target.InternalTransform as ScaleTransform; |
|
|
|
|
|
|
|
Assert.NotNull(scaleTransform); |
|
|
|
Assert.Equal(2.0, scaleTransform.ScaleX); |
|
|
|
Assert.Equal(4.0, scaleTransform.ScaleY); |
|
|
|
|
|
|
|
Assert.True(TryGetScale(target, out Vector scale)); |
|
|
|
Assert.Equal(2.0, scale.X); |
|
|
|
Assert.Equal(4.0, scale.Y); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
@ -73,11 +70,10 @@ namespace Avalonia.Controls.UnitTests |
|
|
|
target.Arrange(new Rect(new Point(0, 0), target.DesiredSize)); |
|
|
|
|
|
|
|
Assert.Equal(new Size(200, 200), target.DesiredSize); |
|
|
|
var scaleTransform = target.InternalTransform as ScaleTransform; |
|
|
|
|
|
|
|
Assert.NotNull(scaleTransform); |
|
|
|
Assert.Equal(4.0, scaleTransform.ScaleX); |
|
|
|
Assert.Equal(4.0, scaleTransform.ScaleY); |
|
|
|
|
|
|
|
Assert.True(TryGetScale(target, out Vector scale)); |
|
|
|
Assert.Equal(4.0, scale.X); |
|
|
|
Assert.Equal(4.0, scale.Y); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
@ -91,11 +87,10 @@ namespace Avalonia.Controls.UnitTests |
|
|
|
target.Arrange(new Rect(new Point(0, 0), target.DesiredSize)); |
|
|
|
|
|
|
|
Assert.Equal(new Size(400, 200), target.DesiredSize); |
|
|
|
var scaleTransform = target.InternalTransform as ScaleTransform; |
|
|
|
|
|
|
|
Assert.NotNull(scaleTransform); |
|
|
|
Assert.Equal(4.0, scaleTransform.ScaleX); |
|
|
|
Assert.Equal(4.0, scaleTransform.ScaleY); |
|
|
|
|
|
|
|
Assert.True(TryGetScale(target, out Vector scale)); |
|
|
|
Assert.Equal(4.0, scale.X); |
|
|
|
Assert.Equal(4.0, scale.Y); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
@ -109,11 +104,10 @@ namespace Avalonia.Controls.UnitTests |
|
|
|
target.Arrange(new Rect(new Point(0, 0), target.DesiredSize)); |
|
|
|
|
|
|
|
Assert.Equal(new Size(200, 100), target.DesiredSize); |
|
|
|
var scaleTransform = target.InternalTransform as ScaleTransform; |
|
|
|
|
|
|
|
Assert.NotNull(scaleTransform); |
|
|
|
Assert.Equal(2.0, scaleTransform.ScaleX); |
|
|
|
Assert.Equal(2.0, scaleTransform.ScaleY); |
|
|
|
|
|
|
|
Assert.True(TryGetScale(target, out Vector scale)); |
|
|
|
Assert.Equal(2.0, scale.X); |
|
|
|
Assert.Equal(2.0, scale.Y); |
|
|
|
} |
|
|
|
|
|
|
|
[Theory] |
|
|
|
@ -137,11 +131,9 @@ namespace Avalonia.Controls.UnitTests |
|
|
|
|
|
|
|
Assert.Equal(new Size(expectedWidth, expectedHeight), target.DesiredSize); |
|
|
|
|
|
|
|
var scaleTransform = target.InternalTransform as ScaleTransform; |
|
|
|
|
|
|
|
Assert.NotNull(scaleTransform); |
|
|
|
Assert.Equal(expectedScale, scaleTransform.ScaleX); |
|
|
|
Assert.Equal(expectedScale, scaleTransform.ScaleY); |
|
|
|
Assert.True(TryGetScale(target, out Vector scale)); |
|
|
|
Assert.Equal(expectedScale, scale.X); |
|
|
|
Assert.Equal(expectedScale, scale.Y); |
|
|
|
} |
|
|
|
|
|
|
|
[Theory] |
|
|
|
@ -165,11 +157,9 @@ namespace Avalonia.Controls.UnitTests |
|
|
|
|
|
|
|
Assert.Equal(new Size(expectedWidth, expectedHeight), target.DesiredSize); |
|
|
|
|
|
|
|
var scaleTransform = target.InternalTransform as ScaleTransform; |
|
|
|
|
|
|
|
Assert.NotNull(scaleTransform); |
|
|
|
Assert.Equal(expectedScale, scaleTransform.ScaleX); |
|
|
|
Assert.Equal(expectedScale, scaleTransform.ScaleY); |
|
|
|
Assert.True(TryGetScale(target, out Vector scale)); |
|
|
|
Assert.Equal(expectedScale, scale.X); |
|
|
|
Assert.Equal(expectedScale, scale.Y); |
|
|
|
} |
|
|
|
|
|
|
|
[Fact] |
|
|
|
@ -190,5 +180,21 @@ namespace Avalonia.Controls.UnitTests |
|
|
|
Assert.Empty(target.GetLogicalChildren()); |
|
|
|
Assert.Null(child.GetLogicalParent()); |
|
|
|
} |
|
|
|
|
|
|
|
private bool TryGetScale(Viewbox viewbox, out Vector scale) |
|
|
|
{ |
|
|
|
if (viewbox.InternalTransform is null) |
|
|
|
{ |
|
|
|
scale = default; |
|
|
|
return false; |
|
|
|
} |
|
|
|
|
|
|
|
var matrix = viewbox.InternalTransform.Value; |
|
|
|
|
|
|
|
Matrix.TryDecomposeTransform(matrix, out var decomposed); |
|
|
|
|
|
|
|
scale = decomposed.Scale; |
|
|
|
return true; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|