webpki/third-party/bettertls
Daniel McCarney 52f4db4b85 tests: add BetterTLS path building test suite.
[`git cherry-pick 4a39e2b67d4cddf58b0ea16dd821a04ee2240058`, with support
for Edition 2018 added by Brian.]

This commit introduces the Netflix BetterTLS[0]'s path building test
suite to the webpki integration tests.

This project has a test runner for Rustls that will stand up TLS servers
to exercise these tests but:

* It requires Go.
* It needs Rustls in order to do a full TLS handshake with the test
  servers.
* It's slower than testing the path building directly without the TLS
  bits.

To avoid these issues this commit takes a different approach and vendors
the exported path building test suite. This is a supported feature[1] of
the upstream project and allow us to directly test webpki's path
building against the test suite without needing Rustls or Go.

[0]: https://github.com/Netflix/bettertls
[1]: https://github.com/Netflix/bettertls#exporting-tests-to-run-outside-of-the-bettertls-executor
2023-09-29 21:50:11 -07:00
..
LICENSE tests: add BetterTLS path building test suite. 2023-09-29 21:50:11 -07:00
README.md tests: add BetterTLS path building test suite. 2023-09-29 21:50:11 -07:00
pathbuilding.tests.json tests: add BetterTLS path building test suite. 2023-09-29 21:50:11 -07:00

README.md

BetterTLS Test Suite

Generated using the Netflix bettertls project.

Pathbuilding

To regenerate pathbuilding test data:

  1. Install Go
  2. Generate the JSON testdata export for the path building suite:
GOBIN=$PWD go install github.com/Netflix/bettertls/test-suites/cmd/bettertls@latest
./bettertls export-tests --suite pathbuilding --out ./pathbuilding.tests.json