Exemplo n.º 1
0
  def test_transmit(self, init):
    m = MemoryStorage()
    m._store = MagicMock()

    m.cancer()

    m._store.cancer.assert_called_once_with()
Exemplo n.º 2
0
    def test_transmit(self, init):
        m = MemoryStorage()
        m._store = MagicMock()

        m.cancer()

        m._store.cancer.assert_called_once_with()
Exemplo n.º 3
0
  def test_transmit(self, init):
    m = MemoryStorage()
    m._store = MagicMock()

    channel = "forsenlol"
    message = "message"
    m.store(channel, message)

    m._store.store.assert_called_once_with(channel, message)
Exemplo n.º 4
0
    def test_transmit(self, init):
        m = MemoryStorage()
        m._store = MagicMock()

        channel = "forsenlol"
        message = "message"
        m.store(channel, message)

        m._store.store.assert_called_once_with(channel, message)
Exemplo n.º 5
0
  def test_splitting(self, init):
    m = MemoryStorage()
    m._store = MagicMock()
    m._store.archive = MagicMock(return_value={
      'date1': {'foo': {'cancer': 0, 'messages': 0}, 'bar': {'cancer': 0, 'messages': 0}},
      'date2': {'foo': {'cancer': 0, 'messages': 0}, 'bar': {'cancer': 0, 'messages': 0}},
    })

    m.pubsub_socket = MagicMock()

    m._archive()

    self.assertEqual(m.pubsub_socket.send_multipart.call_count, 4)
Exemplo n.º 6
0
    def store(self, channel, cancer):
        # messages are stored in-memory only
        if not self.storage:
            from twitchcancer.storage.memorystorage import MemoryStorage
            self.storage = MemoryStorage()

        self.storage.store(channel, cancer)
Exemplo n.º 7
0
    def test_not_implemented(self, init):
        m = MemoryStorage()

        self.assertRaises(NotImplementedError, lambda: m.leaderboards(None))
        self.assertRaises(NotImplementedError, lambda: m.leaderboard(None))
        self.assertRaises(NotImplementedError, lambda: m.channel(None))
        self.assertRaises(NotImplementedError, lambda: m.status())
        self.assertRaises(NotImplementedError, lambda: m.search(None))
Exemplo n.º 8
0
  def test_default(self, init):
    m = MemoryStorage()
    m._store = MagicMock()
    m._store.cancer = MagicMock(return_value="data")
    m.cancer_socket = MagicMock()
    m.cancer_socket.send_pyobj = MagicMock(side_effect=KeyboardInterrupt)

    try:
      m._handle_cancer_request()
    except KeyboardInterrupt:
      # the mock raises an exception to get out of the infinite loop
      pass

    # we should be listening for requests
    m.cancer_socket.recv.assert_called_once_with()

    # we should get data from the store
    m._store.cancer.assert_called_once_with()

    # we should respond to the request with the data we got
    m.cancer_socket.send_pyobj.assert_called_once_with("data")
Exemplo n.º 9
0
    def test_splitting(self, init):
        m = MemoryStorage()
        m._store = MagicMock()
        m._store.archive = MagicMock(
            return_value={
                'date1': {
                    'foo': {
                        'cancer': 0,
                        'messages': 0
                    },
                    'bar': {
                        'cancer': 0,
                        'messages': 0
                    }
                },
                'date2': {
                    'foo': {
                        'cancer': 0,
                        'messages': 0
                    },
                    'bar': {
                        'cancer': 0,
                        'messages': 0
                    }
                },
            })

        m.pubsub_socket = MagicMock()

        m._archive()

        self.assertEqual(m.pubsub_socket.send_multipart.call_count, 4)
Exemplo n.º 10
0
  def test_not_implemented(self, init):
    m = MemoryStorage()

    self.assertRaises(NotImplementedError, lambda: m.leaderboards(None))
    self.assertRaises(NotImplementedError, lambda: m.leaderboard(None))
    self.assertRaises(NotImplementedError, lambda: m.channel(None))
    self.assertRaises(NotImplementedError, lambda: m.status())
    self.assertRaises(NotImplementedError, lambda: m.search(None))
Exemplo n.º 11
0
  def test_formatting(self, init):
    m = MemoryStorage()
    m._store = MagicMock()
    m._store.archive = MagicMock(return_value={
        'foo': {
          'bar': {
            'cancer': 10,
            'messages': 20
          }
        }
    })

    m.pubsub_socket = MagicMock()

    m._archive()

    pickled = m.pubsub_socket.send_multipart.call_args[0][0][1]

    self.assertEqual(pickle.loads(pickled), {
      'date': 'foo',
      'channel': 'bar',
      'cancer': 10,
      'messages': 20
    })
Exemplo n.º 12
0
    def test_default(self, init):
        m = MemoryStorage()
        m._store = MagicMock()
        m._store.cancer = MagicMock(return_value="data")
        m.cancer_socket = MagicMock()
        m.cancer_socket.send_pyobj = MagicMock(side_effect=KeyboardInterrupt)

        try:
            m._handle_cancer_request()
        except KeyboardInterrupt:
            # the mock raises an exception to get out of the infinite loop
            pass

        # we should be listening for requests
        m.cancer_socket.recv.assert_called_once_with()

        # we should get data from the store
        m._store.cancer.assert_called_once_with()

        # we should respond to the request with the data we got
        m.cancer_socket.send_pyobj.assert_called_once_with("data")
Exemplo n.º 13
0
    def test_formatting(self, init):
        m = MemoryStorage()
        m._store = MagicMock()
        m._store.archive = MagicMock(
            return_value={'foo': {
                'bar': {
                    'cancer': 10,
                    'messages': 20
                }
            }})

        m.pubsub_socket = MagicMock()

        m._archive()

        pickled = m.pubsub_socket.send_multipart.call_args[0][0][1]

        self.assertEqual(pickle.loads(pickled), {
            'date': 'foo',
            'channel': 'bar',
            'cancer': 10,
            'messages': 20
        })