Example #1
0
    def test_custom_sigterm_handler(self, _delete_worker, mock_sys):
        """
        Assert that the signal handler installed by the custom_sigterm_handler context manager
        calls the delete_worker cleanup routine with the correct worker name and then exits.
        """
        name = RESOURCE_MANAGER_WORKER_NAME + '@' + platform.node()

        with app.custom_sigterm_handler(name):
            handler = signal.getsignal(signal.SIGTERM)
            self.assertNotEquals(handler, signal.SIG_DFL)

            handler(None, None)

            _delete_worker.assert_called_once_with(name, normal_shutdown=True)
            mock_sys.exit.assert_called_once_with(0)
Example #2
0
    def test_custom_sigterm_handler(self, _delete_worker, mock_sys):
        """
        Assert that the signal handler installed by the custom_sigterm_handler context manager
        calls the delete_worker cleanup routine with the correct worker name and then exits.
        """
        name = RESOURCE_MANAGER_WORKER_NAME + '@' + platform.node()

        with app.custom_sigterm_handler(name):
            handler = signal.getsignal(signal.SIGTERM)
            self.assertNotEquals(handler, signal.SIG_DFL)

            handler(None, None)

            _delete_worker.assert_called_once_with(name, normal_shutdown=True)
            mock_sys.exit.assert_called_once_with(0)
Example #3
0
    def test_custom_sigterm_handler_context_manager(self, _delete_worker, mock_sys):
        """
        Assert that the custom_sigterm_handler context manager properly sets and restores the
        SIGTERM signal handler upon entry and exit.
        """
        handler = signal.getsignal(signal.SIGTERM)
        self.assertEquals(handler, signal.SIG_DFL)

        name = RESOURCE_MANAGER_WORKER_NAME + '@' + platform.node()

        with app.custom_sigterm_handler(name):
            handler = signal.getsignal(signal.SIGTERM)
            handler(None, None)

        handler = signal.getsignal(signal.SIGTERM)
        self.assertEquals(handler, signal.SIG_DFL)
Example #4
0
    def test_custom_sigterm_handler_context_manager(self, _delete_worker,
                                                    mock_sys):
        """
        Assert that the custom_sigterm_handler context manager properly sets and restores the
        SIGTERM signal handler upon entry and exit.
        """
        handler = signal.getsignal(signal.SIGTERM)
        self.assertEquals(handler, signal.SIG_DFL)

        name = RESOURCE_MANAGER_WORKER_NAME + '@' + platform.node()

        with app.custom_sigterm_handler(name):
            handler = signal.getsignal(signal.SIGTERM)
            handler(None, None)

        handler = signal.getsignal(signal.SIGTERM)
        self.assertEquals(handler, signal.SIG_DFL)