Skip to content

Commit 6075ff3

Browse files
authored
Merge pull request #27 from patvice/sse-spec-consistency
Changed how sse server is spun up in specs in improve consistency
2 parents ff35f49 + 5c85924 commit 6075ff3

File tree

2 files changed

+13
-9
lines changed

2 files changed

+13
-9
lines changed

spec/ruby_llm/mcp/transport/sse_spec.rb

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,11 +32,14 @@ def client
3232
let(:client) { Runner.instance.client }
3333

3434
before(:all) do # rubocop:disable RSpec/BeforeAfterAll
35+
TestServerManager.start_sse_server
36+
sleep 1
3537
Runner.instance.start
3638
end
3739

3840
after(:all) do # rubocop:disable RSpec/BeforeAfterAll
3941
Runner.instance.stop
42+
TestServerManager.stop_sse_server
4043
end
4144

4245
describe "start" do

spec/support/test_server_manager.rb

Lines changed: 10 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@ class << self
1717
attr_accessor :stdio_server_pid, :http_server_pid, :sse_server_pid
1818

1919
def start_server
20-
return if stdio_server_pid && http_server_pid && sse_server_pid
20+
return if stdio_server_pid && http_server_pid
2121

2222
begin
2323
# Start stdio server
@@ -32,12 +32,6 @@ def start_server
3232
Process.detach(http_server_pid)
3333
end
3434

35-
# Start SSE server
36-
unless sse_server_pid
37-
self.sse_server_pid = spawn(SSE_COMMAND, SSE_ARGS, *FLAGS, chdir: SSE_DIR)
38-
Process.detach(sse_server_pid)
39-
end
40-
4135
# Give servers time to start
4236
sleep 1.0
4337
rescue StandardError => e
@@ -47,10 +41,16 @@ def start_server
4741
end
4842
end
4943

44+
def start_sse_server
45+
unless sse_server_pid
46+
self.sse_server_pid = spawn(SSE_COMMAND, SSE_ARGS, *FLAGS, chdir: SSE_DIR)
47+
Process.detach(sse_server_pid)
48+
end
49+
end
50+
5051
def stop_server
5152
stop_stdio_server
5253
stop_http_server
53-
stop_sse_server
5454
end
5555

5656
def stop_stdio_server
@@ -99,7 +99,8 @@ def stop_sse_server
9999
end
100100

101101
def ensure_cleanup
102-
stop_server if stdio_server_pid || http_server_pid || sse_server_pid
102+
stop_server if stdio_server_pid || http_server_pid
103+
stop_sse_server if sse_server_pid
103104
end
104105

105106
def running?

0 commit comments

Comments
 (0)