From ff6b42d6104fe8e1d765ac9d77505ca48b75e5a6 Mon Sep 17 00:00:00 2001 From: Stepami Date: Sat, 3 Aug 2024 21:12:59 +0300 Subject: [PATCH] =?UTF-8?q?#57=20-=20=D1=82=D0=B5=D1=81=D1=82=20=D0=BD?= =?UTF-8?q?=D0=B0=20=D0=BF=D1=80=D0=BE=D0=B2=D0=B5=D1=80=D0=BA=D1=83=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=B4=D1=81=D1=82=D0=B0=D0=BD=D0=BE=D0=B2=D0=BA?= =?UTF-8?q?=D0=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../PatternGenerator.cs | 2 +- .../PatternGeneratorTests.cs | 2 +- .../Infrastructure/GeneratedRegexContainerTests.cs | 13 +++++++++++++ 3 files changed, 15 insertions(+), 2 deletions(-) create mode 100644 tests/HydraScript.Tests/Unit/Infrastructure/GeneratedRegexContainerTests.cs diff --git a/src/Infrastructure/HydraScript.Infrastructure.LexerRegexGenerator/PatternGenerator.cs b/src/Infrastructure/HydraScript.Infrastructure.LexerRegexGenerator/PatternGenerator.cs index 48a23f0..62f9202 100644 --- a/src/Infrastructure/HydraScript.Infrastructure.LexerRegexGenerator/PatternGenerator.cs +++ b/src/Infrastructure/HydraScript.Infrastructure.LexerRegexGenerator/PatternGenerator.cs @@ -79,7 +79,7 @@ namespace HydraScript.Infrastructure; internal partial class {info.ClassName} {{ [StringSyntax(StringSyntaxAttribute.Regex)] - private const string Pattern = + public const string Pattern = """""" {pattern} """"""; diff --git a/tests/HydraScript.Infrastructure.LexerRegexGenerator.Tests/PatternGeneratorTests.cs b/tests/HydraScript.Infrastructure.LexerRegexGenerator.Tests/PatternGeneratorTests.cs index d80ba26..10840d0 100644 --- a/tests/HydraScript.Infrastructure.LexerRegexGenerator.Tests/PatternGeneratorTests.cs +++ b/tests/HydraScript.Infrastructure.LexerRegexGenerator.Tests/PatternGeneratorTests.cs @@ -36,7 +36,7 @@ namespace HydraScript.Infrastructure; internal partial class TestPatternContainer { [StringSyntax(StringSyntaxAttribute.Regex)] - private const string Pattern = + public const string Pattern = """ (?[a-zA-Z]+)|(?[0-9]+)|(?\S+) """; diff --git a/tests/HydraScript.Tests/Unit/Infrastructure/GeneratedRegexContainerTests.cs b/tests/HydraScript.Tests/Unit/Infrastructure/GeneratedRegexContainerTests.cs new file mode 100644 index 0000000..895b5b8 --- /dev/null +++ b/tests/HydraScript.Tests/Unit/Infrastructure/GeneratedRegexContainerTests.cs @@ -0,0 +1,13 @@ +using HydraScript.Infrastructure; +using Xunit; + +namespace HydraScript.Tests.Unit.Infrastructure; + +public class GeneratedRegexContainerTests +{ + [Fact] + public void GetRegex_Generated_ManualIsUpToDate() => + GeneratedRegexContainer.Pattern.Trim().Should().Be( + GeneratedRegexContainer.GetRegex().ToString(), + "because В атрибут GeneratedRegex не подставлена актуальная сгенерированная регулярка"); +} \ No newline at end of file