Closed alexgervais closed 4 years ago
[APPROVALNOTIFIER] This PR is NOT APPROVED
This pull-request has been approved by: alexgervais
To complete the pull request process, please assign bowei
You can assign the PR to them by writing /assign @bowei
in a comment when ready.
The full list of commands accepted by this bot can be found here.
I scanned through this and it seems like it is heading in a reasonable direction. I'm a bit loth to invest the time in such a large review, but I can if it will help.
Is it possible to split in to smaller pieces?
I've been experimenting with improvements in the ingress-controller-conformance test suite for newly added features to the
networking.k8s.io/v1beta1
API in k8s 1.18. This PR is a superset of changes introduced in https://github.com/kubernetes-sigs/ingress-controller-conformance/pull/9I believe it'll be much easier to iterate and investigate using standard test frameworks (https://github.com/kubernetes-sigs/ingress-controller-conformance/issues/29) using this PR as a baseline. This PR already decouples the test suite from the test machinery and removes a lot of boilerplate. Although, I mostly wanted to make it public for gathering feedback and cherrypick the good parts.
The following issues were addressed in this branch:
suite
package) from the machinery (https://github.com/kubernetes-sigs/ingress-controller-conformance/issues/17)RunRequest
andDoCheck
(https://github.com/kubernetes-sigs/ingress-controller-conformance/issues/18)ingress-controller-conformance apply
) must now specify an api-version parameter. This allows to setup a test suite for eitherextensions/v1beta1
ornetworking.k8s.io/v1beta1
.networking.k8s.io/v1beta1
(https://github.com/kubernetes-sigs/ingress-controller-conformance/issues/23)networking.k8s.io/v1beta1
IngressClass
usage innetworking.k8s.io/v1beta1
Error
orWarning
.Warning
allows to output assertion information without failing the tests (such as inspecting request and response headers).cc. @bowei @jpeach