exoscale / egoscale

exoscale golang bindings
Apache License 2.0
31 stars 14 forks source link

[Feature Request]: v3: Consider PACT integration #629

Closed udf2457 closed 2 months ago

udf2457 commented 2 months ago

What feature would you like to have in egoscale?

See https://github.com/pact-foundation/pact-go + https://docs.pact.io/faq/convinceme

This could be useful both for those at exoscale developing the API, as well as users who are coding against the API.

pierre-emmanuelJ commented 2 months ago

Thanks for suggesting Pact for integration testing in egoscale! I appreciate you bringing this valuable tool to our attention.

While I see the overall advantages of Pact, integrating it directly into the egoscale repository (which primarily focuses on Go bindings generated from the OpenAPI spec) might not be the most suitable approach.

Here's my reasoning:

Now, considering a specific use case of acceptance testing, there's an alternative approach to explore:

Leveraging HTTP Replay for Acceptance Testing:

Our team has been investigating the possibility of using an HTTP replay library for acceptance testing in the Exoscale Terraform provider. This approach would involve recording real interactions with the Exoscale API and replaying them during tests. It offers several benefits:

While we're currently focusing on HTTP replay for the Terraform provider testing, we'll definitely keep Pact in mind for potential future use cases within our project.

Thanks again for bringing this interesting tool to our attention!