Browse Source

Inital

pull/1539/head
Benedikt Schroeder 8 years ago
parent
commit
eb273c0fcb
  1. 2
      src/Avalonia.Controls/ColumnDefinitions.cs
  2. 13
      src/Avalonia.Controls/GridLength.cs
  3. 2
      src/Avalonia.Controls/RowDefinitions.cs
  4. 40
      src/Avalonia.Visuals/CornerRadius.cs
  5. 4
      src/Avalonia.Visuals/Matrix.cs
  6. 5
      src/Avalonia.Visuals/Point.cs
  7. 5
      src/Avalonia.Visuals/Rect.cs
  8. 9
      src/Avalonia.Visuals/RelativePoint.cs
  9. 12
      src/Avalonia.Visuals/RelativeRect.cs
  10. 5
      src/Avalonia.Visuals/Size.cs
  11. 24
      src/Avalonia.Visuals/Thickness.cs
  12. 2
      src/Markup/Avalonia.Markup.Xaml/Converters/CornerRadiusTypeConverter.cs
  13. 2
      src/Markup/Avalonia.Markup.Xaml/Converters/GridLengthTypeConverter.cs
  14. 2
      src/Markup/Avalonia.Markup.Xaml/Converters/MatrixTypeConverter.cs
  15. 2
      src/Markup/Avalonia.Markup.Xaml/Converters/PointTypeConverter.cs
  16. 2
      src/Markup/Avalonia.Markup.Xaml/Converters/PointsListTypeConverter.cs
  17. 2
      src/Markup/Avalonia.Markup.Xaml/Converters/RectTypeConverter.cs
  18. 2
      src/Markup/Avalonia.Markup.Xaml/Converters/RelativePointTypeConverter.cs
  19. 2
      src/Markup/Avalonia.Markup.Xaml/Converters/RelativeRectTypeConverter.cs
  20. 2
      src/Markup/Avalonia.Markup.Xaml/Converters/SizeTypeConverter.cs
  21. 2
      src/Markup/Avalonia.Markup.Xaml/Converters/ThicknessTypeConverter.cs
  22. 18
      tests/Avalonia.Controls.UnitTests/GridLengthTests.cs
  23. 8
      tests/Avalonia.Visuals.UnitTests/CornerRadiusTests.cs
  24. 2
      tests/Avalonia.Visuals.UnitTests/Media/MatrixTests.cs
  25. 2
      tests/Avalonia.Visuals.UnitTests/Media/RectTests.cs
  26. 4
      tests/Avalonia.Visuals.UnitTests/RelativePointTests.cs
  27. 6
      tests/Avalonia.Visuals.UnitTests/RelativeRectTests.cs
  28. 8
      tests/Avalonia.Visuals.UnitTests/ThicknessTests.cs

2
src/Avalonia.Controls/ColumnDefinitions.cs

@ -27,7 +27,7 @@ namespace Avalonia.Controls
public ColumnDefinitions(string s)
: this()
{
AddRange(GridLength.ParseLengths(s, CultureInfo.InvariantCulture).Select(x => new ColumnDefinition(x)));
AddRange(GridLength.ParseLengths(s).Select(x => new ColumnDefinition(x)));
}
}
}

13
src/Avalonia.Controls/GridLength.cs

@ -180,9 +180,8 @@ namespace Avalonia.Controls
/// Parses a string to return a <see cref="GridLength"/>.
/// </summary>
/// <param name="s">The string.</param>
/// <param name="culture">The current culture.</param>
/// <returns>The <see cref="GridLength"/>.</returns>
public static GridLength Parse(string s, CultureInfo culture)
public static GridLength Parse(string s)
{
s = s.ToUpperInvariant();
@ -193,12 +192,12 @@ namespace Avalonia.Controls
else if (s.EndsWith("*"))
{
var valueString = s.Substring(0, s.Length - 1).Trim();
var value = valueString.Length > 0 ? double.Parse(valueString, culture) : 1;
var value = valueString.Length > 0 ? double.Parse(valueString, CultureInfo.InvariantCulture) : 1;
return new GridLength(value, GridUnitType.Star);
}
else
{
var value = double.Parse(s, culture);
var value = double.Parse(s, CultureInfo.InvariantCulture);
return new GridLength(value, GridUnitType.Pixel);
}
}
@ -209,13 +208,13 @@ namespace Avalonia.Controls
/// <param name="s">The string.</param>
/// <param name="culture">The current culture.</param>
/// <returns>The <see cref="GridLength"/>.</returns>
public static IEnumerable<GridLength> ParseLengths(string s, CultureInfo culture)
public static IEnumerable<GridLength> ParseLengths(string s)
{
using (var tokenizer = new StringTokenizer(s, culture))
using (var tokenizer = new StringTokenizer(s, CultureInfo.InvariantCulture))
{
while (tokenizer.TryReadString(out var item))
{
yield return Parse(item, culture);
yield return Parse(item);
}
}
}

