Your friendly neighborhood oneiric here,
Since the last update to my FFS, I have replaced cpp-netlib with Boost.Beast, implemented converting fuzz tests to use clang's builtin fuzzer (based on work by MoroccanMalinois, many thanks), implemented integration tests (based on Boost.Python work by anonimal, many thanks), and removed unnecessary signature types.
After discussion in IRC, and a number of my PRs closed by anonimal, unit-tests/test coverage are no longer a milestone of this FFS. Test coverage percentages are a bad metric for test usefulness/effectiveness, and should have never been part of this FFS. The only remaining milestone is replacing cpp-netlib with Boost.Beast, which I have completed.
It's been a learning experience in writing effective tests, and I continue to strive for improvement, as can be seen in my LeaseSet unit-tests in #1023, URI unit-tests in #1033, and Stream API unit-tests in #1040.
Here is a list of my open work:
- #1033: Beast: replace cpp-netlib with Boost.Beast
- #1023: Tests: Fuzz: use single drivers for fuzz tests
- #1024: Tests: ClientDestination unit-tests
- #1034: Crypto: remove signatures except for Ed25519, RSA-SHA512 raw verifier, and DSA verifier
- #1037: Tests: Integration: initial support for integration tests
- #1040: WIP: Tests: Integration: Stream API refactor w/ unit and integration tests
- #1015: AddressBook: move subscription saving to storage
- #1025: Instance: separate client code from core startup
- #1039: Transports: add atomic state variable to Peer
- #1038: Tunnel: remove dead code
I will update the list if/when my work is merged.