mirror of
https://github.com/wiremock/WireMock.Net.git
synced 2026-03-30 14:22:20 +02:00
Generate C# code from Mapping (#842)
* 1 * . * v * . * . * - * b * res b * Fix UT * . * Verify * v * ... * . * . * dir * m
This commit is contained in:
@@ -2,103 +2,102 @@ using FluentAssertions;
|
||||
using WireMock.Util;
|
||||
using Xunit;
|
||||
|
||||
namespace WireMock.Net.Tests.Util
|
||||
namespace WireMock.Net.Tests.Util;
|
||||
|
||||
public class StringUtilsTests
|
||||
{
|
||||
public class StringUtilsTests
|
||||
[Theory]
|
||||
[InlineData("'s")]
|
||||
[InlineData("\"s")]
|
||||
public void StringUtils_TryParseQuotedString_With_UnexpectedUnclosedString_Returns_False(string input)
|
||||
{
|
||||
[Theory]
|
||||
[InlineData("'s")]
|
||||
[InlineData("\"s")]
|
||||
public void StringUtils_TryParseQuotedString_With_UnexpectedUnclosedString_Returns_False(string input)
|
||||
{
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
|
||||
// Assert
|
||||
valid.Should().BeFalse();
|
||||
}
|
||||
// Assert
|
||||
valid.Should().BeFalse();
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("")]
|
||||
[InlineData(null)]
|
||||
[InlineData("x")]
|
||||
public void StringUtils_TryParseQuotedString_With_InvalidStringLength_Returns_False(string input)
|
||||
{
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
[Theory]
|
||||
[InlineData("")]
|
||||
[InlineData(null)]
|
||||
[InlineData("x")]
|
||||
public void StringUtils_TryParseQuotedString_With_InvalidStringLength_Returns_False(string input)
|
||||
{
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
|
||||
// Assert
|
||||
valid.Should().BeFalse();
|
||||
}
|
||||
// Assert
|
||||
valid.Should().BeFalse();
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("xx")]
|
||||
[InlineData(" ")]
|
||||
public void StringUtils_TryParseQuotedString_With_InvalidStringQuoteCharacter_Returns_False(string input)
|
||||
{
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
[Theory]
|
||||
[InlineData("xx")]
|
||||
[InlineData(" ")]
|
||||
public void StringUtils_TryParseQuotedString_With_InvalidStringQuoteCharacter_Returns_False(string input)
|
||||
{
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
|
||||
// Assert
|
||||
valid.Should().BeFalse();
|
||||
}
|
||||
// Assert
|
||||
valid.Should().BeFalse();
|
||||
}
|
||||
|
||||
[Fact]
|
||||
public void StringUtils_TryParseQuotedString_With_UnexpectedUnrecognizedEscapeSequence_Returns_False()
|
||||
{
|
||||
// Arrange
|
||||
string input = new string(new[] { '"', '\\', 'u', '?', '"' });
|
||||
[Fact]
|
||||
public void StringUtils_TryParseQuotedString_With_UnexpectedUnrecognizedEscapeSequence_Returns_False()
|
||||
{
|
||||
// Arrange
|
||||
string input = new string(new[] { '"', '\\', 'u', '?', '"' });
|
||||
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
|
||||
// Assert
|
||||
valid.Should().BeFalse();
|
||||
}
|
||||
// Assert
|
||||
valid.Should().BeFalse();
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("''", "")]
|
||||
[InlineData("'s'", "s")]
|
||||
[InlineData("'\\\\'", "\\")]
|
||||
[InlineData("'\\n'", "\n")]
|
||||
public void StringUtils_TryParseQuotedString_SingleQuotedString(string input, string expectedResult)
|
||||
{
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
[Theory]
|
||||
[InlineData("''", "")]
|
||||
[InlineData("'s'", "s")]
|
||||
[InlineData("'\\\\'", "\\")]
|
||||
[InlineData("'\\n'", "\n")]
|
||||
public void StringUtils_TryParseQuotedString_SingleQuotedString(string input, string expectedResult)
|
||||
{
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
|
||||
// Assert
|
||||
valid.Should().BeTrue();
|
||||
result.Should().Be(expectedResult);
|
||||
quote.Should().Be('\'');
|
||||
}
|
||||
// Assert
|
||||
valid.Should().BeTrue();
|
||||
result.Should().Be(expectedResult);
|
||||
quote.Should().Be('\'');
|
||||
}
|
||||
|
||||
[Theory]
|
||||
[InlineData("\"\"", "")]
|
||||
[InlineData("\"\\\\\"", "\\")]
|
||||
[InlineData("\"\\n\"", "\n")]
|
||||
[InlineData("\"\\\\n\"", "\\n")]
|
||||
[InlineData("\"\\\\new\"", "\\new")]
|
||||
[InlineData("\"[]\"", "[]")]
|
||||
[InlineData("\"()\"", "()")]
|
||||
[InlineData("\"(\\\"\\\")\"", "(\"\")")]
|
||||
[InlineData("\"/\"", "/")]
|
||||
[InlineData("\"a\"", "a")]
|
||||
[InlineData("\"This \\\"is\\\" a test.\"", "This \"is\" a test.")]
|
||||
[InlineData(@"""This \""is\"" b test.""", @"This ""is"" b test.")]
|
||||
[InlineData("\"ab\\\"cd\"", "ab\"cd")]
|
||||
[InlineData("\"\\\"\"", "\"")]
|
||||
[InlineData("\"\\\"\\\"\"", "\"\"")]
|
||||
[InlineData("\"AB YZ 19 \uD800\udc05 \u00e4\"", "AB YZ 19 \uD800\udc05 \u00e4")]
|
||||
[InlineData("\"\\\\\\\\192.168.1.1\\\\audio\\\\new\"", "\\\\192.168.1.1\\audio\\new")]
|
||||
public void StringUtils_TryParseQuotedString_DoubleQuotedString(string input, string expectedResult)
|
||||
{
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
[Theory]
|
||||
[InlineData("\"\"", "")]
|
||||
[InlineData("\"\\\\\"", "\\")]
|
||||
[InlineData("\"\\n\"", "\n")]
|
||||
[InlineData("\"\\\\n\"", "\\n")]
|
||||
[InlineData("\"\\\\new\"", "\\new")]
|
||||
[InlineData("\"[]\"", "[]")]
|
||||
[InlineData("\"()\"", "()")]
|
||||
[InlineData("\"(\\\"\\\")\"", "(\"\")")]
|
||||
[InlineData("\"/\"", "/")]
|
||||
[InlineData("\"a\"", "a")]
|
||||
[InlineData("\"This \\\"is\\\" a test.\"", "This \"is\" a test.")]
|
||||
[InlineData(@"""This \""is\"" b test.""", @"This ""is"" b test.")]
|
||||
[InlineData("\"ab\\\"cd\"", "ab\"cd")]
|
||||
[InlineData("\"\\\"\"", "\"")]
|
||||
[InlineData("\"\\\"\\\"\"", "\"\"")]
|
||||
[InlineData("\"AB YZ 19 \uD800\udc05 \u00e4\"", "AB YZ 19 \uD800\udc05 \u00e4")]
|
||||
[InlineData("\"\\\\\\\\192.168.1.1\\\\audio\\\\new\"", "\\\\192.168.1.1\\audio\\new")]
|
||||
public void StringUtils_TryParseQuotedString_DoubleQuotedString(string input, string expectedResult)
|
||||
{
|
||||
// Act
|
||||
bool valid = StringUtils.TryParseQuotedString(input, out var result, out var quote);
|
||||
|
||||
// Assert
|
||||
valid.Should().BeTrue();
|
||||
result.Should().Be(expectedResult);
|
||||
quote.Should().Be('"');
|
||||
}
|
||||
// Assert
|
||||
valid.Should().BeTrue();
|
||||
result.Should().Be(expectedResult);
|
||||
quote.Should().Be('"');
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user