2
src/Avalonia.Controls/RowDefinitions.cs

@ -27,7 +27,7 @@ namespace Avalonia.Controls
public RowDefinitions(string s)
: this()
{
AddRange(GridLength.ParseLengths(s, CultureInfo.InvariantCulture).Select(x => new RowDefinition(x)));
AddRange(GridLength.ParseLengths(s).Select(x => new RowDefinition(x)));
}
}
}

40
src/Avalonia.Visuals/CornerRadius.cs

@ -4,6 +4,7 @@
using System;
using System.Globalization;
using System.Linq;
using Avalonia.Utilities;
namespace Avalonia
{
@ -53,31 +54,26 @@ namespace Avalonia
return $"{TopLeft},{TopRight},{BottomRight},{BottomLeft}";
}
public static CornerRadius Parse(string s, CultureInfo culture)
public static CornerRadius Parse(string s)
{
var parts = s.Split(new[] { ',', ' ' }, StringSplitOptions.RemoveEmptyEntries)
.Select(x => x.Trim())
.ToList();
switch (parts.Count)
using (var tokenizer = new StringTokenizer(s, CultureInfo.InvariantCulture, exceptionMessage: "Invalid Thickness"))
{
case 1:
var uniform = double.Parse(parts[0], culture);
return new CornerRadius(uniform);
case 2:
var top = double.Parse(parts[0], culture);
var bottom = double.Parse(parts[1], culture);
return new CornerRadius(top, bottom);
case 4:
var topLeft = double.Parse(parts[0], culture);
var topRight = double.Parse(parts[1], culture);
var bottomRight = double.Parse(parts[2], culture);
var bottomLeft = double.Parse(parts[3], culture);
return new CornerRadius(topLeft, topRight, bottomRight, bottomLeft);
default:
if (tokenizer.TryReadDouble(out var a))
{
if (tokenizer.TryReadDouble(out var b))
{
throw new FormatException("Invalid CornerRadius.");
if (tokenizer.TryReadDouble(out var c))
{
return new CornerRadius(a, b, c, tokenizer.ReadDouble());
}
return new CornerRadius(a, b);
}
return new CornerRadius(a);
}
throw new FormatException("Invalid CornerRadius.");
}
}
@ -85,7 +81,7 @@ namespace Avalonia
{
return cr1.TopLeft.Equals(cr2.TopLeft)
&& cr1.TopRight.Equals(cr2.TopRight)
&& cr1.BottomRight.Equals(cr2.BottomRight)
&& cr1.BottomRight.Equals(cr2.BottomRight)
&& cr1.BottomLeft.Equals(cr2.BottomLeft);
}

4
src/Avalonia.Visuals/Matrix.cs

