Add smoke test for root endpoint
Assisted-by: Claude Opus 4.6 via pi
change xunlvlyluxrozpmnsnuqroskzssvlpnw
commit 0f41d54eb811397c6cf8c49811afa86a435d0bb8
author Alpha Chen <alpha@kejadlen.dev>
date
parent svuszqsu
diff --git a/Gemfile b/Gemfile
index ea425a5..3ff8731 100644
--- a/Gemfile
+++ b/Gemfile
@@ -12,6 +12,7 @@ gem "sqlite3"
 
 group :development do
   gem "minitest"
+  gem "rack-test"
   gem "rake"
   gem "rbs-inline", require: false
   gem "steep"
diff --git a/Gemfile.lock b/Gemfile.lock
index e21fb9c..52025ae 100644
--- a/Gemfile.lock
+++ b/Gemfile.lock
@@ -54,6 +54,8 @@ GEM
       nio4r (~> 2.0)
     racc (1.8.1)
     rack (3.2.4)
+    rack-test (2.2.0)
+      rack (>= 1.3)
     rackup (2.3.1)
       rack (>= 3)
     rainbow (3.1.1)
@@ -125,6 +127,7 @@ PLATFORMS
 DEPENDENCIES
   minitest
   puma
+  rack-test
   rackup
   rake
   rbs-inline
@@ -167,6 +170,7 @@ CHECKSUMS
   puma (7.2.0) sha256=bf8ef4ab514a4e6d4554cb4326b2004eba5036ae05cf765cfe51aba9706a72a8
   racc (1.8.1) sha256=4a7f6929691dbec8b5209a0b373bc2614882b55fc5d2e447a21aaa691303d62f
   rack (3.2.4) sha256=5d74b6f75082a643f43c1e76b419c40f0e5527fcfee1e669ac1e6b73c0ccb6f6
+  rack-test (2.2.0) sha256=005a36692c306ac0b4a9350355ee080fd09ddef1148a5f8b2ac636c720f5c463
   rackup (2.3.1) sha256=6c79c26753778e90983761d677a48937ee3192b3ffef6bc963c0950f94688868
   rainbow (3.1.1) sha256=039491aa3a89f42efa1d6dec2fc4e62ede96eb6acd95e52f1ad581182b79bc6a
   rake (13.3.1) sha256=8c9e89d09f66a26a01264e7e3480ec0607f0c497a861ef16063604b1b08eb19c
diff --git a/test/test_web.rb b/test/test_web.rb
new file mode 100644
index 0000000..d305409
--- /dev/null
+++ b/test/test_web.rb
@@ -0,0 +1,19 @@
+# frozen_string_literal: true
+
+require "minitest/autorun"
+require "rack/test"
+
+require_relative "../lib/web"
+
+class TestWeb < Minitest::Test
+  include Rack::Test::Methods
+
+  def app = Web.app
+
+  def test_root_returns_hello_world
+    get "/"
+
+    assert last_response.ok?
+    assert_equal "Hello, World!", last_response.body
+  end
+end