Skip to content

Conversation

jakewins
Copy link
Contributor

This introduces a comprehensive test suite for testing thousands of
different buffer size, network frame size and message size combinations
for the TLSSocketChannel.

This test uncovered several issues, notably it found a blocking issue
that is resolved in this commit as well, where the hand shake portion
of the exchange would also read a bit "into" user data space, and that
data would then get lost - subsequently, when the client layer asked for
the amount of data it "expected" to be in place, it'd block indefinitely
because of that lost data ensuring we'd never add up to the expected amount.

Notably, this commit also removes four unit tests. These tests are covered
by the more comprehensive test, and were rather mock and stub heavy, meaning
it seemed preferrable to remove them than to refactor them to work with the
changes to the implementation

This introduces a comprehensive test suite for testing thousands of
different buffer size, network frame size and message size combinations
for the TLSSocketChannel.

This test uncovered several issues, notably it found a blocking issue
that is resolved in this commit as well, where the hand shake portion
of the exchange would also read a bit "into" user data space, and that
data would then get lost - subsequently, when the client layer asked for
the amount of data it "expected" to be in place, it'd block indefinitely
because of that lost data ensuring we'd never add up to the expected amount.

Notably, this commit also removes four unit tests. These tests are covered
by the more comprehensive test, and were rather mock and stub heavy, meaning
it seemed preferrable to remove them than to refactor them to work with the
changes to the implementation
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