Don't trim inner string when matching proxy tags
This commit is contained in:
		| @@ -71,10 +71,10 @@ namespace PluralKit.Bot | ||||
|             if (!isMatch) return false;  | ||||
|              | ||||
|             // We got a match, extract inner text | ||||
|             inner = input.Substring(prefix.Length, input.Length - prefix.Length - suffix.Length).Trim(); | ||||
|             inner = input.Substring(prefix.Length, input.Length - prefix.Length - suffix.Length); | ||||
|              | ||||
|             // (see https://github.com/xSke/PluralKit/pull/181) | ||||
|             return inner != "\U0000fe0f"; | ||||
|             return inner.Trim() != "\U0000fe0f"; | ||||
|         } | ||||
|  | ||||
|         private string? ExtractLeadingMention(ref string input) | ||||
|   | ||||
| @@ -10,9 +10,6 @@ namespace PluralKit.Tests | ||||
| { | ||||
|     public class ProxyTagParserTests | ||||
|     { | ||||
|         private ProxyTagParser parser = new ProxyTagParser(); | ||||
|  | ||||
|  | ||||
|         public class Basics | ||||
|         { | ||||
|             private ProxyMember[] members = { | ||||
| @@ -44,8 +41,6 @@ namespace PluralKit.Tests | ||||
|             [Theory] | ||||
|             [InlineData("[text inside]", "text inside")] | ||||
|             [InlineData("A:text after", "text after")] | ||||
|             [InlineData("A: space after prefix", "space after prefix")] | ||||
|             [InlineData("[      lots and lots of spaces      ]", "lots and lots of spaces")] | ||||
|             public void ContentBetweenTagsIsExtracted(string input, string expectedContent) => | ||||
|                 AssertMatch(members, input, content: expectedContent); | ||||
|  | ||||
| @@ -62,6 +57,12 @@ namespace PluralKit.Tests | ||||
|             [InlineData("something A:prefix")] | ||||
|             public void TagsOnlyMatchAtTheStartAndEnd(string input) => | ||||
|                 AssertNoMatch(members, input); | ||||
|              | ||||
|             [Theory] | ||||
|             [InlineData("[   text     ]", "   text     ")] | ||||
|             [InlineData("A: text", " text")] | ||||
|             public void WhitespaceInContentShouldNotBeTrimmed(string input, string expectedContent) => | ||||
|                 AssertMatch(members, input, content: expectedContent); | ||||
|         } | ||||
|  | ||||
|         public class MentionPrefix | ||||
|   | ||||
		Reference in New Issue
	
	Block a user