Merge branch 'refactor-kernel-start'

Better error message when kernel_id or ws_url cannot be fetched from
server.

see: #85
This commit is contained in:
Takafumi Arakaki 2012-12-04 14:24:09 +01:00
commit 08513c37bf
3 changed files with 19 additions and 11 deletions

View file

@ -132,13 +132,16 @@
(defun* ein:kernel--kernel-started (kernel &key data &allow-other-keys)
(ein:log 'info "Kernel started: %s" (plist-get data :kernel_id))
(setf (ein:$kernel-running kernel) t)
(setf (ein:$kernel-kernel-id kernel) (plist-get data :kernel_id))
(setf (ein:$kernel-ws-url kernel) (plist-get data :ws_url))
(setf (ein:$kernel-kernel-url kernel)
(concat (ein:$kernel-base-url kernel) "/"
(ein:$kernel-kernel-id kernel)))
(destructuring-bind (&key kernel_id ws_url &allow-other-keys) data
(unless (and kernel_id ws_url)
(error "Failed to start kernel. No `kernel_id' or `ws_url'. Got %S."
data))
(ein:log 'info "Kernel started: %s" kernel_id)
(setf (ein:$kernel-running kernel) t)
(setf (ein:$kernel-kernel-id kernel) kernel_id)
(setf (ein:$kernel-ws-url kernel) ws_url)
(setf (ein:$kernel-kernel-url kernel)
(concat (ein:$kernel-base-url kernel) "/" kernel_id)))
(ein:kernel-start-channels kernel)
(let ((shell-channel (ein:$kernel-shell-channel kernel))
(iopub-channel (ein:$kernel-iopub-channel kernel)))

View file

@ -188,10 +188,12 @@ then kill the current buffer."
(timeout nil)
(status-code nil)
&allow-other-keys)
(declare (special url-http-response-status))
(declare (special url-http-method
url-http-response-status))
(ein:log 'debug "EIN:QUERY-AJAX-CALLBACK")
(ein:log 'debug "status = %S" status)
(ein:log 'debug "url-http-method = %s" url-http-method)
(ein:log 'debug "url-http-response-status = %s" url-http-response-status)
(ein:log 'debug "(buffer-string) =\n%s" (buffer-string))

View file

@ -31,7 +31,8 @@
(ein:kernel-stop-channels (&rest ignore))
(ein:websocket (&rest ignore) (make-ein:$websocket))
(ein:events-trigger (&rest ignore)))
(ein:kernel--kernel-started kernel :data (list :kernel_id kernel-id))
(ein:kernel--kernel-started
kernel :data (list :ws_url "ws://127.0.0.1:8888" :kernel_id kernel-id))
(ein:kernel-restart kernel)
(should (equal got-url desired-url)))))
@ -46,7 +47,8 @@
(set-process-query-on-exit-flag (process flag))
(ein:kernel-stop-channels (&rest ignore))
(ein:websocket (&rest ignore) (make-ein:$websocket)))
(ein:kernel--kernel-started kernel :data (list :kernel_id kernel-id))
(ein:kernel--kernel-started
kernel :data (list :ws_url "ws://127.0.0.1:8888" :kernel_id kernel-id))
(ein:kernel-interrupt kernel)
(should (equal got-url desired-url)))))
@ -60,7 +62,8 @@
(set-process-query-on-exit-flag (process flag))
(ein:kernel-stop-channels (&rest ignore))
(ein:websocket (&rest ignore) (make-ein:$websocket)))
(ein:kernel--kernel-started kernel :data (list :kernel_id kernel-id))
(ein:kernel--kernel-started
kernel :data (list :ws_url "ws://127.0.0.1:8888" :kernel_id kernel-id))
(ein:kernel-kill kernel)
(let* ((l (split-string got-url "?"))
(got-url-0 (nth 0 l))