-
Type: Sub-task
-
Resolution: Fixed
-
Priority: Unknown
-
Affects Version/s: None
-
Component/s: None
Summary
(lifted from PR description)
This PR primarily does three things:
- ensures that the message stream is always destroyed and ensure that the socket is always destroyed
- consolidate the connection clean up logic into a single function that is called from each point where the connection is cleaned out
- improves the unit tests to properly assert on the state of the connection after _cleanup has been called.
- Additionally, the unit tests now in for synchronous versus asynchronous behavior for the various error and clean up scenarios.