mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-03-25 02:41:53 +01:00
GUID Pattern support in RegexMatcher (#699)
* Add the RegexGuid class * Use of RegexGuid in the RegexMatcher * Fix up the CodeFactor violations * Rename RegexGuid --> RegexExtended
This commit is contained in:
100
test/WireMock.Net.Tests/RegularExpressions/RegexExtendedTests.cs
Normal file
100
test/WireMock.Net.Tests/RegularExpressions/RegexExtendedTests.cs
Normal file
@@ -0,0 +1,100 @@
|
||||
using System;
|
||||
using NFluent;
|
||||
using WireMock.RegularExpressions;
|
||||
using Xunit;
|
||||
|
||||
namespace WireMock.Net.Tests.RegularExpressions
|
||||
{
|
||||
public class RegexExtendedTests
|
||||
{
|
||||
/// <summary>
|
||||
/// Input guid used for testing
|
||||
/// </summary>
|
||||
public Guid InputGuid { get; } = Guid.NewGuid();
|
||||
|
||||
[Fact]
|
||||
public void RegexExtended_GuidB_Pattern()
|
||||
{
|
||||
var guidbUpper = @".*\GUIDB.*";
|
||||
var guidbLower = @".*\guidb.*";
|
||||
|
||||
var inputLower = InputGuid.ToString("B");
|
||||
var inputUpper = InputGuid.ToString("B").ToUpper();
|
||||
var regexLower = new RegexExtended(guidbLower);
|
||||
var regexUpper = new RegexExtended(guidbUpper);
|
||||
|
||||
Check.That(regexLower.IsMatch(inputLower)).Equals(true);
|
||||
Check.That(regexLower.IsMatch(inputUpper)).Equals(false);
|
||||
Check.That(regexUpper.IsMatch(inputUpper)).Equals(true);
|
||||
Check.That(regexUpper.IsMatch(inputLower)).Equals(false);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void RegexExtended_GuidD_Pattern()
|
||||
{
|
||||
var guiddUpper = @".*\GUIDD.*";
|
||||
var guiddLower = @".*\guidd.*";
|
||||
|
||||
var inputLower = InputGuid.ToString("D");
|
||||
var inputUpper = InputGuid.ToString("D").ToUpper();
|
||||
var regexLower = new RegexExtended(guiddLower);
|
||||
var regexUpper = new RegexExtended(guiddUpper);
|
||||
|
||||
Check.That(regexLower.IsMatch(inputLower)).Equals(true);
|
||||
Check.That(regexLower.IsMatch(inputUpper)).Equals(false);
|
||||
Check.That(regexUpper.IsMatch(inputUpper)).Equals(true);
|
||||
Check.That(regexUpper.IsMatch(inputLower)).Equals(false);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void RegexExtended_GuidN_Pattern()
|
||||
{
|
||||
var guidnUpper = @".*\GUIDN.*";
|
||||
var guidnLower = @".*\guidn.*";
|
||||
|
||||
var inputLower = InputGuid.ToString("N");
|
||||
var inputUpper = InputGuid.ToString("N").ToUpper();
|
||||
var regexLower = new RegexExtended(guidnLower);
|
||||
var regexUpper = new RegexExtended(guidnUpper);
|
||||
|
||||
Check.That(regexLower.IsMatch(inputLower)).Equals(true);
|
||||
Check.That(regexLower.IsMatch(inputUpper)).Equals(false);
|
||||
Check.That(regexUpper.IsMatch(inputUpper)).Equals(true);
|
||||
Check.That(regexUpper.IsMatch(inputLower)).Equals(false);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void RegexExtended_GuidP_Pattern()
|
||||
{
|
||||
var guidpUpper = @".*\GUIDP.*";
|
||||
var guidpLower = @".*\guidp.*";
|
||||
|
||||
var inputLower = InputGuid.ToString("P");
|
||||
var inputUpper = InputGuid.ToString("P").ToUpper();
|
||||
var regexLower = new RegexExtended(guidpLower);
|
||||
var regexUpper = new RegexExtended(guidpUpper);
|
||||
|
||||
Check.That(regexLower.IsMatch(inputLower)).Equals(true);
|
||||
Check.That(regexLower.IsMatch(inputUpper)).Equals(false);
|
||||
Check.That(regexUpper.IsMatch(inputUpper)).Equals(true);
|
||||
Check.That(regexUpper.IsMatch(inputLower)).Equals(false);
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void RegexExtended_GuidX_Pattern()
|
||||
{
|
||||
var guidxUpper = @".*\GUIDX.*";
|
||||
var guidxLower = @".*\guidx.*";
|
||||
|
||||
var inputLower = InputGuid.ToString("X");
|
||||
var inputUpper = InputGuid.ToString("X").ToUpper().Replace("X", "x");
|
||||
var regexLower = new RegexExtended(guidxLower);
|
||||
var regexUpper = new RegexExtended(guidxUpper);
|
||||
|
||||
Check.That(regexLower.IsMatch(inputLower)).Equals(true);
|
||||
Check.That(regexLower.IsMatch(inputUpper)).Equals(false);
|
||||
Check.That(regexUpper.IsMatch(inputUpper)).Equals(true);
|
||||
Check.That(regexUpper.IsMatch(inputLower)).Equals(false);
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user