@ -316,9 +316,9 @@ namespace Avalonia
/// <param name="s">The string.</param>
/// <param name="culture">The current culture.</param>
/// <returns>The <see cref="Matrix"/>.</returns>
public static Matrix Parse(string s, CultureInfo culture)
public static Matrix Parse(string s)
{
using (var tokenizer = new StringTokenizer(s, culture, exceptionMessage: "Invalid Matrix"))
using (var tokenizer = new StringTokenizer(s, CultureInfo.InvariantCulture, exceptionMessage: "Invalid Matrix"))
{
return new Matrix(
tokenizer.ReadDouble(),

5
src/Avalonia.Visuals/Point.cs

@ -170,11 +170,10 @@ namespace Avalonia
/// Parses a <see cref="Point"/> string.
/// </summary>
/// <param name="s">The string.</param>
/// <param name="culture">The current culture.</param>
/// <returns>The <see cref="Thickness"/>.</returns>
public static Point Parse(string s, CultureInfo culture)
public static Point Parse(string s)
{
using (var tokenizer = new StringTokenizer(s, culture, exceptionMessage: "Invalid Point"))
using (var tokenizer = new StringTokenizer(s, CultureInfo.InvariantCulture, exceptionMessage: "Invalid Point"))
{
return new Point(
tokenizer.ReadDouble(),

5
src/Avalonia.Visuals/Rect.cs

@ -487,11 +487,10 @@ namespace Avalonia
/// Parses a <see cref="Rect"/> string.
/// </summary>
/// <param name="s">The string.</param>
/// <param name="culture">The current culture.</param>
/// <returns>The parsed <see cref="Rect"/>.</returns>
public static Rect Parse(string s, CultureInfo culture)
public static Rect Parse(string s)
{
using (var tokenizer = new StringTokenizer(s, culture, exceptionMessage: "Invalid Rect"))
using (var tokenizer = new StringTokenizer(s, CultureInfo.InvariantCulture, exceptionMessage: "Invalid Rect"))
{
return new Rect(
tokenizer.ReadDouble(),

9
src/Avalonia.Visuals/RelativePoint.cs

@ -154,11 +154,10 @@ namespace Avalonia
/// Parses a <see cref="RelativePoint"/> string.
/// </summary>
/// <param name="s">The string.</param>
/// <param name="culture">The current culture.</param>
/// <returns>The parsed <see cref="RelativePoint"/>.</returns>
public static RelativePoint Parse(string s, CultureInfo culture)
public static RelativePoint Parse(string s)
{
using (var tokenizer = new StringTokenizer(s, culture, exceptionMessage: "Invalid RelativePoint"))
using (var tokenizer = new StringTokenizer(s, CultureInfo.InvariantCulture, exceptionMessage: "Invalid RelativePoint"))
{
var x = tokenizer.ReadString();
var y = tokenizer.ReadString();
@ -180,8 +179,8 @@ namespace Avalonia
}
return new RelativePoint(
double.Parse(x, culture) * scale,
double.Parse(y, culture) * scale,
double.Parse(x, CultureInfo.InvariantCulture) * scale,
double.Parse(y, CultureInfo.InvariantCulture) * scale,
unit);
}
}

12
src/Avalonia.Visuals/RelativeRect.cs

@ -169,9 +169,9 @@ namespace Avalonia
/// <param name="s">The string.</param>
/// <param name="culture">The current culture.</param>
/// <returns>The parsed <see cref="RelativeRect"/>.</returns>
public static RelativeRect Parse(string s, CultureInfo culture)
public static RelativeRect Parse(string s)
{
using (var tokenizer = new StringTokenizer(s, culture, exceptionMessage: "Invalid RelativeRect"))
using (var tokenizer = new StringTokenizer(s, exceptionMessage: "Invalid RelativeRect"))
{
var x = tokenizer.ReadString();
var y = tokenizer.ReadString();
@ -202,10 +202,10 @@ namespace Avalonia
}
return new RelativeRect(
double.Parse(x, culture) * scale,
double.Parse(y, culture) * scale,
double.Parse(width, culture) * scale,
double.Parse(height, culture) * scale,
double.Parse(x, CultureInfo.InvariantCulture) * scale,
double.Parse(y, CultureInfo.InvariantCulture) * scale,
double.Parse(width, CultureInfo.InvariantCulture) * scale,
double.Parse(height, CultureInfo.InvariantCulture) * scale,
unit);
}
}

5
src/Avalonia.Visuals/Size.cs

@ -150,11 +150,10 @@ namespace Avalonia
/// Parses a <see cref="Size"/> string.
/// </summary>
/// <param name="s">The string.</param>
/// <param name="culture">The current culture.</param>
/// <returns>The <see cref="Size"/>.</returns>
public static Size Parse(string s, CultureInfo culture)
public static Size Parse(string s)
{
using (var tokenizer = new StringTokenizer(s, culture, exceptionMessage: "Invalid Size"))
using (var tokenizer = new StringTokenizer(s, CultureInfo.InvariantCulture, exceptionMessage: "Invalid Size"))
{
return new Size(
tokenizer.ReadDouble(),

24
src/Avalonia.Visuals/Thickness.cs

@ -165,25 +165,27 @@ namespace Avalonia
/// Parses a <see cref="Thickness"/> string.
/// </summary>
/// <param name="s">The string.</param>
/// <param name="culture">The current culture.</param>
/// <returns>The <see cref="Thickness"/>.</returns>
public static Thickness Parse(string s, CultureInfo culture)
public static Thickness Parse(string s)
{
using (var tokenizer = new StringTokenizer(s, culture, exceptionMessage: "Invalid Thickness"))
using (var tokenizer = new StringTokenizer(s, CultureInfo.InvariantCulture, exceptionMessage: "Invalid Thickness"))
{
var a = tokenizer.ReadDouble();
if (tokenizer.TryReadDouble(out var b))
if(tokenizer.TryReadDouble(out var a))
{
if (tokenizer.TryReadDouble(out var c))
if (tokenizer.TryReadDouble(out var b))
{
return new Thickness(a, b, c, tokenizer.ReadDouble());
if (tokenizer.TryReadDouble(out var c))
{
return new Thickness(a, b, c, tokenizer.ReadDouble());
}
return new Thickness(a, b);
}
return new Thickness(a, b);
return new Thickness(a);
}
return new Thickness(a);
throw new FormatException("Invalid Thickness.");
}
}

2
src/Markup/Avalonia.Markup.Xaml/Converters/CornerRadiusTypeConverter.cs

@ -13,7 +13,7 @@ namespace Avalonia.Markup.Xaml.Converters
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
return CornerRadius.Parse((string)value, culture);
return CornerRadius.Parse((string)value);
}
}
}

2
src/Markup/Avalonia.Markup.Xaml/Converters/GridLengthTypeConverter.cs

@ -18,7 +18,7 @@ namespace Avalonia.Markup.Xaml.Converters
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
return GridLength.Parse((string)value, culture);
return GridLength.Parse((string)value);
}
}
}

2
src/Markup/Avalonia.Markup.Xaml/Converters/MatrixTypeConverter.cs

@ -17,7 +17,7 @@ namespace Avalonia.Markup.Xaml.Converters
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
return Matrix.Parse((string)value, culture);
return Matrix.Parse((string)value);
}
}
}

2
src/Markup/Avalonia.Markup.Xaml/Converters/PointTypeConverter.cs

@ -17,7 +17,7 @@ namespace Avalonia.Markup.Xaml.Converters
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
return Point.Parse((string)value, culture);
return Point.Parse((string)value);
}
}
}

