コード例 #1
0
ファイル: test_chat_handler.py プロジェクト: sbuss/qotr
    def test_part(self):
        channel = Channels.get(self.channel_id)
        self.assertEqual(0, len(channel.clients))

        c1 = yield self._mk_client('foo')
        c2 = yield self._mk_client('bar')
        yield c1.read_message()  # C2's join

        c2.close()
        response = yield c1.read_message()

        self.assertEqual(
            {
                'sender': c2.config['id'],
                'kind': 'part',
                'body': None
            }, json.loads(response))

        c1.close()

        # Wait for the channel to be removed.
        yield gen.sleep(0.001)

        with self.assertRaises(ChannelDoesNotExist):
            Channels.get(self.channel_id)
コード例 #2
0
ファイル: test_chat_handler.py プロジェクト: sbuss/qotr
    def test_join(self):
        channel = Channels.get(self.channel_id)
        self.assertEqual(0, len(channel.clients))

        c1 = yield self._mk_client('foo')
        yield self._mk_client('bar')
        yield c1.read_message()  # C2's join

        self.assertEqual(2, len(channel.clients))
コード例 #3
0
ファイル: test_chat_handler.py プロジェクト: rmoorman/qotr
    def test_join(self):
        channel = Channels.get(self.channel_id)
        self.assertEqual(0, len(channel.clients))

        c1 = yield self._mk_client('foo')
        yield self._mk_client('bar')
        yield c1.read_message() # C2's join

        self.assertEqual(2, len(channel.clients))
コード例 #4
0
ファイル: test_chat_handler.py プロジェクト: rmoorman/qotr
    def test_nick(self):
        channel = Channels.get(self.channel_id)
        nick_1 = 'foo'
        nick_2 = 'bar'

        c1 = yield self._mk_client(nick_1)
        yield self._mk_client(nick_2)
        yield c1.read_message() # C2's join

        self.assertEqual({nick_1, nick_2}, set(channel.members.values()))
コード例 #5
0
ファイル: test_chat_handler.py プロジェクト: sbuss/qotr
    def test_nick(self):
        channel = Channels.get(self.channel_id)
        nick_1 = 'foo'
        nick_2 = 'bar'

        c1 = yield self._mk_client(nick_1)
        yield self._mk_client(nick_2)
        yield c1.read_message()  # C2's join

        self.assertEqual({nick_1, nick_2}, set(channel.members.values()))
コード例 #6
0
ファイル: test_chat_handler.py プロジェクト: rmoorman/qotr
    def test_ping(self):
        channel = Channels.get(self.channel_id)
        self.assertEqual(0, len(channel.clients))

        c = yield self._mk_client('foo')
        send(c, m('ping'))
        response = yield c.read_message()

        self.assertEqual({
            "kind": "pong",
            "body": None,
            "sender": None
        }, json.loads(response))
コード例 #7
0
ファイル: test_chat_handler.py プロジェクト: sbuss/qotr
    def test_ping(self):
        channel = Channels.get(self.channel_id)
        self.assertEqual(0, len(channel.clients))

        c = yield self._mk_client('foo')
        send(c, m('ping'))
        response = yield c.read_message()

        self.assertEqual({
            "kind": "pong",
            "body": None,
            "sender": None
        }, json.loads(response))
コード例 #8
0
ファイル: chat.py プロジェクト: sbuss/qotr
 def open(self, channel_id):
     self.channel_id = channel_id
     try:
         self.channel = Channels.get(self.channel_id)
         self.id = self.channel.new_id()
         # Tell the user their id and the channel's meta data.
         Message(MT.config, body={
             "id": self.id,
             "meta": self.channel.meta
         }).send(self)
         self.channel.connections += 1
     except ChannelDoesNotExist:
         self.respond_with_error("Channel does not exist.")
         self.close()
コード例 #9
0
ファイル: chat.py プロジェクト: rmoorman/qotr
 def open(self, channel_id):
     self.channel_id = channel_id
     try:
         self.channel = Channels.get(self.channel_id)
         self.id = self.channel.new_id()
         # Tell the user their id and the channel's meta data.
         Message(MT.config, body={
             "id": self.id,
             "meta": self.channel.meta
         }).send(self)
         self.channel.connections += 1
     except ChannelDoesNotExist:
         self.respond_with_error("Channel does not exist.")
         self.close()
コード例 #10
0
ファイル: test_chat_handler.py プロジェクト: rmoorman/qotr
    def test_nick_change(self):
        channel = Channels.get(self.channel_id)
        self.assertEqual(0, len(channel.clients))

        c1 = yield self._mk_client('foo')
        c2 = yield self._mk_client('bar')

        send(c1, m('nick', 'foo-new'))
        response = yield c2.read_message()

        self.assertEqual({
            "kind": "nick",
            "body": "foo-new",
            "sender": c1.config['id']
        }, json.loads(response))
コード例 #11
0
ファイル: test_chat_handler.py プロジェクト: rmoorman/qotr
    def test_part(self):
        channel = Channels.get(self.channel_id)
        self.assertEqual(0, len(channel.clients))

        c1 = yield self._mk_client('foo')
        c2 = yield self._mk_client('bar')
        yield c1.read_message() # C2's join

        c2.close()
        response = yield c1.read_message()

        self.assertEqual({
            'sender': c2.config['id'],
            'kind': 'part',
            'body': None
        }, json.loads(response))

        c1.close()

        # Wait for the channel to be removed.
        yield gen.sleep(0.001)

        with self.assertRaises(ChannelDoesNotExist):
            Channels.get(self.channel_id)
コード例 #12
0
ファイル: test_chat_handler.py プロジェクト: rmoorman/qotr
    def test_chat(self):
        channel = Channels.get(self.channel_id)
        self.assertEqual(0, len(channel.clients))

        c1 = yield self._mk_client('foo')
        c2 = yield self._mk_client('bar')
        yield c1.read_message() # C2's join

        send(c1, m('chat', 'hey!'))
        response = yield c2.read_message()

        self.assertEqual({
            'sender': c1.config['id'],
            'kind': 'chat',
            'body': 'hey!'
        }, json.loads(response))
コード例 #13
0
ファイル: test_chat_handler.py プロジェクト: sbuss/qotr
    def test_nick_change(self):
        channel = Channels.get(self.channel_id)
        self.assertEqual(0, len(channel.clients))

        c1 = yield self._mk_client('foo')
        c2 = yield self._mk_client('bar')

        send(c1, m('nick', 'foo-new'))
        response = yield c2.read_message()

        self.assertEqual(
            {
                "kind": "nick",
                "body": "foo-new",
                "sender": c1.config['id']
            }, json.loads(response))
コード例 #14
0
    def test_create(self):
        meta = "common"
        channel_id = "test-channel"

        body = "&".join([
            "id={channel_id}",
            "meta={meta}",
        ]).format(**locals())

        response = json.loads(
            self.fetch('/channels/new', method='POST',
                       body=body).body.decode('utf8'))

        self.assertEqual({"meta": meta, "id": channel_id}, response)

        channel = Channels.get(channel_id)
        self.assertEqual(meta, channel.meta)
コード例 #15
0
ファイル: test_chat_handler.py プロジェクト: sbuss/qotr
    def test_chat(self):
        channel = Channels.get(self.channel_id)
        self.assertEqual(0, len(channel.clients))

        c1 = yield self._mk_client('foo')
        c2 = yield self._mk_client('bar')
        yield c1.read_message()  # C2's join

        send(c1, m('chat', 'hey!'))
        response = yield c2.read_message()

        self.assertEqual(
            {
                'sender': c1.config['id'],
                'kind': 'chat',
                'body': 'hey!'
            }, json.loads(response))
コード例 #16
0
ファイル: test_channel_handler.py プロジェクト: rmoorman/qotr
    def test_create(self):
        meta = "common"
        channel_id = "test-channel"

        body = "&".join([
            "id={channel_id}",
            "meta={meta}",
        ]).format(**locals())

        response = json.loads(self.fetch(
            '/channels/new', method='POST',
            body=body
        ).body.decode('utf8'))

        self.assertEqual({
            "meta": meta,
            "id": channel_id
        }, response)

        channel = Channels.get(channel_id)
        self.assertEqual(meta, channel.meta)
コード例 #17
0
ファイル: test_channels.py プロジェクト: sbuss/qotr
 def test_create(self):
     Channels.create(self.channel_id, self.meta)
     channel = Channels.get(self.channel_id)
     self.assertEqual(self.meta, channel.meta)
コード例 #18
0
ファイル: test_channels.py プロジェクト: sbuss/qotr
 def test_does_not_exist(self):
     with self.assertRaises(ChannelDoesNotExist):
         Channels.get(self.channel_id)