about summary refs log tree commit homepage
path: root/test/test_ws.rb
diff options
context:
space:
mode:
Diffstat (limited to 'test/test_ws.rb')
-rw-r--r--test/test_ws.rb33
1 files changed, 33 insertions, 0 deletions
diff --git a/test/test_ws.rb b/test/test_ws.rb
new file mode 100644
index 0000000..dd7fa77
--- /dev/null
+++ b/test/test_ws.rb
@@ -0,0 +1,33 @@
+require 'test/unit'
+require 'net/http'
+require 'mongrel'
+require 'timeout'
+
+include Mongrel;
+
+class TestHandler < Mongrel::HttpHandler
+    attr_reader :ran_test
+    
+    def process(request, response)
+        @ran_test = true
+        response.socket.write("HTTP/1.1 200 OK\r\nContent-Type: text/plain\r\n\r\nhello!\n")
+    end
+end
+                
+
+class WSTest < Test::Unit::TestCase
+
+    def test_simple_server
+        h = HttpServer.new("0.0.0.0", 9998)
+        tester = TestHandler.new
+        h.register("/test", tester)
+        h.run
+
+        sleep(1)
+        res = Net::HTTP.get(URI.parse('http://localhost:9998/test'))
+        assert res != nil, "Didn't get a response"
+        assert tester.ran_test, "Handler didn't really run"
+    end
+
+end
+