Skip to content
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 OData #556

Open
xadvfh opened this issue Dec 15, 2020 · 2 comments
Open

Support OData #556

xadvfh opened this issue Dec 15, 2020 · 2 comments
Labels

Comments

@xadvfh
Copy link

xadvfh commented Dec 15, 2020

Is your feature request related to a problem? Please describe.
Is there a way to support OData with the responses that we stub out in WireMock.Net?

Describe the solution you'd like
Given I stub a request to return a specific response
When a user requests the data with a OData query
Then the response should only include the data the query specifies

Describe alternatives you've considered
Stubbing every single query used

Is your feature request supported by WireMock (java version)? Please provide details.
Only via stubbing each query

Additional context
#72 talks about stubbing a specific OData query but I'm wondering if this is something that could be built in.

@xadvfh xadvfh added the feature label Dec 15, 2020
@StefH
Copy link
Collaborator

StefH commented Dec 15, 2020

OData is just a specification.

With WireMock.Net you can stub any request and response.

Or do you have a different question?

@xadvfh
Copy link
Author

xadvfh commented Dec 15, 2020

I guess I was wondering if there is a way for wiremock to autogenerate the stubs based on a request. I'm not even sure if this is possible but here is what I had floating around in my head.

Assuming the response is a json object, if there was a stub like this:

server
	.Given(Request.Create()
		.WithPath($"/personal/api/v2/Accounts/11234567890")
		.UsingGet()
		.StubODataQueries());
	.RespondWith(Response.Create()
		.WithStatusCode(200)
		.WithHeader(ResponseConstants.ContentTypeKey, ResponseConstants.ContentTypeJson)
		.WithBodyAsJson(CreateResponse(accountSection)));

When a request matches that path but has an OData query attached to it, it would take the response that the user specified in WithBodyAsJson and create a new one based on the OData query.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

2 participants