-
Notifications
You must be signed in to change notification settings - Fork 107
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
Support for custom mime types #87
Comments
This is a hard limitation, but ideally, the matcher should also accept potentially text-based MIME types or explicitly defined text-based MIME types via a new API mock method, e.g: Would you like to send a PR? That would possibly be the faster way to proceed forward. |
@h2non Thanks for the quick reply. After submitting the issue I discovered the ability to add custom matchers, which allowed me to workaround this limitation pretty easily. I think the new method you're suggesting would be a nice addition though and I'd be happy to submit a PR. If I understand your suggestion correctly, this new method would be used in conjunction with a body matcher? E.g. something like: gock.New("http://foo.com").
Post("/bar").
BodyTypes("application/vnd.apiname.v1+json").
BodyString(`{"foo": "bar"}`).
Reply(200).
JSON(map[string]string{"foo": "bar"}) |
That's exactly it. Happy to review and merge the PR! |
Closing as this is fixed now |
I'm having trouble trying to write a mock that matches POST requests based on the request body and the issue seems to be a result of gock being a bit too strict when it comes to validating mime types.
From reading the source code I noticed that gock checks to see if the request content type header value matches a fixed list of supported mime types:
gock/matchers.go
Lines 21 to 28 in f77fde8
application/vnd.apiname.v1+json
, so it never matches.Do you have any suggestions on how I could workaround this?
The text was updated successfully, but these errors were encountered: