diff --git a/app/colmark/routes/document.py b/app/colmark/routes/document.py index 5eca28d..272e533 100644 --- a/app/colmark/routes/document.py +++ b/app/colmark/routes/document.py @@ -6,12 +6,12 @@ @socketio.on('connect', namespace=DOCUMENT_NAMESPACE) -def mouse_connect(): +def on_connect(): print('Client connected') @socketio.on('disconnect', namespace=DOCUMENT_NAMESPACE) -def test_disconnect(): +def on_disconnect(): print('Client disconnected') @@ -20,6 +20,12 @@ def handle_message(message): print('MSG: %s' % message) +@socketio.on('echo', namespace=DOCUMENT_NAMESPACE) +def handle_echo(message): + print('ECHO: %s' % message) + emit('echo', 'This was your message: %s' % message) + + @socketio.on('add', namespace=DOCUMENT_NAMESPACE) def handle_add(data): print('Add: %s' % data) diff --git a/app/colmark/tests/__init__.py b/app/colmark/tests/__init__.py new file mode 100644 index 0000000..e69de29 diff --git a/app/colmark/tests/base_test_case.py b/app/colmark/tests/base_test_case.py new file mode 100644 index 0000000..2d70336 --- /dev/null +++ b/app/colmark/tests/base_test_case.py @@ -0,0 +1,12 @@ +import unittest + +__author__ = 'cansik' + + +class BaseTestCase(unittest.TestCase): + + def setUp(self): + pass + + def tearDown(self): + pass diff --git a/app/colmark/tests/document_sync_test.py b/app/colmark/tests/document_sync_test.py new file mode 100644 index 0000000..cd8f4ed --- /dev/null +++ b/app/colmark/tests/document_sync_test.py @@ -0,0 +1,41 @@ +import unittest + +from socketIO_client import SocketIO, BaseNamespace, LoggingNamespace +from base_test_case import BaseTestCase +from colmark import config +from colmark.routes.document import DOCUMENT_NAMESPACE + +__author__ = 'cansik' + + +class DocumentNamespace(LoggingNamespace): + _connected = True + + def on_connect(self): + print('connected') + + def on_error(self, data): + print('error') + + def on_echo_response(self, *args): + print('echo_response', args) + + +class DocumentSyncTest(BaseTestCase): + def setUp(self): + super(DocumentSyncTest, self).setUp() + self.client = SocketIO('localhost', config.SERVER_PORT, DocumentNamespace) + self.doc = self.client.define(DocumentNamespace, DOCUMENT_NAMESPACE) + + def tearDown(self): + super(DocumentSyncTest, self).tearDown() + self.client.disconnect() + + def test_single_client(self): + self.doc.emit('echo', 'hello world') + print('sent echo') + self.client.wait(seconds=1) + + +if __name__ == '__main__': + unittest.main() diff --git a/input.html b/input.html new file mode 100644 index 0000000..c185335 --- /dev/null +++ b/input.html @@ -0,0 +1,154 @@ + + + + + + + +
+
+
+
+ Hello World +
+ +