test_detect.py 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. from jupyter_lsp.specs.r_languageserver import RLanguageServer
  2. from jupyter_lsp.specs.utils import PythonModuleSpec
  3. def test_no_detect(manager):
  4. """should not enable anything by default"""
  5. manager.autodetect = False
  6. manager.initialize()
  7. assert not manager.language_servers
  8. assert not manager.sessions
  9. def test_detect(manager):
  10. manager.initialize()
  11. assert len(manager.sessions) == len(manager.language_servers)
  12. def test_r_package_detection():
  13. with_installed_server = RLanguageServer()
  14. assert with_installed_server.is_installed(mgr=None) is True
  15. class NonInstalledRServer(RLanguageServer):
  16. package = "languageserver-fork"
  17. non_installed_server = NonInstalledRServer()
  18. assert non_installed_server.is_installed(mgr=None) is False
  19. def test_missing_python_module_spec():
  20. """Prevent failure in module detection raising error"""
  21. class NonInstalledPythonServer(PythonModuleSpec):
  22. python_module = "not_installed_python_module"
  23. key = "a_module"
  24. not_installed_server = NonInstalledPythonServer()
  25. assert not_installed_server.is_installed(mgr=None) is False
  26. # we ant the spec even when not installed
  27. assert "languages" in not_installed_server(mgr=None)["a_module"]