Cover the Ruby weather server in the smoke tests

The server was excluded because the mcp gem did not stamp the resultType
field that 2026-07-28 requires, so the test client rejected its responses.
mcp 1.2.0 stamps it. Gemfile.lock is gitignored, so a fresh bundle install
resolves the existing ">= 1.1.0" to 1.2.0 with no manifest change.

Observed against the built test client: on 1.1.0 the run fails with
"missing required resultType"; on 1.2.0 it connects and lists both tools.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
olaservo 2026-08-19 17:11:37 -07:00
commit d9005ebe03

View file

@ -88,6 +88,15 @@ test_weather_server_go() {
# and exits. Empty rather than unset: dotenv skips a name already present in
# ENV, so a key in the environment or a local .env would start the chat loop.
# Test: Ruby weather server
test_weather_server_ruby() {
check_dependency ruby || return 1
check_dependency bundle || return 1
local server_dir="${PROJECT_ROOT}/weather-server-ruby"
ensure_bundled "${server_dir}" || return 1
(cd "${server_dir}" && node "${TEST_CLIENT}" bundle exec ruby weather.rb)
}
# Test: Python MCP client
test_mcp_client_python() {
check_dependency uv || return 1
@ -119,14 +128,13 @@ test_mcp_client_ruby() {
# is present, so they cannot be driven without credentials. Making them start
# credential-free is a change in their own directories, so their coverage lands
# with those changes rather than here.
#
# Nor is the Ruby weather server: the mcp gem does not stamp the resultType
# field that 2026-07-28 requires, so the test client rejects its responses.
print_header "Running smoke tests"
run_test "weather-server-python" test_weather_server_python
run_test "weather-server-typescript" test_weather_server_typescript
run_test "weather-server-rust" test_weather_server_rust
run_test "weather-server-go" test_weather_server_go
run_test "weather-server-ruby" test_weather_server_ruby
run_test "mcp-client-python" test_mcp_client_python
run_test "mcp-client-typescript" test_mcp_client_typescript
run_test "mcp-client-ruby" test_mcp_client_ruby