Initial support for converting the mappings to a Pact(flow) json file (#748)

* WithDescription

* WithConsumer / WithProvider

* x

* .

* .

* .

* .

* fix

* pact

* nullable

* ficx

* .

* fix
This commit is contained in:
Stef Heyenrath
2022-04-22 16:17:50 +02:00
committed by GitHub
parent b06b3c8e8b
commit a6ee2dacc7
93 changed files with 1876 additions and 1065 deletions

View File

@@ -1,56 +1,54 @@
using System;
using System;
namespace WireMock.Admin.Requests
namespace WireMock.Admin.Requests;
/// <summary>
/// Request Log Model
/// </summary>
public class LogEntryModel
{
/// <summary>
/// Request Log Model
/// The unique identifier.
/// </summary>
[FluentBuilder.AutoGenerateBuilder]
public class LogEntryModel
{
/// <summary>
/// The unique identifier.
/// </summary>
public Guid Guid { get; set; }
public Guid Guid { get; set; }
/// <summary>
/// The request.
/// </summary>
public LogRequestModel Request { get; set; }
/// <summary>
/// The request.
/// </summary>
public LogRequestModel Request { get; set; }
/// <summary>
/// The response.
/// </summary>
public LogResponseModel Response { get; set; }
/// <summary>
/// The response.
/// </summary>
public LogResponseModel Response { get; set; }
/// <summary>
/// The mapping unique identifier.
/// </summary>
public Guid? MappingGuid { get; set; }
/// <summary>
/// The mapping unique identifier.
/// </summary>
public Guid? MappingGuid { get; set; }
/// <summary>
/// The mapping unique title.
/// </summary>
public string MappingTitle { get; set; }
/// <summary>
/// The mapping unique title.
/// </summary>
public string MappingTitle { get; set; }
/// <summary>
/// The request match result.
/// </summary>
public LogRequestMatchModel RequestMatchResult { get; set; }
/// <summary>
/// The request match result.
/// </summary>
public LogRequestMatchModel RequestMatchResult { get; set; }
/// <summary>
/// The partial mapping unique identifier.
/// </summary>
public Guid? PartialMappingGuid { get; set; }
/// <summary>
/// The partial mapping unique identifier.
/// </summary>
public Guid? PartialMappingGuid { get; set; }
/// <summary>
/// The partial mapping unique title.
/// </summary>
public string PartialMappingTitle { get; set; }
/// <summary>
/// The partial mapping unique title.
/// </summary>
public string PartialMappingTitle { get; set; }
/// <summary>
/// The partial request match result.
/// </summary>
public LogRequestMatchModel PartialRequestMatchResult { get; set; }
}
/// <summary>
/// The partial request match result.
/// </summary>
public LogRequestMatchModel PartialRequestMatchResult { get; set; }
}

View File

@@ -1,51 +1,49 @@
using System.Collections.Generic;
using System.Collections.Generic;
namespace WireMock.Admin.Requests
namespace WireMock.Admin.Requests;
/// <summary>
/// LogRequestMatchModel
/// </summary>
public class LogRequestMatchModel
{
/// <summary>
/// LogRequestMatchModel
/// Gets or sets the match-score.
/// </summary>
[FluentBuilder.AutoGenerateBuilder]
public class LogRequestMatchModel
{
/// <summary>
/// Gets or sets the match-score.
/// </summary>
/// <value>
/// The match-score.
/// </value>
public double TotalScore { get; set; }
/// <value>
/// The match-score.
/// </value>
public double TotalScore { get; set; }
/// <summary>
/// Gets or sets the total number of matches.
/// </summary>
/// <value>
/// The total number of matches.
/// </value>
public int TotalNumber { get; set; }
/// <summary>
/// Gets or sets the total number of matches.
/// </summary>
/// <value>
/// The total number of matches.
/// </value>
public int TotalNumber { get; set; }
/// <summary>
/// Gets or sets a value indicating whether this instance is perfect match.
/// </summary>
/// <value>
/// <c>true</c> if this instance is perfect match; otherwise, <c>false</c>.
/// </value>
public bool IsPerfectMatch { get; set; }
/// <summary>
/// Gets or sets a value indicating whether this instance is perfect match.
/// </summary>
/// <value>
/// <c>true</c> if this instance is perfect match; otherwise, <c>false</c>.
/// </value>
public bool IsPerfectMatch { get; set; }
/// <summary>
/// Gets the match percentage.
/// </summary>
/// <value>
/// The match percentage.
/// </value>
public double AverageTotalScore { get; set; }
/// <summary>
/// Gets the match percentage.
/// </summary>
/// <value>
/// The match percentage.
/// </value>
public double AverageTotalScore { get; set; }
/// <summary>
/// Gets the match details.
/// </summary>
/// <value>
/// The match details.
/// </value>
public IList<object> MatchDetails { get; set; }
}
/// <summary>
/// Gets the match details.
/// </summary>
/// <value>
/// The match details.
/// </value>
public IList<object> MatchDetails { get; set; }
}

View File

@@ -1,109 +1,107 @@
using System;
using System;
using System.Collections.Generic;
using WireMock.Admin.Mappings;
using WireMock.Types;
namespace WireMock.Admin.Requests
namespace WireMock.Admin.Requests;
/// <summary>
/// RequestMessage Model
/// </summary>
public class LogRequestModel
{
/// <summary>
/// RequestMessage Model
/// The Client IP Address.
/// </summary>
[FluentBuilder.AutoGenerateBuilder]
public class LogRequestModel
{
/// <summary>
/// The Client IP Address.
/// </summary>
public string ClientIP { get; set; }
public string ClientIP { get; set; }
/// <summary>
/// The DateTime.
/// </summary>
public DateTime DateTime { get; set; }
/// <summary>
/// The DateTime.
/// </summary>
public DateTime DateTime { get; set; }
/// <summary>
/// The Path.
/// </summary>
public string Path { get; set; }
/// <summary>
/// The Path.
/// </summary>
public string Path { get; set; }
/// <summary>
/// The Absolute Path.
/// </summary>
public string AbsolutePath { get; set; }
/// <summary>
/// The Absolute Path.
/// </summary>
public string AbsolutePath { get; set; }
/// <summary>
/// Gets the url (relative).
/// </summary>
public string Url { get; set; }
/// <summary>
/// Gets the url (relative).
/// </summary>
public string Url { get; set; }
/// <summary>
/// The absolute URL.
/// </summary>
public string AbsoluteUrl { get; set; }
/// <summary>
/// The absolute URL.
/// </summary>
public string AbsoluteUrl { get; set; }
/// <summary>
/// The ProxyUrl (if a proxy is used).
/// </summary>
public string ProxyUrl { get; set; }
/// <summary>
/// The ProxyUrl (if a proxy is used).
/// </summary>
public string? ProxyUrl { get; set; }
/// <summary>
/// The query.
/// </summary>
public IDictionary<string, WireMockList<string>> Query { get; set; }
/// <summary>
/// The query.
/// </summary>
public IDictionary<string, WireMockList<string>>? Query { get; set; }
/// <summary>
/// The method.
/// </summary>
public string Method { get; set; }
/// <summary>
/// The method.
/// </summary>
public string Method { get; set; }
/// <summary>
/// The Headers.
/// </summary>
public IDictionary<string, WireMockList<string>> Headers { get; set; }
/// <summary>
/// The Headers.
/// </summary>
public IDictionary<string, WireMockList<string>>? Headers { get; set; }
/// <summary>
/// The Cookies.
/// </summary>
public IDictionary<string, string> Cookies { get; set; }
/// <summary>
/// The Cookies.
/// </summary>
public IDictionary<string, string>? Cookies { get; set; }
/// <summary>
/// The body (as string).
/// </summary>
public string Body { get; set; }
/// <summary>
/// The body (as string).
/// </summary>
public string? Body { get; set; }
/// <summary>
/// The body (as JSON object).
/// </summary>
public object BodyAsJson { get; set; }
/// <summary>
/// The body (as JSON object).
/// </summary>
public object? BodyAsJson { get; set; }
/// <summary>
/// The body (as bytearray).
/// </summary>
public byte[] BodyAsBytes { get; set; }
/// <summary>
/// The body (as bytearray).
/// </summary>
public byte[]? BodyAsBytes { get; set; }
/// <summary>
/// The body encoding.
/// </summary>
public EncodingModel BodyEncoding { get; set; }
/// <summary>
/// The body encoding.
/// </summary>
public EncodingModel? BodyEncoding { get; set; }
/// <summary>
/// The DetectedBodyType, valid values are:
///
/// - None
/// - String
/// - Json
/// - Bytes
/// </summary>
public string DetectedBodyType { get; set; }
/// <summary>
/// The DetectedBodyType, valid values are:
///
/// - None
/// - String
/// - Json
/// - Bytes
/// </summary>
public string? DetectedBodyType { get; set; }
/// <summary>
/// The DetectedBodyTypeFromContentType, valid values are:
///
/// - None
/// - String
/// - Json
/// - Bytes
/// </summary>
public string DetectedBodyTypeFromContentType { get; set; }
}
/// <summary>
/// The DetectedBodyTypeFromContentType, valid values are:
///
/// - None
/// - String
/// - Json
/// - Bytes
/// </summary>
public string? DetectedBodyTypeFromContentType { get; set; }
}

View File

@@ -1,83 +1,81 @@
using System.Collections.Generic;
using System.Collections.Generic;
using WireMock.Admin.Mappings;
using WireMock.Types;
namespace WireMock.Admin.Requests
namespace WireMock.Admin.Requests;
/// <summary>
/// Response MessageModel
/// </summary>
public class LogResponseModel
{
/// <summary>
/// Response MessageModel
/// Gets or sets the status code.
/// </summary>
[FluentBuilder.AutoGenerateBuilder]
public class LogResponseModel
{
/// <summary>
/// Gets or sets the status code.
/// </summary>
public object StatusCode { get; set; } = 200;
public object? StatusCode { get; set; }
/// <summary>
/// Gets the headers.
/// </summary>
public IDictionary<string, WireMockList<string>> Headers { get; set; }
/// <summary>
/// Gets the headers.
/// </summary>
public IDictionary<string, WireMockList<string>>? Headers { get; set; }
/// <summary>
/// Gets or sets the body destination (SameAsSource, String or Bytes).
/// </summary>
public string BodyDestination { get; set; }
/// <summary>
/// Gets or sets the body destination (SameAsSource, String or Bytes).
/// </summary>
public string? BodyDestination { get; set; }
/// <summary>
/// The body (as string).
/// </summary>
public string Body { get; set; }
/// <summary>
/// The body (as string).
/// </summary>
public string? Body { get; set; }
/// <summary>
/// The body (as JSON object).
/// </summary>
public object BodyAsJson { get; set; }
/// <summary>
/// The body (as JSON object).
/// </summary>
public object? BodyAsJson { get; set; }
/// <summary>
/// The body (as bytearray).
/// </summary>
public byte[] BodyAsBytes { get; set; }
/// <summary>
/// The body (as bytearray).
/// </summary>
public byte[]? BodyAsBytes { get; set; }
/// <summary>
/// Gets or sets the body as file.
/// </summary>
public string BodyAsFile { get; set; }
/// <summary>
/// Gets or sets the body as file.
/// </summary>
public string? BodyAsFile { get; set; }
/// <summary>
/// Is the body as file cached?
/// </summary>
public bool? BodyAsFileIsCached { get; set; }
/// <summary>
/// Is the body as file cached?
/// </summary>
public bool? BodyAsFileIsCached { get; set; }
/// <summary>
/// Gets or sets the original body.
/// </summary>
public string BodyOriginal { get; set; }
/// <summary>
/// Gets or sets the original body.
/// </summary>
public string? BodyOriginal { get; set; }
/// <summary>
/// Gets or sets the body.
/// </summary>
public EncodingModel BodyEncoding { get; set; }
/// <summary>
/// Gets or sets the body.
/// </summary>
public EncodingModel? BodyEncoding { get; set; }
/// <summary>
/// The detected body type (detection based on body content).
/// </summary>
public BodyType DetectedBodyType { get; set; }
/// <summary>
/// The detected body type (detection based on body content).
/// </summary>
public BodyType? DetectedBodyType { get; set; }
/// <summary>
/// The detected body type (detection based on Content-Type).
/// </summary>
public BodyType DetectedBodyTypeFromContentType { get; set; }
/// <summary>
/// The detected body type (detection based on Content-Type).
/// </summary>
public BodyType? DetectedBodyTypeFromContentType { get; set; }
/// <summary>
/// The FaultType.
/// </summary>
public string FaultType { get; set; }
/// <summary>
/// The FaultType.
/// </summary>
public string? FaultType { get; set; }
/// <summary>
/// Gets or sets the Fault percentage.
/// </summary>
public double? FaultPercentage { get; set; }
}
/// <summary>
/// Gets or sets the Fault percentage.
/// </summary>
public double? FaultPercentage { get; set; }
}