diff --git a/tests/Avalonia.Markup.Xaml.UnitTests/Parsers/PropertyParserTests.cs b/tests/Avalonia.Markup.Xaml.UnitTests/Parsers/PropertyParserTests.cs index cae6449722..2a4468a750 100644 --- a/tests/Avalonia.Markup.Xaml.UnitTests/Parsers/PropertyParserTests.cs +++ b/tests/Avalonia.Markup.Xaml.UnitTests/Parsers/PropertyParserTests.cs @@ -13,7 +13,7 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Parses_Name() { var target = new PropertyParser(); - var reader = new CharacterReader("Foo"); + var reader = new CharacterReader("Foo".AsSpan()); var (ns, owner, name) = target.Parse(reader); Assert.Null(ns); @@ -25,7 +25,7 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Parses_Owner_And_Name() { var target = new PropertyParser(); - var reader = new CharacterReader("Foo.Bar"); + var reader = new CharacterReader("Foo.Bar".AsSpan()); var (ns, owner, name) = target.Parse(reader); Assert.Null(ns); @@ -37,7 +37,7 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Parses_Namespace_Owner_And_Name() { var target = new PropertyParser(); - var reader = new CharacterReader("foo:Bar.Baz"); + var reader = new CharacterReader("foo:Bar.Baz".AsSpan()); var (ns, owner, name) = target.Parse(reader); Assert.Equal("foo", ns); @@ -49,7 +49,7 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Parses_Owner_And_Name_With_Parentheses() { var target = new PropertyParser(); - var reader = new CharacterReader("(Foo.Bar)"); + var reader = new CharacterReader("(Foo.Bar)".AsSpan()); var (ns, owner, name) = target.Parse(reader); Assert.Null(ns); @@ -61,7 +61,7 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Parses_Namespace_Owner_And_Name_With_Parentheses() { var target = new PropertyParser(); - var reader = new CharacterReader("(foo:Bar.Baz)"); + var reader = new CharacterReader("(foo:Bar.Baz)".AsSpan()); var (ns, owner, name) = target.Parse(reader); Assert.Equal("foo", ns); @@ -73,9 +73,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Empty_String() { var target = new PropertyParser(); - var reader = new CharacterReader(""); - var ex = Assert.Throws(() => target.Parse(reader)); + var ex = Assert.Throws(() => target.Parse(new CharacterReader(ReadOnlySpan.Empty))); Assert.Equal(0, ex.Column); Assert.Equal("Expected property name.", ex.Message); } @@ -84,9 +83,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Only_Whitespace() { var target = new PropertyParser(); - var reader = new CharacterReader(" "); - var ex = Assert.Throws(() => target.Parse(reader)); + var ex = Assert.Throws(() => target.Parse(new CharacterReader(" ".AsSpan()))); Assert.Equal(0, ex.Column); Assert.Equal("Unexpected ' '.", ex.Message); } @@ -95,9 +93,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Leading_Whitespace() { var target = new PropertyParser(); - var reader = new CharacterReader(" Foo"); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader(" Foo".AsSpan()))); Assert.Equal(0, ex.Column); Assert.Equal("Unexpected ' '.", ex.Message); } @@ -106,9 +103,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Trailing_Whitespace() { var target = new PropertyParser(); - var reader = new CharacterReader("Foo "); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader("Foo ".AsSpan()))); Assert.Equal(3, ex.Column); Assert.Equal("Unexpected ' '.", ex.Message); } @@ -117,9 +113,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Invalid_Property_Name() { var target = new PropertyParser(); - var reader = new CharacterReader("123"); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader("123".AsSpan()))); Assert.Equal(0, ex.Column); Assert.Equal("Unexpected '1'.", ex.Message); } @@ -128,9 +123,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Trailing_Junk() { var target = new PropertyParser(); - var reader = new CharacterReader("Foo%"); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader("Foo%".AsSpan()))); Assert.Equal(3, ex.Column); Assert.Equal("Unexpected '%'.", ex.Message); } @@ -139,9 +133,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Invalid_Property_Name_After_Owner() { var target = new PropertyParser(); - var reader = new CharacterReader("Foo.123"); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader("Foo.123".AsSpan()))); Assert.Equal(4, ex.Column); Assert.Equal("Unexpected '1'.", ex.Message); } @@ -150,9 +143,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Whitespace_Between_Owner_And_Name() { var target = new PropertyParser(); - var reader = new CharacterReader("Foo. Bar"); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader("Foo. Bar".AsSpan()))); Assert.Equal(4, ex.Column); Assert.Equal("Unexpected ' '.", ex.Message); } @@ -161,9 +153,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Too_Many_Segments() { var target = new PropertyParser(); - var reader = new CharacterReader("Foo.Bar.Baz"); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader("Foo.Bar.Baz".AsSpan()))); Assert.Equal(8, ex.Column); Assert.Equal("Unexpected '.'.", ex.Message); } @@ -172,9 +163,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Too_Many_Namespaces() { var target = new PropertyParser(); - var reader = new CharacterReader("foo:bar:Baz"); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader("foo:bar:Baz".AsSpan()))); Assert.Equal(8, ex.Column); Assert.Equal("Unexpected ':'.", ex.Message); } @@ -183,9 +173,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Parens_But_No_Owner() { var target = new PropertyParser(); - var reader = new CharacterReader("(Foo)"); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader("(Foo)".AsSpan()))); Assert.Equal(1, ex.Column); Assert.Equal("Expected property owner.", ex.Message); } @@ -194,9 +183,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Parens_And_Namespace_But_No_Owner() { var target = new PropertyParser(); - var reader = new CharacterReader("(foo:Bar)"); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader("(foo:Bar)".AsSpan()))); Assert.Equal(1, ex.Column); Assert.Equal("Expected property owner.", ex.Message); } @@ -205,9 +193,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Missing_Close_Parens() { var target = new PropertyParser(); - var reader = new CharacterReader("(Foo.Bar"); - - var ex = Assert.Throws(() => target.Parse(reader)); + + var ex = Assert.Throws(() => target.Parse(new CharacterReader("(Foo.Bar".AsSpan()))); Assert.Equal(8, ex.Column); Assert.Equal("Expected ')'.", ex.Message); } @@ -216,9 +203,8 @@ namespace Avalonia.Markup.Xaml.UnitTests.Parsers public void Fails_With_Unexpected_Close_Parens() { var target = new PropertyParser(); - var reader = new CharacterReader("Foo.Bar)"); - var ex = Assert.Throws(() => target.Parse(reader)); + var ex = Assert.Throws(() => target.Parse(new CharacterReader("Foo.Bar)".AsSpan()))); Assert.Equal(7, ex.Column); Assert.Equal("Unexpected ')'.", ex.Message); }