2
src/Markup/Avalonia.Markup.Xaml/Converters/PointsListTypeConverter.cs

@ -23,7 +23,7 @@ namespace Avalonia.Markup.Xaml.Converters
var result = new List<Point>(pointStrs.Length);
foreach (var pointStr in pointStrs)
{
result.Add(Point.Parse(pointStr, culture));
result.Add(Point.Parse(pointStr));
}
return result;

2
src/Markup/Avalonia.Markup.Xaml/Converters/RectTypeConverter.cs

@ -17,7 +17,7 @@ namespace Avalonia.Markup.Xaml.Converters
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
return Rect.Parse((string)value, culture);
return Rect.Parse((string)value);
}
}
}

2
src/Markup/Avalonia.Markup.Xaml/Converters/RelativePointTypeConverter.cs

@ -17,7 +17,7 @@ namespace Avalonia.Markup.Xaml.Converters
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
return RelativePoint.Parse((string)value, culture);
return RelativePoint.Parse((string)value);
}
}
}

2
src/Markup/Avalonia.Markup.Xaml/Converters/RelativeRectTypeConverter.cs

@ -17,7 +17,7 @@ namespace Avalonia.Markup.Xaml.Converters
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
return RelativeRect.Parse((string)value, culture);
return RelativeRect.Parse((string)value);
}
}
}

2
src/Markup/Avalonia.Markup.Xaml/Converters/SizeTypeConverter.cs

@ -17,7 +17,7 @@ namespace Avalonia.Markup.Xaml.Converters
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
return Size.Parse((string)value, culture);
return Size.Parse((string)value);
}
}
}

2
src/Markup/Avalonia.Markup.Xaml/Converters/ThicknessTypeConverter.cs

@ -17,7 +17,7 @@ namespace Avalonia.Markup.Xaml.Converters
public override object ConvertFrom(ITypeDescriptorContext context, CultureInfo culture, object value)
{
return Thickness.Parse((string)value, culture);
return Thickness.Parse((string)value);
}
}
}

18
tests/Avalonia.Controls.UnitTests/GridLengthTests.cs

