diff --git a/test/jupyter-test.el b/test/jupyter-test.el index 02478ec..e0169bb 100644 --- a/test/jupyter-test.el +++ b/test/jupyter-test.el @@ -1870,6 +1870,34 @@ next(x")))))) (defvar org-babel-jupyter-resource-directory nil) +(ert-deftest org-babel-jupyter-parse-session () + :tags '(org) + (require 'ob-jupyter) + (ert-info ("Sessions with a kernel connection file") + (let ((session (org-babel-jupyter-parse-session "/foo/bar.json"))) + (should (org-babel-jupyter-remote-session-p session)) + (should (org-babel-jupyter-remote-session-connect-repl-p session)) + (should (equal (org-babel-jupyter-session-name session) "/foo/bar.json"))) + (let ((session (org-babel-jupyter-parse-session "/ssh:ec2:foo/bar.json"))) + (should (org-babel-jupyter-remote-session-p session)) + (should (org-babel-jupyter-remote-session-connect-repl-p session)) + (should (equal (org-babel-jupyter-session-name session) "/ssh:ec2:foo/bar.json")))) + (ert-info ("Server sessions") + (let ((session (org-babel-jupyter-parse-session "/jpy::foo/bar.json"))) + (should (org-babel-jupyter-server-session-p session)) + (should (equal (org-babel-jupyter-session-name session) "/jpy::foo/bar.json"))) + (let ((session (org-babel-jupyter-parse-session "/jpy::foo/bar"))) + (should (org-babel-jupyter-server-session-p session)) + (should (equal (org-babel-jupyter-session-name session) "/jpy::foo/bar")))) + (ert-info ("Other remote sessions") + (let ((session (org-babel-jupyter-parse-session "/ssh:ec2:foo/bar"))) + (should (org-babel-jupyter-remote-session-p session)) + (should-not (org-babel-jupyter-remote-session-connect-repl-p session)) + (should (equal (org-babel-jupyter-session-name session) "/ssh:ec2:foo/bar")))) + (let ((session (org-babel-jupyter-parse-session "foo/bar"))) + (should (org-babel-jupyter-session-p session)) + (should (equal (org-babel-jupyter-session-name session) "foo/bar")))) + (ert-deftest ob-jupyter-no-results () :tags '(org) (jupyter-org-test-src-block "1 + 1;" ""))