コード例 #1
0
    def test_good_json_no_channel(self, dummy_request):
        from channelstream.wsgi_views.server import message, messages_patch

        server_state = get_state()
        channel = Channel("test")
        channel.store_history = True
        server_state.channels[channel.name] = channel
        msg_payload = {"user": "******", "channel": "test", "message": {"text": "test"}}
        dummy_request.json_body = [msg_payload]
        message(dummy_request)
        # change context
        gevent.sleep(0)
        msg = channel.history[0]
        assert msg["message"] == msg_payload["message"]
        edit_payload = {
            "uuid": msg["uuid"],
            "user": "******",
            "channel": "test",
            "timestamp": "2010-01-01T01:01",
            "edited": "2010-01-01T01:02",
            "message": {"text": "edited_message"},
        }
        dummy_request.json_body = [edit_payload]
        response = messages_patch(dummy_request)[0]
        gevent.sleep(0)
        assert msg["user"] == response["user"]
        assert msg["message"] == response["message"]
        assert msg["edited"] == response["edited"]
        assert msg["timestamp"] == response["timestamp"]
        frame = channel.frames[0][1]
        assert id(frame) == id(msg)
        assert frame["user"] == response["user"]
        assert frame["message"] == response["message"]
        assert frame["edited"] == response["edited"]
        assert frame["timestamp"] == response["timestamp"]
コード例 #2
0
    def test_good_json_no_channel(self, dummy_request):
        from channelstream.wsgi_views.server import message

        server_state = get_state()
        channel = Channel("test")
        channel.store_history = True
        server_state.channels[channel.name] = channel
        msg_payload = {
            "type": "message",
            "user": "******",
            "channel": "test",
            "message": {"text": "test"},
        }

        dummy_request.json_body = [msg_payload]
        assert server_state.stats["total_unique_messages"] == 0
        assert len(channel.history) == 0
        message(dummy_request)
        # change context
        gevent.sleep(0)
        assert server_state.stats["total_unique_messages"] == 1
        assert len(channel.history) == 1
        msg = channel.history[0]
        assert msg["uuid"] is not None
        assert msg["user"] == msg_payload["user"]
        assert msg["message"] == msg_payload["message"]
        assert msg["type"] == msg_payload["type"]
        assert msg["channel"] == msg_payload["channel"]
        assert msg["timestamp"] is not None
コード例 #3
0
    def test_good_json_no_channel(self, dummy_request):
        from channelstream.wsgi_views.server import message, messages_delete

        server_state = get_state()
        channel = Channel("test")
        channel.store_history = True
        server_state.channels[channel.name] = channel
        msg_payload = {
            "user": "******",
            "channel": "test",
            "message": {
                "text": "test"
            }
        }
        dummy_request.json_body = [msg_payload]
        message(dummy_request)
        # change context
        gevent.sleep(0)
        msg = channel.history[0]
        assert msg["message"] == msg_payload["message"]
        dummy_request.json_body = [{
            "uuid": str(msg["uuid"]),
            "channel": "test"
        }]
        response = messages_delete(dummy_request)
        gevent.sleep(0)
        assert response[0]["uuid"] == msg["uuid"]
        assert len(channel.history) == 0
        assert len(channel.frames) == 1
        assert channel.frames[0][1]["type"] == "message:delete"
コード例 #4
0
    def test_good_json_no_channel(self, dummy_request):
        from channelstream.wsgi_views.server import message

        server_state = get_state()
        channel = Channel("test")
        channel.store_history = True
        server_state.channels[channel.name] = channel
        msg_payload = {
            "type": "message",
            "user": "******",
            "channel": "test",
            "message": {
                "text": "test"
            },
        }

        dummy_request.json_body = [msg_payload]
        assert server_state.stats["total_unique_messages"] == 0
        assert len(channel.history) == 0
        message(dummy_request)
        # change context
        gevent.sleep(0)
        assert server_state.stats["total_unique_messages"] == 1
        assert len(channel.history) == 1
        msg = channel.history[0]
        assert msg["uuid"] is not None
        assert msg["user"] == msg_payload["user"]
        assert msg["message"] == msg_payload["message"]
        assert msg["type"] == msg_payload["type"]
        assert msg["channel"] == msg_payload["channel"]
        assert msg["timestamp"] is not None
コード例 #5
0
    def test_good_json_no_channel(self, dummy_request):
        from channelstream.wsgi_views.server import message, messages_patch

        server_state = get_state()
        channel = Channel("test")
        channel.store_history = True
        server_state.channels[channel.name] = channel
        msg_payload = {
            "user": "******",
            "channel": "test",
            "message": {
                "text": "test"
            }
        }
        dummy_request.json_body = [msg_payload]
        message(dummy_request)
        # change context
        gevent.sleep(0)
        msg = channel.history[0]
        assert msg["message"] == msg_payload["message"]
        edit_payload = {
            "uuid": msg["uuid"],
            "user": "******",
            "channel": "test",
            "timestamp": "2010-01-01T01:01",
            "edited": "2010-01-01T01:02",
            "message": {
                "text": "edited_message"
            },
        }
        dummy_request.json_body = [edit_payload]
        response = messages_patch(dummy_request)[0]
        gevent.sleep(0)
        assert msg["user"] == response["user"]
        assert msg["message"] == response["message"]
        assert msg["edited"] == response["edited"]
        assert msg["timestamp"] == response["timestamp"]
        frame = channel.frames[0][1]
        assert id(frame) == id(msg)
        assert frame["user"] == response["user"]
        assert frame["message"] == response["message"]
        assert frame["edited"] == response["edited"]
        assert frame["timestamp"] == response["timestamp"]
コード例 #6
0
    def test_good_json_no_channel(self, dummy_request):
        from channelstream.wsgi_views.server import message, messages_delete

        server_state = get_state()
        channel = Channel("test")
        channel.store_history = True
        server_state.channels[channel.name] = channel
        msg_payload = {"user": "******", "channel": "test", "message": {"text": "test"}}
        dummy_request.json_body = [msg_payload]
        message(dummy_request)
        # change context
        gevent.sleep(0)
        msg = channel.history[0]
        assert msg["message"] == msg_payload["message"]
        dummy_request.json_body = [{"uuid": str(msg["uuid"]), "channel": "test"}]
        response = messages_delete(dummy_request)
        gevent.sleep(0)
        assert response[0]["uuid"] == msg["uuid"]
        assert len(channel.history) == 0
        assert len(channel.frames) == 1
        assert channel.frames[0][1]["type"] == "message:delete"