@ -13,7 +13,7 @@ namespace Avalonia.Controls.UnitTests
[Fact]
public void Parse_Should_Parse_Auto()
{
var result = GridLength.Parse("Auto", CultureInfo.InvariantCulture);
var result = GridLength.Parse("Auto");
Assert.Equal(GridLength.Auto, result);
}
@ -21,7 +21,7 @@ namespace Avalonia.Controls.UnitTests
[Fact]
public void Parse_Should_Parse_Auto_Lowercase()
{
var result = GridLength.Parse("auto", CultureInfo.InvariantCulture);
var result = GridLength.Parse("auto");
Assert.Equal(GridLength.Auto, result);
}
@ -29,7 +29,7 @@ namespace Avalonia.Controls.UnitTests
[Fact]
public void Parse_Should_Parse_Star()
{
var result = GridLength.Parse("*", CultureInfo.InvariantCulture);
var result = GridLength.Parse("*");
Assert.Equal(new GridLength(1, GridUnitType.Star), result);
}
@ -37,7 +37,7 @@ namespace Avalonia.Controls.UnitTests
[Fact]
public void Parse_Should_Parse_Star_Value()
{
var result = GridLength.Parse("2*", CultureInfo.InvariantCulture);
var result = GridLength.Parse("2*");
Assert.Equal(new GridLength(2, GridUnitType.Star), result);
}
@ -45,7 +45,7 @@ namespace Avalonia.Controls.UnitTests
[Fact]
public void Parse_Should_Parse_Pixel_Value()
{
var result = GridLength.Parse("2", CultureInfo.InvariantCulture);
var result = GridLength.Parse("2");
Assert.Equal(new GridLength(2, GridUnitType.Pixel), result);
}
@ -53,13 +53,13 @@ namespace Avalonia.Controls.UnitTests
[Fact]
public void Parse_Should_Throw_FormatException_For_Invalid_String()
{
Assert.Throws<FormatException>(() => GridLength.Parse("2x", CultureInfo.InvariantCulture));
Assert.Throws<FormatException>(() => GridLength.Parse("2x"));
}
[Fact]
public void ParseLengths_Accepts_Comma_Separators()
{
var result = GridLength.ParseLengths("*,Auto,2*,4", CultureInfo.InvariantCulture).ToList();
var result = GridLength.ParseLengths("*,Auto,2*,4").ToList();
Assert.Equal(
new[]
@ -75,7 +75,7 @@ namespace Avalonia.Controls.UnitTests
[Fact]
public void ParseLengths_Accepts_Space_Separators()
{
var result = GridLength.ParseLengths("* Auto 2* 4", CultureInfo.InvariantCulture).ToList();
var result = GridLength.ParseLengths("* Auto 2* 4").ToList();
Assert.Equal(
new[]
@ -91,7 +91,7 @@ namespace Avalonia.Controls.UnitTests
[Fact]
public void ParseLengths_Accepts_Comma_Separators_With_Spaces()
{
var result = GridLength.ParseLengths("*, Auto, 2* ,4", CultureInfo.InvariantCulture).ToList();
var result = GridLength.ParseLengths("*, Auto, 2* ,4").ToList();
Assert.Equal(
new[]

8
tests/Avalonia.Visuals.UnitTests/CornerRadiusTests.cs

@ -11,7 +11,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Parses_Single_Uniform_Radius()
{
var result = CornerRadius.Parse("3.4", CultureInfo.InvariantCulture);
var result = CornerRadius.Parse("3.4");
Assert.Equal(new CornerRadius(3.4), result);
}
@ -19,7 +19,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Parses_Top_Bottom()
{
var result = CornerRadius.Parse("1.1,2.2", CultureInfo.InvariantCulture);
var result = CornerRadius.Parse("1.1,2.2");
Assert.Equal(new CornerRadius(1.1, 2.2), result);
}
@ -27,7 +27,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Parses_TopLeft_TopRight_BottomRight_BottomLeft()
{
var result = CornerRadius.Parse("1.1,2.2,3.3,4.4", CultureInfo.InvariantCulture);
var result = CornerRadius.Parse("1.1,2.2,3.3,4.4");
Assert.Equal(new CornerRadius(1.1, 2.2, 3.3, 4.4), result);
}
@ -35,7 +35,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Accepts_Spaces()
{
var result = CornerRadius.Parse("1.1 2.2 3.3 4.4", CultureInfo.InvariantCulture);
var result = CornerRadius.Parse("1.1 2.2 3.3 4.4");
Assert.Equal(new CornerRadius(1.1, 2.2, 3.3, 4.4), result);
}

2
tests/Avalonia.Visuals.UnitTests/Media/MatrixTests.cs

@ -8,7 +8,7 @@ namespace Avalonia.Visuals.UnitTests.Media
[Fact]
public void Parse_Parses()
{
var matrix = Matrix.Parse("1,2,3,-4,5 6", CultureInfo.CurrentCulture);
var matrix = Matrix.Parse("1,2,3,-4,5 6");
var expected = new Matrix(1, 2, 3, -4, 5, 6);
Assert.Equal(expected, matrix);
}

2
tests/Avalonia.Visuals.UnitTests/Media/RectTests.cs

@ -8,7 +8,7 @@ namespace Avalonia.Visuals.UnitTests.Media
[Fact]
public void Parse_Parses()
{
var rect = Rect.Parse("1,2 3,-4", CultureInfo.CurrentCulture);
var rect = Rect.Parse("1,2 3,-4");
var expected = new Rect(1, 2, 3, -4);
Assert.Equal(expected, rect);
}

4
tests/Avalonia.Visuals.UnitTests/RelativePointTests.cs

@ -11,7 +11,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Should_Accept_Absolute_Value()
{
var result = RelativePoint.Parse("4,5", CultureInfo.InvariantCulture);
var result = RelativePoint.Parse("4,5");
Assert.Equal(new RelativePoint(4, 5, RelativeUnit.Absolute), result);
}
@ -19,7 +19,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Should_Accept_Relative_Value()
{
var result = RelativePoint.Parse("25%, 50%", CultureInfo.InvariantCulture);
var result = RelativePoint.Parse("25%, 50%");
Assert.Equal(new RelativePoint(0.25, 0.5, RelativeUnit.Relative), result);
}

6
tests/Avalonia.Visuals.UnitTests/RelativeRectTests.cs

@ -14,7 +14,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Should_Accept_Absolute_Value()
{
var result = RelativeRect.Parse("4,5,50,60", CultureInfo.InvariantCulture);
var result = RelativeRect.Parse("4,5,50,60");
Assert.Equal(new RelativeRect(4, 5, 50, 60, RelativeUnit.Absolute), result, Compare);
}
@ -22,7 +22,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Should_Accept_Relative_Value()
{
var result = RelativeRect.Parse("10%, 20%, 40%, 70%", CultureInfo.InvariantCulture);
var result = RelativeRect.Parse("10%, 20%, 40%, 70%");
Assert.Equal(new RelativeRect(0.1, 0.2, 0.4, 0.7, RelativeUnit.Relative), result, Compare);
}
@ -31,7 +31,7 @@ namespace Avalonia.Visuals.UnitTests
public void Parse_Should_Throw_Mixed_Values()
{
Assert.Throws<FormatException>(() =>
RelativeRect.Parse("10%, 20%, 40, 70%", CultureInfo.InvariantCulture));
RelativeRect.Parse("10%, 20%, 40, 70%"));
}
}
}

8
tests/Avalonia.Visuals.UnitTests/ThicknessTests.cs

@ -11,7 +11,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Parses_Single_Uniform_Size()
{
var result = Thickness.Parse("1.2", CultureInfo.InvariantCulture);
var result = Thickness.Parse("1.2");
Assert.Equal(new Thickness(1.2), result);
}
@ -19,7 +19,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Parses_Horizontal_Vertical()
{
var result = Thickness.Parse("1.2,3.4", CultureInfo.InvariantCulture);
var result = Thickness.Parse("1.2,3.4");
Assert.Equal(new Thickness(1.2, 3.4), result);
}
@ -27,7 +27,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Parses_Left_Top_Right_Bottom()
{
var result = Thickness.Parse("1.2, 3.4, 5, 6", CultureInfo.InvariantCulture);
var result = Thickness.Parse("1.2, 3.4, 5, 6");
Assert.Equal(new Thickness(1.2, 3.4, 5, 6), result);
}
@ -35,7 +35,7 @@ namespace Avalonia.Visuals.UnitTests
[Fact]
public void Parse_Accepts_Spaces()
{
var result = Thickness.Parse("1.2 3.4 5 6", CultureInfo.InvariantCulture);
var result = Thickness.Parse("1.2 3.4 5 6");
Assert.Equal(new Thickness(1.2, 3.4, 5, 6), result);
}

Loading…
Cancel
Save