pytest-notebook icon indicating copy to clipboard operation
pytest-notebook copied to clipboard

Support for in-kernel patching?

Open cpascual opened this issue 3 years ago • 1 comments

In some of my notebooks, a given function call takes long time to return, making tests unpractical. That is why I would like to be able to patch that function in the kernel with a mock.

I tried using the hooks provided by nbclient: on_notebook_start, etc. but they are not run in the kernel and therefore I cannot patch stuff there.

Is there some way of running code in the kernel prior to executing a notebook?

Alternatively: I see that testbook supports in-kernel patching. Since both testbook's TestbookNotebookClient and pytest_notebook's CoverageNotebookClient inherit from nbclient's NotebookClient, do you think that pytest-notebook could "borrow" the implementation from TestbookNotebookClient?

cpascual avatar Jun 30 '22 14:06 cpascual

Hi. We also used testbook the other day, for the same reasons to run a few lines of in-kernel patching.

  • https://github.com/crate-workbench/cratedb-toolkit/pull/81#discussion_r1399820423

amotl avatar Feb 05 '24 10:02 amotl