Add TestServer.SSH — mock SSH server support#51
Draft
richard-ash wants to merge 2 commits intorichard/refactor-http-websocketfrom
Draft
Add TestServer.SSH — mock SSH server support#51richard-ash wants to merge 2 commits intorichard/refactor-http-websocketfrom
richard-ash wants to merge 2 commits intorichard/refactor-http-websocketfrom
Conversation
9f63b03 to
b7ce03d
Compare
b7ce03d to
c905faa
Compare
af202a5 to
9af6775
Compare
129cc4a to
49ccbd4
Compare
c8220ca to
db118cd
Compare
e1919a5 to
409a973
Compare
db118cd to
80a6eb8
Compare
409a973 to
634d354
Compare
80a6eb8 to
48defca
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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 goal of TestServer is to support any network protocol under a single, consistent testing API, with shared lifecycle management and ExUnit integration. Right now adding a new protocol is constrained because InstanceManager has HTTP-specific assumptions baked in — it hardcodes HTTP instance construction and teardown, making it impossible to reuse for other protocols.
The natural evolution is to move protocol-specific logic into submodules (TestServer.PROTOCOL) while keeping InstanceManager and InstanceSupervisor as shared, protocol-agnostic infrastructure.
This PR introduces TestServer.SSH as the first protocol under this model. HTTP/WebSocket will be refactored to match in a follow-up once the pattern is validated.