-
-
Notifications
You must be signed in to change notification settings - Fork 214
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Query string match on DateTimeOffset is not working #347
Comments
The issue is that when you post a mapping like this: "Params": [
{
"Name": "dateTime",
"Matchers": [
{
"Name": "ExactMatcher",
"Pattern": "2019-09-19T18:02:31.7039950+02:00"
}
]
}
] The string value I'll investigate if this can be solved. |
Thank you. I was looking through code myself but it's difficult to get up to speed with it as I don't know how it all fits together. Maybe in future you could give a high level overview of the solution so that others can get up and running and contribute :-) thank you! |
I've made a fix. Can you please try MyGet version : WireMock.Net.1.0.32-ci-11907 Can be tested with request like: |
Thank you for such a fast turnaround! Can you please update a Docker image as we use this in K8s to simulate our dependencies? |
I'll create a new official version tonight and also a new docker. |
@viktorpeacock : do double check : did you test it ? |
Hi Stef, Yes. The following configuration and request worked for me:
Request: http://localhost:9092/test?dateTime=2019-09-20T11%3A03%3A17.221%2B00%3A00 Response: |
I'll create a new official version tonight and also a new docker. |
You are a star! Thank you very much :-) |
Hi,
I am sending two values via a query string and I am trying to configure wiremock to respond when these two values come through. First is an int and it works fine. Second is a DateTimeOffset in the following format:
"yyyy-MM-ddTHH\\:mm\\:ss.fffzzz"
I have tried using the ExactValue matcher as so:
This does not work and the following is returned from the wiremock:
[Error] : HttpStatusCode set to 400 System.ArgumentException: values
at WireMock.Validation.Check.HasNoNulls[T](IList
1 value, String parameterName) at WireMock.Matchers.ExactMatcher..ctor(MatchBehaviour matchBehaviour, String[] values) at WireMock.Serialization.MatcherMapper.Map(MatcherModel matcher) at System.Linq.Enumerable.SelectArrayIterator
2.MoveNext()at System.Linq.Enumerable.CastIterator[TResult](IEnumerable source)+MoveNext()
at System.Collections.Generic.LargeArrayBuilder
1.AddRange(IEnumerable
1 items)at System.Collections.Generic.EnumerableHelpers.ToArray[T](IEnumerable
1 source) at System.Linq.Enumerable.ToArray[TSource](IEnumerable
1 source)at WireMock.Server.FluentMockServer.InitRequestBuilder(RequestModel requestModel, Boolean pathOrUrlRequired)
at WireMock.Server.FluentMockServer.DeserializeAndAddOrUpdateMapping(MappingModel mappingModel, Nullable`1 guid, String path)
at WireMock.Server.FluentMockServer.MappingsPost(RequestMessage requestMessage)
However, when I use a standard dateTimeOffset.ToString(), then it works fine and the following is configured:
Is there any guidance/examples on how to work with datetime/datetimeoffset in a specific format? I thought it would treat it just like any other string.
The text was updated successfully, but these errors were encountered: