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

tests: add BetterTLS path building test suite. #116

Merged
merged 1 commit into from
Jul 6, 2023

Conversation

cpu
Copy link
Member

@cpu cpu commented Jul 6, 2023

This commit introduces the Netflix BetterTLS project's path building test suite to the webpki integration tests. I think we can also look at adding some of the other test suites (there's some good stuff for name constraints for example) but path building is the place where I feel like we have the least coverage today.

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 of the upstream project and allows us to directly test webpki's path building against the test suite without needing Rustls or Go.

@cpu cpu self-assigned this Jul 6, 2023
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
@codecov
Copy link

codecov bot commented Jul 6, 2023

Codecov Report

Merging #116 (884ef94) into main (0b43fb8) will increase coverage by 0.32%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##             main     #116      +/-   ##
==========================================
+ Coverage   95.36%   95.69%   +0.32%     
==========================================
  Files          15       15              
  Lines        3346     3346              
==========================================
+ Hits         3191     3202      +11     
+ Misses        155      144      -11     

see 4 files with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

Copy link
Member

@ctz ctz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

nice, that's a good coverage increment!

@cpu cpu added this pull request to the merge queue Jul 6, 2023
Merged via the queue into rustls:main with commit 4a39e2b Jul 6, 2023
21 checks passed
@cpu cpu deleted the cpu-bettertls-wip branch July 6, 2023 19:07
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants