Don't assume server supports all test types #216
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The NDT client assumes that the server supports all test types and the official NDT server respects this assumption.
However, the neubot/botticelli server only implements TEST_META, TEST_S2C, and TEST_S2C.
Therefore, when using the NDT client with a botticelli server, the client crahes in processing the results of the TEST_MID that however has not been executed.
Fix by making sure that, when processing results, we use a bitmak where only bits corresponding to tests that run are actually set.
(There is also another reason why NDT client crashes when testing with botticelli, addressed by neubot/botticelli#18.)
Problems between NDT client and botticelli reported by @nkinkade, thanks!