1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49
|
import io
import logging
import pytest
from traitlets import default
from nbclassic.notebookapp import NotebookApp
pytest_plugins = ["jupyter_server.pytest_plugin"]
@pytest.fixture
def nbapp_log():
"""An io stream with the NotebookApp's logging output"""
stream = io.StringIO()
return stream
@pytest.fixture(autouse=True)
def notebookapp_logcapture(monkeypatch, nbapp_log):
""""""
@default('log')
def _log_default(self):
"""Start logging for this application.
The default is to log to stderr using a StreamHandler, if no default
handler already exists. The log level starts at logging.WARN, but this
can be adjusted by setting the ``log_level`` attribute.
"""
log = super(self.__class__, self)._log_default()
_log_handler = logging.StreamHandler(nbapp_log)
_log_formatter = self._log_formatter_cls(
fmt=self.log_format,
datefmt=self.log_datefmt
)
_log_handler.setFormatter(_log_formatter)
log.addHandler(_log_handler)
return log
monkeypatch.setattr(NotebookApp, '_log_default', _log_default)
return _log_default
@pytest.fixture
def jp_server_config():
return {
"ServerApp": {
"jpserver_extensions": {
"nbclassic": True
}
}
}
|