about summary refs log tree commit homepage
path: root/t/cramp/rainsocket.ru
diff options
context:
space:
mode:
Diffstat (limited to 't/cramp/rainsocket.ru')
-rw-r--r--t/cramp/rainsocket.ru26
1 files changed, 26 insertions, 0 deletions
diff --git a/t/cramp/rainsocket.ru b/t/cramp/rainsocket.ru
new file mode 100644
index 0000000..0d26f70
--- /dev/null
+++ b/t/cramp/rainsocket.ru
@@ -0,0 +1,26 @@
+# based on examples/rainsocket.ru git://github.com/lifo/cramp
+# Rack::Lint does not like async + EM stuff, so disable it:
+#\ -E deployment
+require 'cramp/controller'
+
+Cramp::Controller::Websocket.backend = :rainbows
+
+class WelcomeController < Cramp::Controller::Websocket
+  periodic_timer :send_hello_world, :every => 2
+  on_data :received_data
+
+  def received_data(data)
+    if data =~ /fuck/
+      render "You cant say fuck in here"
+      finish
+    else
+      render "Got your #{data}"
+    end
+  end
+
+  def send_hello_world
+    render "Hello from the Server!\n"
+  end
+end
+
+run WelcomeController