def testSimulateMemoryPressureNotificationFailure(self):
        response_handler = mock.Mock()
        backend = memory_backend.MemoryBackend(self._inspector_socket)
        self._inspector_socket.AddResponseHandler(
            'Memory.simulatePressureNotification', response_handler)

        # If the DevTools method is missing, the backend should fail silently.
        response_handler.return_value = {
            'result': {},
            'error': {
                'code': -32601  # Method does not exist.
            }
        }
        backend.SimulateMemoryPressureNotification('critical')
        self.assertEqual(1, response_handler.call_count)

        # All other errors should raise an exception.
        response_handler.return_value = {
            'result': {},
            'error': {
                'code': -32602  # Invalid method params.
            }
        }
        self.assertRaises(memory_backend.MemoryUnexpectedResponseException,
                          backend.SimulateMemoryPressureNotification,
                          'critical')
Exemplo n.º 2
0
    def testSetMemoryPressureNotificationsSuppressedSuccess(self):
        response_handler = mock.Mock(return_value={'result': {}})
        self._inspector_socket.AddResponseHandler(
            'Memory.setPressureNotificationsSuppressed', response_handler)
        backend = memory_backend.MemoryBackend(self._inspector_socket)

        backend.SetMemoryPressureNotificationsSuppressed(True)
        self.assertEqual(1, response_handler.call_count)
        self.assertTrue(
            response_handler.call_args[0][0]['params']['suppressed'])

        backend.SetMemoryPressureNotificationsSuppressed(False)
        self.assertEqual(2, response_handler.call_count)
        self.assertFalse(
            response_handler.call_args[0][0]['params']['suppressed'])
Exemplo n.º 3
0
    def testSimulateMemoryPressureNotificationSuccess(self):
        response_handler = mock.Mock(return_value={'result': {}})
        self._inspector_socket.AddResponseHandler(
            'Memory.simulatePressureNotification', response_handler)
        backend = memory_backend.MemoryBackend(self._inspector_socket)

        backend.SimulateMemoryPressureNotification('critical')
        self.assertEqual(1, response_handler.call_count)
        self.assertEqual('critical',
                         response_handler.call_args[0][0]['params']['level'])

        backend.SimulateMemoryPressureNotification('moderate')
        self.assertEqual(2, response_handler.call_count)
        self.assertEqual('moderate',
                         response_handler.call_args[0][0]['params']['level'])
Exemplo n.º 4
0
 def _CreateMemoryBackendIfNeeded(self):
   assert self.supports_overriding_memory_pressure_notifications
   if not self._memory_backend:
     self._memory_backend = memory_backend.MemoryBackend(
         self._browser_websocket)
Exemplo n.º 5
0
 def _CreateMemoryBackendIfNeeded(self):
     assert self.supports_overriding_memory_pressure_notifications
     if not self._memory_backend:
         self._CreateAndConnectBrowserInspectorWebsocketIfNeeded()
         self._memory_backend = memory_backend.MemoryBackend(
             self._browser_inspector_websocket)