def run_destroy_kernel(kid): if kid is not None: begin = time.monotonic() destroy_kernel(kid) end = time.monotonic() return end - begin return None
def test_destroy_kernel_raises_err_with_abnormal_status(mocker): mock_req_obj = mock.Mock() mock_req_obj.send.return_value = mock.MagicMock(status=400) mocker.patch('ai.backend.client.kernel.Request', return_value=mock_req_obj) kernel_id = token_hex(12) with pytest.raises(BackendAPIError): destroy_kernel(kernel_id)
def test_destroy_kernel_url(mocker): mock_req_obj = mock.Mock() mock_req_obj.send.return_value = mock.MagicMock(status=204) mock_req = mocker.patch('ai.backend.client.kernel.Request', return_value=mock_req_obj) kernel_id = token_hex(12) destroy_kernel(kernel_id) mock_req.assert_called_once_with('DELETE', '/kernel/{}'.format(kernel_id)) mock_req_obj.send.assert_called_once_with()
def test_kernel_lifecycles(defconfig): kernel_id = create_kernel('python3') info = get_kernel_info(kernel_id) assert info['lang'] == 'python3' assert info['age'] > 0 assert info['numQueriesExecuted'] == 0 info = get_kernel_info(kernel_id) assert info['numQueriesExecuted'] == 1 destroy_kernel(kernel_id) # kernel destruction is no longer synchronous! time.sleep(2.0) with pytest.raises(BackendAPIError) as e: info = get_kernel_info(kernel_id) assert e.value.args[0] == 404
def py3_kernel(): kernel_id = create_kernel('python3') yield kernel_id destroy_kernel(kernel_id)