Skip to content

Instantly share code, notes, and snippets.

@kcramer
Last active July 26, 2018 21:21
Show Gist options
  • Save kcramer/6f3ba4df98d272ff4fbe7608d841d4b9 to your computer and use it in GitHub Desktop.
Save kcramer/6f3ba4df98d272ff4fbe7608d841d4b9 to your computer and use it in GitHub Desktop.
Log for Failed jupyterlab Travis CI build on 2018-07-26
Starting instance
✓ selected image "travis-ci-garnet-trusty-1512502259-986baf0"
✓ rendered startup script
✓ inserted instance
• sleeping 25s before checking instance insert
• polling for instance insert completion...
✓ instance is ready (26.34s)
step_upload_script
Uploading script
• waiting for ssh connectivity...
✓ ssh connectivity established (292ms)
✓ uploaded script
worker_info
Worker information
hostname: 8e4f1559-97bf-41c2-887d-ec56b460cdfc@1.production-1-worker-org-a-4-gce
version: v4.0.0 https://github.com/travis-ci/worker/tree/e5cb567e10c0eefe380e81c9a2229ac8fb6a16ce
instance: travis-job-bbdfcb90-9fb4-495e-b5d0-3b279e7b39d3 travis-ci-garnet-trusty-1512502259-986baf0 (via amqp)
startup: 26.340572051s
system_info
Build system information
Build language: python
Build group: stable
Build dist: trusty
Build id: 408652788
Job id: 408652795
Runtime kernel version: 4.4.0-101-generic
travis-build version: 5aef38fe4
Build image provisioning date and time
Tue Dec 5 19:58:13 UTC 2017
Operating System Details
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty
Cookbooks Version
7c2c6a6 https://github.com/travis-ci/travis-cookbooks/tree/7c2c6a6
git version
git version 2.15.1
bash version
GNU bash, version 4.3.11(1)-release (x86_64-pc-linux-gnu)
gcc version
gcc (Ubuntu 4.8.4-2ubuntu1~14.04.3) 4.8.4
Copyright (C) 2013 Free Software Foundation, Inc.
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
docker version
Client:
Version: 17.09.0-ce
API version: 1.32
Go version: go1.8.3
Git commit: afdb6d4
Built: Tue Sep 26 22:42:38 2017
OS/Arch: linux/amd64
Server:
Version: 17.09.0-ce
API version: 1.32 (minimum version 1.12)
Go version: go1.8.3
Git commit: afdb6d4
Built: Tue Sep 26 22:41:20 2017
OS/Arch: linux/amd64
Experimental: false
clang version
clang version 5.0.0 (tags/RELEASE_500/final)
Target: x86_64-unknown-linux-gnu
Thread model: posix
InstalledDir: /usr/local/clang-5.0.0/bin
jq version
jq-1.5
bats version
Bats 0.4.0
shellcheck version
0.4.6
shfmt version
v2.0.0
ccache version
ccache version 3.1.9
Copyright (C) 2002-2007 Andrew Tridgell
Copyright (C) 2009-2011 Joel Rosdahl
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 3 of the License, or (at your option) any later
version.
cmake version
cmake version 3.9.2
CMake suite maintained and supported by Kitware (kitware.com/cmake).
heroku version
heroku-cli/6.14.39-addc925 (linux-x64) node-v9.2.0
imagemagick version
Version: ImageMagick 6.7.7-10 2017-07-31 Q16 http://www.imagemagick.org
md5deep version
4.2
mercurial version
Mercurial Distributed SCM (version 4.2.2)
(see https://mercurial-scm.org for more information)
Copyright (C) 2005-2017 Matt Mackall and others
This is free software; see the source for copying conditions. There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
mysql version
mysql Ver 14.14 Distrib 5.6.33, for debian-linux-gnu (x86_64) using EditLine wrapper
openssl version
OpenSSL 1.0.1f 6 Jan 2014
packer version
Packer v1.0.2
Your version of Packer is out of date! The latest version
is 1.1.2. You can update by downloading from www.packer.io
postgresql client version
psql (PostgreSQL) 9.6.6
ragel version
Ragel State Machine Compiler version 6.8 Feb 2013
Copyright (c) 2001-2009 by Adrian Thurston
subversion version
svn, version 1.8.8 (r1568071)
compiled Aug 10 2017, 17:20:39 on x86_64-pc-linux-gnu
Copyright (C) 2013 The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/
The following repository access (RA) modules are available:
* ra_svn : Module for accessing a repository using the svn network protocol.
- with Cyrus SASL authentication
- handles 'svn' scheme
* ra_local : Module for accessing a repository on local disk.
- handles 'file' scheme
* ra_serf : Module for accessing a repository via WebDAV protocol using serf.
- using serf 1.3.3
- handles 'http' scheme
- handles 'https' scheme
sudo version
Sudo version 1.8.9p5
Configure options: --prefix=/usr -v --with-all-insults --with-pam --with-fqdn --with-logging=syslog --with-logfac=authpriv --with-env-editor --with-editor=/usr/bin/editor --with-timeout=15 --with-password-timeout=0 --with-passprompt=[sudo] password for %p: --without-lecture --with-tty-tickets --disable-root-mailer --enable-admin-flag --with-sendmail=/usr/sbin/sendmail --with-timedir=/var/lib/sudo --mandir=/usr/share/man --libexecdir=/usr/lib/sudo --with-sssd --with-sssd-lib=/usr/lib/x86_64-linux-gnu --with-selinux
Sudoers policy plugin version 1.8.9p5
Sudoers file grammar version 43
Sudoers path: /etc/sudoers
Authentication methods: 'pam'
Syslog facility if syslog is being used for logging: authpriv
Syslog priority to use when user authenticates successfully: notice
Syslog priority to use when user authenticates unsuccessfully: alert
Send mail if the user is not in sudoers
Use a separate timestamp for each user/tty combo
Lecture user the first time they run sudo
Root may run sudo
Allow some information gathering to give useful error messages
Require fully-qualified hostnames in the sudoers file
Visudo will honor the EDITOR environment variable
Set the LOGNAME and USER environment variables
Length at which to wrap log file lines (0 for no wrap): 80
Authentication timestamp timeout: 15.0 minutes
Password prompt timeout: 0.0 minutes
Number of tries to enter a password: 3
Umask to use or 0777 to use user's: 022
Path to mail program: /usr/sbin/sendmail
Flags for mail program: -t
Address to send mail to: root
Subject line for mail messages: *** SECURITY information for %h ***
Incorrect password message: Sorry, try again.
Path to authentication timestamp dir: /var/lib/sudo
Default password prompt: [sudo] password for %p:
Default user to run commands as: root
Value to override user's $PATH with: /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin
Path to the editor for use by visudo: /usr/bin/editor
When to require a password for 'list' pseudocommand: any
When to require a password for 'verify' pseudocommand: all
File descriptors >= 3 will be closed before executing a command
Environment variables to check for sanity:
TZ
TERM
LINGUAS
LC_*
LANGUAGE
LANG
COLORTERM
Environment variables to remove:
RUBYOPT
RUBYLIB
PYTHONUSERBASE
PYTHONINSPECT
PYTHONPATH
PYTHONHOME
TMPPREFIX
ZDOTDIR
READNULLCMD
NULLCMD
FPATH
PERL5DB
PERL5OPT
PERL5LIB
PERLLIB
PERLIO_DEBUG
JAVA_TOOL_OPTIONS
SHELLOPTS
GLOBIGNORE
PS4
BASH_ENV
ENV
TERMCAP
TERMPATH
TERMINFO_DIRS
TERMINFO
_RLD*
LD_*
PATH_LOCALE
NLSPATH
HOSTALIASES
RES_OPTIONS
LOCALDOMAIN
CDPATH
IFS
Environment variables to preserve:
JAVA_HOME
TRAVIS
CI
DEBIAN_FRONTEND
XAUTHORIZATION
XAUTHORITY
PS2
PS1
PATH
LS_COLORS
KRB5CCNAME
HOSTNAME
HOME
DISPLAY
COLORS
Locale to use while parsing sudoers: C
Directory in which to store input/output logs: /var/log/sudo-io
File in which to store the input/output log: %{seq}
Add an entry to the utmp/utmpx file when allocating a pty
PAM service name to use
PAM service name to use for login shells
Create a new PAM session for the command to run in
Maximum I/O log sequence number: 0
Local IP address and netmask pairs:
10.240.0.28/255.255.255.255
172.17.0.1/255.255.0.0
Sudoers I/O plugin version 1.8.9p5
gzip version
gzip 1.6
Copyright (C) 2007, 2010, 2011 Free Software Foundation, Inc.
Copyright (C) 1993 Jean-loup Gailly.
This is free software. You may redistribute copies of it under the terms of
the GNU General Public License <http://www.gnu.org/licenses/gpl.html>.
There is NO WARRANTY, to the extent permitted by law.
Written by Jean-loup Gailly.
zip version
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
This is Zip 3.0 (July 5th 2008), by Info-ZIP.
Currently maintained by E. Gordon. Please send bug reports to
the authors using the web page at www.info-zip.org; see README for details.
Latest sources and executables are at ftp://ftp.info-zip.org/pub/infozip,
as of above date; see http://www.info-zip.org/ for other sites.
Compiled with gcc 4.8.2 for Unix (Linux ELF) on Oct 21 2013.
Zip special compilation options:
USE_EF_UT_TIME (store Universal Time)
BZIP2_SUPPORT (bzip2 library version 1.0.6, 6-Sept-2010)
bzip2 code and library copyright (c) Julian R Seward
(See the bzip2 license for terms of use)
SYMLINK_SUPPORT (symbolic links supported)
LARGE_FILE_SUPPORT (can read and write large files on file system)
ZIP64_SUPPORT (use Zip64 to store large files in archives)
UNICODE_SUPPORT (store and read UTF-8 Unicode paths)
STORE_UNIX_UIDs_GIDs (store UID/GID sizes/values using new extra field)
UIDGID_NOT_16BIT (old Unix 16-bit UID/GID extra field not used)
[encryption, version 2.91 of 05 Jan 2007] (modified for Zip 3)
Encryption notice:
The encryption code of this program is not copyrighted and is
put in the public domain. It was originally written in Europe
and, to the best of our knowledge, can be freely distributed
in both source and object forms from any country, including
the USA under License Exception TSU of the U.S. Export
Administration Regulations (section 740.13(e)) of 6 June 2002.
Zip environment options:
ZIP: [none]
ZIPOPT: [none]
vim version
VIM - Vi IMproved 7.4 (2013 Aug 10, compiled Nov 24 2016 16:43:18)
Included patches: 1-52
Extra patches: 8.0.0056
Modified by pkg-vim-maintainers@lists.alioth.debian.org
Compiled by buildd@
Huge version without GUI. Features included (+) or not (-):
+acl +farsi +mouse_netterm +syntax
+arabic +file_in_path +mouse_sgr +tag_binary
+autocmd +find_in_path -mouse_sysmouse +tag_old_static
-balloon_eval +float +mouse_urxvt -tag_any_white
-browse +folding +mouse_xterm -tcl
++builtin_terms -footer +multi_byte +terminfo
+byte_offset +fork() +multi_lang +termresponse
+cindent +gettext -mzscheme +textobjects
-clientserver -hangul_input +netbeans_intg +title
-clipboard +iconv +path_extra -toolbar
+cmdline_compl +insert_expand -perl +user_commands
+cmdline_hist +jumplist +persistent_undo +vertsplit
+cmdline_info +keymap +postscript +virtualedit
+comments +langmap +printer +visual
+conceal +libcall +profile +visualextra
+cryptv +linebreak +python +viminfo
+cscope +lispindent -python3 +vreplace
+cursorbind +listcmds +quickfix +wildignore
+cursorshape +localmap +reltime +wildmenu
+dialog_con -lua +rightleft +windows
+diff +menu -ruby +writebackup
+digraphs +mksession +scrollbind -X11
-dnd +modify_fname +signs -xfontset
-ebcdic +mouse +smartindent -xim
+emacs_tags -mouseshape -sniff -xsmp
+eval +mouse_dec +startuptime -xterm_clipboard
+ex_extra +mouse_gpm +statusline -xterm_save
+extra_search -mouse_jsbterm -sun_workshop -xpm
system vimrc file: "$VIM/vimrc"
user vimrc file: "$HOME/.vimrc"
2nd user vimrc file: "~/.vim/vimrc"
user exrc file: "$HOME/.exrc"
fall-back for $VIM: "/usr/share/vim"
Compilation: gcc -c -I. -Iproto -DHAVE_CONFIG_H -g -O2 -fstack-protector --param=ssp-buffer-size=4 -Wformat -Werror=format-security -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=1
Linking: gcc -Wl,-Bsymbolic-functions -Wl,-z,relro -Wl,--as-needed -o vim -lm -ltinfo -lnsl -lselinux -lacl -lattr -lgpm -ldl -L/usr/lib/python2.7/config-x86_64-linux-gnu -lpython2.7 -lpthread -ldl -lutil -lm -Xlinker -export-dynamic -Wl,-O1 -Wl,-Bsymbolic-functions
iptables version
iptables v1.4.21
curl version
curl 7.35.0 (x86_64-pc-linux-gnu) libcurl/7.35.0 OpenSSL/1.0.1f zlib/1.2.8 libidn/1.28 librtmp/2.3
wget version
GNU Wget 1.15 built on linux-gnu.
rsync version
rsync version 3.1.0 protocol version 31
gimme version
v1.2.0
nvm version
0.33.6
perlbrew version
/home/travis/perl5/perlbrew/bin/perlbrew - App::perlbrew/0.80
phpenv version
rbenv 1.1.1-25-g6aa70b6
rvm version
rvm 1.29.3 (latest) by Michal Papis, Piotr Kuczynski, Wayne E. Seguin [https://rvm.io]
default ruby version
ruby 2.4.1p111 (2017-03-22 revision 58053) [x86_64-linux]
CouchDB version
couchdb 1.6.1
ElasticSearch version
5.5.0
Installed Firefox version
firefox 56.0.2
MongoDB version
MongoDB 3.4.10
PhantomJS version
2.1.1
Pre-installed PostgreSQL versions
9.2.24
9.3.20
9.4.15
9.5.10
9.6.6
RabbitMQ Version
3.6.14
Redis version
redis-server 4.0.6
riak version
2.2.3
Pre-installed Go versions
1.7.4
ant version
Apache Ant(TM) version 1.9.3 compiled on April 8 2014
mvn version
Apache Maven 3.5.2 (138edd61fd100ec658bfa2d307c43b76940a5d7d; 2017-10-18T07:58:13Z)
Maven home: /usr/local/maven-3.5.2
Java version: 1.8.0_151, vendor: Oracle Corporation
Java home: /usr/lib/jvm/java-8-oracle/jre
Default locale: en_US, platform encoding: UTF-8
OS name: "linux", version: "4.4.0-98-generic", arch: "amd64", family: "unix"
gradle version
------------------------------------------------------------
Gradle 4.0.1
------------------------------------------------------------
Build time: 2017-07-07 14:02:41 UTC
Revision: 38e5dc0f772daecca1d2681885d3d85414eb6826
Groovy: 2.4.11
Ant: Apache Ant(TM) version 1.9.6 compiled on June 29 2015
JVM: 1.8.0_151 (Oracle Corporation 25.151-b12)
OS: Linux 4.4.0-98-generic amd64
lein version
Leiningen 2.8.1 on Java 1.8.0_151 Java HotSpot(TM) 64-Bit Server VM
Pre-installed Node.js versions
v4.8.6
v6.12.0
v6.12.1
v8.9
v8.9.1
phpenv versions
system
5.6
* 5.6.32 (set by /home/travis/.phpenv/version)
7.0
7.0.25
7.1
7.1.11
hhvm
hhvm-stable
composer --version
Composer version 1.5.2 2017-09-11 16:59:25
Pre-installed Ruby versions
ruby-2.2.7
ruby-2.3.4
ruby-2.4.1
Network availability confirmed.
git.checkout
3.96s$ git clone --depth=50 https://github.com/jupyterlab/jupyterlab.git jupyterlab/jupyterlab
Cloning into 'jupyterlab/jupyterlab'...
remote: Counting objects: 9047, done.
remote: Compressing objects: 100% (3267/3267), done.
remote: Total 9047 (delta 6498), reused 7295 (delta 5368), pack-reused 0
Receiving objects: 100% (9047/9047), 9.82 MiB | 10.76 MiB/s, done.
Resolving deltas: 100% (6498/6498), done.
$ cd jupyterlab/jupyterlab
1.76s$ git fetch origin +refs/pull/4976/merge:
remote: Counting objects: 13, done.
remote: Compressing objects: 100% (6/6), done.
remote: Total 13 (delta 8), reused 9 (delta 5), pack-reused 0
Unpacking objects: 100% (13/13), done.
From https://github.com/jupyterlab/jupyterlab
* branch refs/pull/4976/merge -> FETCH_HEAD
$ git checkout -qf FETCH_HEAD
Setting environment variables from .travis.yml
$ export GH_REF=github.com/jupyterlab/jupyterlab.git
$ export YARN_CACHE_FOLDER=/home/travis/.yarn-cache/
$ export GROUP=js_cov
0.01s$ source ~/virtualenv/python3.6/bin/activate
cache.1
Setting up build cache
$ export CASHER_DIR=$HOME/.casher
0.23s$ Installing caching utilities
0.00s
7.32sattempting to download cache archive
fetching PR.4976/cache-linux-trusty-1d1b620e910f86a95c0c039b9c299c30da129597120cfbbd7c9e499f546d094b--python-3.6.tgz
fetching PR.4976/cache--python-3.6.tgz
fetching master/cache-linux-trusty-1d1b620e910f86a95c0c039b9c299c30da129597120cfbbd7c9e499f546d094b--python-3.6.tgz
found cache
0.00s
8.09sadding /home/travis/.yarn-cache to cache
creating directory /home/travis/.yarn-cache
cache.pip
0.01s
5.31sadding /home/travis/.cache/pip to cache
$ python --version
Python 3.6.3
$ pip --version
pip 9.0.1 from /home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages (python 3.6)
install
38.69s$ bash ./scripts/travis_install.sh
+set -o pipefail
++which yarn
+sudo rm -rf /usr/local/bin/yarn
+yarn
./scripts/travis_install.sh: line 11: yarn: command not found
+mkdir /home/travis/.jupyter
+pip install -q --upgrade pip
+pip --version
pip 18.0 from /home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/pip (python 3.6)
+pip install -q -e '.[test]'
+jlpm versions
yarn versions v1.6.0
node: '8.9.1',
v8: '6.1.534.47',
uv: '1.15.0',
zlib: '1.2.11',
ares: '1.10.1-DEV',
modules: '57',
nghttp2: '1.25.0',
openssl: '1.0.2m',
icu: '59.1',
unicode: '9.0',
cldr: '31.0.1',
tz: '2017b' }
+jlpm config current
yarn config v1.6.0
"rootModuleFolders": [
"/home/travis/build/jupyterlab/jupyterlab/node_modules"
],
"registryFolders": [
"node_modules",
"node_modules"
],
"linkedModules": [],
"cache": {},
"cwd": "/home/travis/build/jupyterlab/jupyterlab",
"looseSemver": true,
"commandName": "config",
"preferOffline": false,
"globalFolder": "/home/travis/.config/yarn/global",
"linkFolder": "/home/travis/.config/yarn/link",
"offline": false,
"binLinks": true,
"ignorePlatform": false,
"ignoreScripts": false,
"disablePrepublish": false,
"nonInteractive": true,
"workspaceRootFolder": "/home/travis/build/jupyterlab/jupyterlab",
"lockfileFolder": "/home/travis/build/jupyterlab/jupyterlab",
"networkConcurrency": 8,
"childConcurrency": 5,
"networkTimeout": 30000,
"workspacesEnabled": true,
"workspacesNohoistEnabled": true,
"pruneOfflineMirror": false,
"enableMetaFolder": false,
"enableLockfileVersions": false,
"linkFileDependencies": false,
"cacheFolder": "/home/travis/.yarn-cache/v1",
"tempFolder": "/home/travis/.yarn-cache/v1/.tmp",
"production": false
}
+jupyter serverextension enable --py jupyterlab
Enabling: jupyterlab
- Writing config: /home/travis/.jupyter
- Validating...
jupyterlab 0.33.0rc1 OK
562.89s$ bash ./scripts/travis_script.sh
+set -o pipefail
+[[ js_cov == python ]]
+[[ js_cov == js ]]
+[[ js_cov == js_cov ]]
+jlpm run build:packages
yarn run v1.6.0
$ cd packages/metapackage && jlpm run build
$ tsc && node build.js
+jlpm run build:test
yarn run v1.6.0
$ lerna run build:test
lerna info version 2.9.0
lerna info versioning independent
$ tsc --project test
lerna success run Ran npm script 'build:test' in packages:
lerna success - @jupyterlab/services
+jlpm run coverage --loglevel success
@jupyterlab/test-application: [C 19:46:39.586 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=42da6b4e251895f2db1ee54cc5f09223a43607dc73afa1dc
@jupyterlab/test-apputils: [C 19:46:58.731 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=2f7b755495d44dad986c96fe3cee5cd0a080a640fe2689b3
@jupyterlab/test-apputils: [E 19:47:20.744 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: b37cb862-fe05-4523-aa7e-496dc5500aea)
@jupyterlab/test-apputils: [E 19:47:21.507 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: b67c64b4-3db2-4d39-8769-0c571a221f6b)
@jupyterlab/test-apputils: [E 19:47:22.256 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: a49b4dae-519c-4a1b-a3bc-2bacc14150ab)
@jupyterlab/test-apputils: [E 19:47:23.887 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: da379426-3d81-4fb9-9a95-680fb5bbdf4e)
@jupyterlab/test-apputils: [E 19:47:24.669 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 034b4e94-f6c1-4b5e-8a62-670b0d7bf5dd)
@jupyterlab/test-apputils: [E 19:47:25.516 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: ce17a8c7-4f0e-4f71-a8d2-516f910868e0)
@jupyterlab/test-apputils: [E 19:47:27.290 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 51cecf2e-de3b-4c0e-b573-c79f6bb15b81)
@jupyterlab/test-apputils: [E 19:47:28.241 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 93956b9d-6924-45a9-ad53-7114a571a768)
@jupyterlab/test-apputils: [E 19:47:31.501 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 1302657e-70db-4e0c-9c7e-a35f96f0e8f2)
@jupyterlab/test-apputils: [E 19:47:31.819 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 293ed3c9-195e-4d87-9335-3e965df15348)
@jupyterlab/test-apputils: [E 19:47:32.590 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: b34bccb8-b183-40bc-af1e-c5d16c279f09)
@jupyterlab/test-apputils: [E 19:47:33.331 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 56521cfd-1c5f-4420-adb0-78515d6d32df)
@jupyterlab/test-apputils: [E 19:47:35.858 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: eed562aa-0ef7-47a3-9f6d-225f195c752c)
@jupyterlab/test-apputils: [E 19:47:39.921 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 3e44a85b-1cc8-4ce7-b603-07bc7e2280a0)
@jupyterlab/test-apputils: [E 19:47:41.869 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 1dc392ea-1915-47be-8e12-af99ec233c29)
@jupyterlab/test-cells: [C 19:47:47.035 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=6b2230ea987d0fdf27bcc42e6ca03ef8665c4ef06afcdb25
@jupyterlab/test-codeeditor: [C 19:48:07.131 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=44378e6c3d520a6c24d5e0a2ebe937d0f1203cdabbfd1e73
@jupyterlab/test-codemirror: [C 19:48:23.249 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=331208ead85193f414345f12d0fd63f122d6b00e6d29c1ae
@jupyterlab/test-completer: [C 19:48:40.513 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=066e4acdd4b07c2fa5e9c971a6a2d2c3e079f26c07602ed1
@jupyterlab/test-completer: [E 19:48:57.822 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: ac8efe8b-5ad6-4146-9740-59ac4c72ed1c)
@jupyterlab/test-console: [C 19:48:59.880 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=50dd3760f835738d0f2d77d880ff06b2c908d87c5ac7f3f4
@jupyterlab/test-console: [E 19:49:29.039 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 0bd23420-12d4-402c-8974-81862228cba5)
@jupyterlab/test-console: [E 19:49:29.950 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 5d2deef0-cd7f-45f4-84d8-780d0004fafe)
@jupyterlab/test-console: [E 19:49:30.765 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 81dbe22a-cede-408c-95e6-feca73d780a0)
@jupyterlab/test-console: [E 19:49:31.692 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 45a5b762-aacb-4df3-b6f2-56b66eebf44f)
@jupyterlab/test-console: [E 19:49:32.503 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: ccb1e2ff-5550-4adf-a521-3d90652ee917)
@jupyterlab/test-console: [E 19:49:34.575 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 628ab18e-ec0e-414b-a9f2-c1a55972218f)
@jupyterlab/test-coreutils: [C 19:49:36.778 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=0a2cde4523b0f63d36636046203a3553c61c1c0f43ba7591
@jupyterlab/test-csvviewer: [C 19:49:56.886 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=cbe46b0d601db14bb9bee2ed09f200063a0adb7028836e75
@jupyterlab/test-docmanager: [C 19:50:15.952 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=d4ad3d02284c8e35c2e03e1572db301f51e20557db4d2ad5
@jupyterlab/test-docmanager: [E 19:50:33.194 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 0509f55a-3084-40c6-b00a-3961e7810ffa)
@jupyterlab/test-docmanager: [E 19:50:34.344 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 903090bf-2121-4b0a-863c-602f142aeea4)
@jupyterlab/test-docregistry: [C 19:50:46.462 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=67d495371970e8e9c4cd6c06d8f5260ec369c2c13f0a2b82
@jupyterlab/test-filebrowser: [C 19:51:09.279 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=6449d9291ae15485fdf824c3e22d899c6d089ad76f7bdb9d
@jupyterlab/test-filebrowser: [E 19:51:29.271 KarmaTestApp] Error opening stream: HTTP 404: Not Found (Kernel does not exist: 48cc93d0-e613-45f7-b88a-97af731a82e2)
@jupyterlab/test-fileeditor: [C 19:51:33.409 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=61546f429a8455ef1780b666b57c971e3bfd9fe131af6c7e
@jupyterlab/test-imageviewer: [C 19:51:54.610 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=4037a81f21645067406dc5e9a5545fd7d961c0c92fe34ae2
@jupyterlab/test-inspector: [C 19:52:10.690 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=4fd9cd4ae3bc26a7a55d7c05fcd47380bc967d37f196ed08
@jupyterlab/test-mainmenu: [C 19:52:25.798 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=ea32ad1b69c19e4023d11d7c202467682dfc00bc0a9d5d81
@jupyterlab/test-notebook: [C 19:52:40.942 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=c54e8704e417d548f29c20e157e899b8b3d6e199c943199d
@jupyterlab/test-notebook: Traceback (most recent call last):\n File "/opt/python/3.6.3/lib/python3.6/runpy.py", line 193, in _run_module_as_main\n "__main__", mod_spec)\n File "/opt/python/3.6.3/lib/python3.6/runpy.py", line 85, in _run_code\n exec(code, run_globals)\n File "/home/travis/build/jupyterlab/jupyterlab/jupyterlab/tests/echo_kernel.py", line 38, in <module>\n EchoKernelApp.launch_instance()\n File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/traitlets/config/application.py", line 657, in launch_instance\n app.initialize(argv)\n File "<decorator-gen-123>", line 2, in initialize\n File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/traitlets/config/application.py", line 87, in catch_config_error\n return method(app, *args, **kwargs)\n File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 456, in initialize\n self.init_sockets()\n File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 248, in init_sockets\n self.control_port = self._bind_socket(self.control_socket, self.control_port)\n File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 180, in _bind_socket\n s.bind("tcp://%s:%i" % (self.ip, port))\n File "zmq/backend/cython/socket.pyx", line 549, in zmq.backend.cython.socket.Socket.bind\n File "zmq/backend/cython/checkrc.pxd", line 25, in zmq.backend.cython.checkrc._check_rc
@jupyterlab/test-notebook: zmq.error.ZMQError: Address already in use
@jupyterlab/test-notebook: error Command failed with exit code 1.
lerna ERR! execute callback with error
lerna ERR! Error: Command failed: yarn run coverage
lerna ERR! [C 19:52:40.942 KarmaTestApp]
lerna ERR!
lerna ERR! Copy/paste this URL into your browser when you connect for the first time,
lerna ERR! to login with a token:
lerna ERR! http://localhost:8888/?token=c54e8704e417d548f29c20e157e899b8b3d6e199c943199d
lerna ERR! Traceback (most recent call last):
lerna ERR! File "/opt/python/3.6.3/lib/python3.6/runpy.py", line 193, in _run_module_as_main
lerna ERR! "__main__", mod_spec)
lerna ERR! File "/opt/python/3.6.3/lib/python3.6/runpy.py", line 85, in _run_code
lerna ERR! exec(code, run_globals)
lerna ERR! File "/home/travis/build/jupyterlab/jupyterlab/jupyterlab/tests/echo_kernel.py", line 38, in <module>
lerna ERR! EchoKernelApp.launch_instance()
lerna ERR! File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/traitlets/config/application.py", line 657, in launch_instance
lerna ERR! app.initialize(argv)
lerna ERR! File "<decorator-gen-123>", line 2, in initialize
lerna ERR! File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/traitlets/config/application.py", line 87, in catch_config_error
lerna ERR! return method(app, *args, **kwargs)
lerna ERR! File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 456, in initialize
lerna ERR! self.init_sockets()
lerna ERR! File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 248, in init_sockets
lerna ERR! self.control_port = self._bind_socket(self.control_socket, self.control_port)
lerna ERR! File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 180, in _bind_socket
lerna ERR! s.bind("tcp://%s:%i" % (self.ip, port))
lerna ERR! File "zmq/backend/cython/socket.pyx", line 549, in zmq.backend.cython.socket.Socket.bind
lerna ERR! File "zmq/backend/cython/checkrc.pxd", line 25, in zmq.backend.cython.checkrc._check_rc
lerna ERR! zmq.error.ZMQError: Address already in use
lerna ERR! error Command failed with exit code 1.
lerna ERR!
lerna ERR! $ python run-test.py --browsers=ChromeHeadless karma-cov.conf.js
lerna ERR! Starting type checking service...
lerna ERR! Using 1 worker with 2048MB memory limit
lerna ERR!
lerna ERR! START:
lerna ERR! (node:6933) DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead
lerna ERR! Type checking in progress...
lerna ERR!
lerna ERR! No type errors found
lerna ERR! Version: typescript 2.9.2
lerna ERR! Time: 9237ms
lerna ERR!
lerna ERR! 26 07 2018 19:52:59.852:INFO [karma]: Karma v2.0.4 server started at http://0.0.0.0:9876/
lerna ERR! 26 07 2018 19:52:59.854:INFO [launcher]: Launching browser ChromeHeadless with unlimited concurrency
lerna ERR! 26 07 2018 19:52:59.857:INFO [launcher]: Starting browser ChromeHeadless
lerna ERR! 26 07 2018 19:53:00.388:INFO [HeadlessChrome 0.0.0 (Linux 0.0.0)]: Connected on socket OxLEqK9PWiQsRfAHAAAA with id 26472421
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cab07031-ba93-4ffc-80a4-12b7a5adca25'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cab07031-ba93-4ffc-80a4-12b7a5adca25'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (cab07031-ba93-4ffc-80a4-12b7a5adca25)'
lerna ERR! LOG: 'Kernel: connected (cab07031-ba93-4ffc-80a4-12b7a5adca25)'
lerna ERR! @jupyterlab/notebook
lerna ERR! NotebookActions
lerna ERR! #executed
lerna ERR! ✔ should emit when Markdown and code cells are run
lerna ERR! #splitCell({})
lerna ERR! ✔ should split the active cell into two cells
lerna ERR! ✔ should preserve leading white space in the second cell
lerna ERR! ✔ should clear the existing selection
lerna ERR! ✔ should activate the second cell
lerna ERR! ✔ should preserve the types of each cell
lerna ERR! ✔ should create two empty cells if there is no content
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should preserve the widget mode
lerna ERR! ✔ should be undo-able
lerna ERR! #mergeCells
lerna ERR! ✔ should merge the selected cells
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should select the next cell if there is only one cell selected
lerna ERR! ✔ should clear the outputs of a code cell
lerna ERR! ✔ should preserve the widget mode
lerna ERR! ✔ should be undo-able
lerna ERR! ✔ should unrender a markdown cell
lerna ERR! ✔ should preserve the cell type of the active cell
lerna ERR! #deleteCells()
lerna ERR! ✔ should delete the selected cells
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should switch to command mode
lerna ERR! ✔ should activate the cell after the last selected cell
lerna ERR! ✔ should select the previous cell if the last cell is deleted
lerna ERR! ✔ should add a code cell if all cells are deleted
lerna ERR! ✔ should be undo-able
lerna ERR! ✔ should be undo-able if all the cells are deleted
lerna ERR! #insertAbove()
lerna ERR! ✔ should insert a code cell above the active cell
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should widget mode should be preserved
lerna ERR! ✔ should be undo-able
lerna ERR! ✔ should clear the existing selection
lerna ERR! ✔ should be the new active cell
lerna ERR! #insertBelow()
lerna ERR! ✔ should insert a code cell below the active cell
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should widget mode should be preserved
lerna ERR! ✔ should be undo-able
lerna ERR! ✔ should clear the existing selection
lerna ERR! ✔ should be the new active cell
lerna ERR! #changeCellType()
lerna ERR! ✔ should change the selected cell type(s)
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should preserve the widget mode
lerna ERR! ✔ should be undo-able
lerna ERR! ✔ should clear the existing selection
lerna ERR! ✔ should unrender markdown cells
lerna ERR! #run()
lerna ERR! ✔ should run the selected cells
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should activate the last selected cell
lerna ERR! ✔ should clear the selection
lerna ERR! ✔ should change to command mode
lerna ERR! ✔ should handle no session
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! ✔ should stop executing code cells on an error
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! ✔ should render all markdown cells on an error
lerna ERR! #runAndAdvance()
lerna ERR! ✔ should run the selected cells
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! ✔ should clear the existing selection
lerna ERR! ✔ should change to command mode
lerna ERR! ✔ should activate the cell after the last selected cell
lerna ERR! ✔ should create a new code cell in edit mode if necessary
lerna ERR! ✔ should allow an undo of the new cell
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! ✔ should stop executing code cells on an error
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! ✔ should render all markdown cells on an error
lerna ERR! #runAndInsert()
lerna ERR! ✔ should run the selected cells
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should clear the existing selection
lerna ERR! ✔ should insert a new code cell in edit mode after the last selected cell
lerna ERR! ✔ should allow an undo of the cell insert
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! ✔ should stop executing code cells on an error
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! ✔ should render all markdown cells on an error
lerna ERR! #runAll()
lerna ERR! ✔ should run all of the cells in the notebok
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should change to command mode
lerna ERR! ✔ should clear the existing selection
lerna ERR! ✔ should activate the last cell
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! ✔ should stop executing code cells on an error
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
lerna ERR! ✔ should render all markdown cells on an error
lerna ERR! #selectAbove(`)
lerna ERR! ✔ should select the cell above the active cell
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should not wrap around to the bottom
lerna ERR! ✔ should preserve the mode
lerna ERR! #selectBelow()
lerna ERR! ✔ should select the cell below the active cell
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should not wrap around to the top
lerna ERR! ✔ should preserve the mode
lerna ERR! #extendSelectionAbove()
lerna ERR! ✔ should extend the selection to the cell above
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should change to command mode if there is a selection
lerna ERR! ✔ should not wrap around to the bottom
lerna ERR! ✔ should deselect the current cell if the cell above is selected
lerna ERR! ✔ should select only the first cell if we move from the second to first
lerna ERR! ✔ should activate the cell
lerna ERR! #extendSelectionBelow()
lerna ERR! ✔ should extend the selection to the cell below
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should change to command mode if there is a selection
lerna ERR! ✔ should not wrap around to the top
lerna ERR! ✔ should deselect the current cell if the cell below is selected
lerna ERR! ✔ should select only the last cell if we move from the second last to last
lerna ERR! ✔ should activate the cell
lerna ERR! #moveUp()
lerna ERR! ✔ should move the selected cells up
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should not wrap around to the bottom
lerna ERR! ✔ should be undo-able
lerna ERR! #moveDown()
lerna ERR! ✔ should move the selected cells down
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should not wrap around to the top
lerna ERR! ✔ should be undo-able
lerna ERR! #copy()
lerna ERR! ✔ should copy the selected cells to a clipboard
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should change to command mode
lerna ERR! #cut()
lerna ERR! ✔ should cut the selected cells to a clipboard
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should change to command mode
lerna ERR! ✔ should be undo-able
lerna ERR! ✔ should add a new code cell if all cells were cut
lerna ERR! #paste()
lerna ERR! ✔ should paste cells from a clipboard
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should be a no-op if there is no cell data on the clipboard
lerna ERR! ✔ should change to command mode
lerna ERR! ✔ should be undo-able
lerna ERR! #undo()
lerna ERR! ✔ should undo a cell action
lerna ERR! ✔ should switch the widget to command mode
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should be a no-op if there are no cell actions to undo
lerna ERR! #redo()
lerna ERR! ✔ should redo a cell action
lerna ERR! ✔ should switch the widget to command mode
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should be a no-op if there are no cell actions to redo
lerna ERR! #toggleAllLineNumbers()
lerna ERR! ✔ should toggle line numbers on all cells
lerna ERR! ✔ should be based on the state of the active cell
lerna ERR! ✔ should preserve the widget mode
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! #clearOutputs()
lerna ERR! ✔ should clear the outputs on the selected cells
lerna ERR! ✔ should preserve the widget mode
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! #clearAllOutputs()
lerna ERR! ✔ should clear the outputs on all cells
lerna ERR! ✔ should preserve the widget mode
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! #persistViewState()
lerna ERR! ✔ input hidden, output hidden and scrolled
lerna ERR! ✔ input hidden, output hidden and not scrolled
lerna ERR! ✔ input hidden, output shown and not scrolled
lerna ERR! #setMarkdownHeader()
lerna ERR! ✔ should set the markdown header level of selected cells
lerna ERR! ✔ should convert the cells to markdown type
lerna ERR! ✔ should be clamped between 1 and 6
lerna ERR! ✔ should be a no-op if there is no model
lerna ERR! ✔ should replace an existing header
lerna ERR! ✔ should replace leading white space
lerna ERR! ✔ should unrender the cells
lerna ERR! #trust()
lerna ERR! ✔ should trust the notebook cells if the user accepts
lerna ERR! ✔ should not trust the notebook cells if the user aborts
lerna ERR! ✔ should bail if the model is `null`
lerna ERR! ✔ should show a dialog if all cells are trusted
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4b3fb9be-0928-4384-bb41-c1c9abf9c3a4'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4b3fb9be-0928-4384-bb41-c1c9abf9c3a4'
lerna ERR! celltools
lerna ERR! CellTools
lerna ERR! #constructor()
lerna ERR! ✔ should create a celltools object
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c41909eb-05b5-455c-94c8-bf5a6c856d01'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c41909eb-05b5-455c-94c8-bf5a6c856d01'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/52860bff-6a7a-4537-9b48-a16ffbba2c82'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/52860bff-6a7a-4537-9b48-a16ffbba2c82'
lerna ERR! LOG: 'Kernel: connected (4b3fb9be-0928-4384-bb41-c1c9abf9c3a4)'
lerna ERR! LOG: 'Kernel: connected (4b3fb9be-0928-4384-bb41-c1c9abf9c3a4)'
lerna ERR! #activeCell
lerna ERR! ✔ should be the active cell
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/263a47b1-bbc3-4ff4-b0bb-78368ba968ca'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/263a47b1-bbc3-4ff4-b0bb-78368ba968ca'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/8fe02ad7-35c0-42a2-8692-f3449f122fd2'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/8fe02ad7-35c0-42a2-8692-f3449f122fd2'
lerna ERR! LOG: 'Kernel: connected (c41909eb-05b5-455c-94c8-bf5a6c856d01)'
lerna ERR! LOG: 'Kernel: connected (c41909eb-05b5-455c-94c8-bf5a6c856d01)'
lerna ERR! #selectedCells
lerna ERR! ✔ should be the currently selected cells
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c0747388-5209-4279-9437-e7bc56e8f506'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c0747388-5209-4279-9437-e7bc56e8f506'
lerna ERR! LOG: 'Kernel: connected (52860bff-6a7a-4537-9b48-a16ffbba2c82)'
lerna ERR! LOG: 'Kernel: connected (52860bff-6a7a-4537-9b48-a16ffbba2c82)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/629a4e1c-58c0-42d9-bcbc-bef60fe6a7be'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/629a4e1c-58c0-42d9-bcbc-bef60fe6a7be'
lerna ERR! LOG: 'Kernel: connected (263a47b1-bbc3-4ff4-b0bb-78368ba968ca)'
lerna ERR! LOG: 'Kernel: connected (263a47b1-bbc3-4ff4-b0bb-78368ba968ca)'
lerna ERR! #addItem()
lerna ERR! ✔ should add a cell tool item
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/1013e5d1-4d04-4d3c-a1dd-28decb37172c'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/1013e5d1-4d04-4d3c-a1dd-28decb37172c'
lerna ERR! LOG: 'Kernel: connected (8fe02ad7-35c0-42a2-8692-f3449f122fd2)'
lerna ERR! LOG: 'Kernel: connected (8fe02ad7-35c0-42a2-8692-f3449f122fd2)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/bb0822a6-1b83-4d61-841a-4faf36d7ae7e'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/bb0822a6-1b83-4d61-841a-4faf36d7ae7e'
lerna ERR! LOG: 'Kernel: connected (c0747388-5209-4279-9437-e7bc56e8f506)'
lerna ERR! LOG: 'Kernel: connected (c0747388-5209-4279-9437-e7bc56e8f506)'
lerna ERR! LOG: 'Kernel: connected (629a4e1c-58c0-42d9-bcbc-bef60fe6a7be)'
lerna ERR! LOG: 'Kernel: connected (629a4e1c-58c0-42d9-bcbc-bef60fe6a7be)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38ea7c07-55c1-47aa-b8f9-31247b38238d'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38ea7c07-55c1-47aa-b8f9-31247b38238d'
lerna ERR! ✔ should accept a rank
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f17e3a51-1ab1-4e76-90dc-0ba4c38338bf'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f17e3a51-1ab1-4e76-90dc-0ba4c38338bf'
lerna ERR! LOG: 'Kernel: connected (1013e5d1-4d04-4d3c-a1dd-28decb37172c)'
lerna ERR! LOG: 'Kernel: connected (1013e5d1-4d04-4d3c-a1dd-28decb37172c)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/be323416-f4df-4a10-a9c4-d6fcb1af81f8'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/be323416-f4df-4a10-a9c4-d6fcb1af81f8'
lerna ERR! LOG: 'Kernel: connected (bb0822a6-1b83-4d61-841a-4faf36d7ae7e)'
lerna ERR! LOG: 'Kernel: connected (bb0822a6-1b83-4d61-841a-4faf36d7ae7e)'
lerna ERR! CellTools.Tool
lerna ERR! #constructor
lerna ERR! ✔ should create a new base tool
lerna ERR! LOG: 'Kernel: connected (38ea7c07-55c1-47aa-b8f9-31247b38238d)'
lerna ERR! LOG: 'Kernel: connected (38ea7c07-55c1-47aa-b8f9-31247b38238d)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0a271a9d-98d7-4f05-8ea0-dc8edd7d494d'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0a271a9d-98d7-4f05-8ea0-dc8edd7d494d'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/7d9c535e-d8cf-4587-92ea-bf036d8baef2'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/7d9c535e-d8cf-4587-92ea-bf036d8baef2'
lerna ERR! LOG: 'Kernel: connected (f17e3a51-1ab1-4e76-90dc-0ba4c38338bf)'
lerna ERR! LOG: 'Kernel: connected (f17e3a51-1ab1-4e76-90dc-0ba4c38338bf)'
lerna ERR! #parent
lerna ERR! ✔ should be the celltools object used by the tool
lerna ERR! LOG: 'Kernel: connected (be323416-f4df-4a10-a9c4-d6fcb1af81f8)'
lerna ERR! LOG: 'Kernel: connected (be323416-f4df-4a10-a9c4-d6fcb1af81f8)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d'
lerna ERR! #onActiveCellChanged()
lerna ERR! ✔ should be called when the active cell changes
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60179413-bb1a-4a1a-9582-729e15b846c2'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60179413-bb1a-4a1a-9582-729e15b846c2'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/da42386f-fc2b-4d7a-8d1e-6bf57b14e48f'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/da42386f-fc2b-4d7a-8d1e-6bf57b14e48f'
lerna ERR! LOG: 'Kernel: connected (0a271a9d-98d7-4f05-8ea0-dc8edd7d494d)'
lerna ERR! LOG: 'Kernel: connected (0a271a9d-98d7-4f05-8ea0-dc8edd7d494d)'
lerna ERR! LOG: 'Kernel: connected (7d9c535e-d8cf-4587-92ea-bf036d8baef2)'
lerna ERR! LOG: 'Kernel: connected (7d9c535e-d8cf-4587-92ea-bf036d8baef2)'
lerna ERR! LOG: 'Kernel: connected (cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d)'
lerna ERR! LOG: 'Kernel: connected (cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d)'
lerna ERR! #onSelectionChanged()
lerna ERR! ✔ should be called when the selection changes
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a2c49f54-fd6c-4a1d-a45c-03f749a03c53'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a2c49f54-fd6c-4a1d-a45c-03f749a03c53'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/e85325b5-2bfc-400a-bf12-2fb19dcbef21'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/e85325b5-2bfc-400a-bf12-2fb19dcbef21'
lerna ERR! LOG: 'Kernel: connected (60179413-bb1a-4a1a-9582-729e15b846c2)'
lerna ERR! LOG: 'Kernel: connected (60179413-bb1a-4a1a-9582-729e15b846c2)'
lerna ERR! #onMetadataChanged()
lerna ERR! ✔ should be called when the metadata changes
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/822a7e4b-7c3f-4d32-a89e-5b4f455ae848'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/822a7e4b-7c3f-4d32-a89e-5b4f455ae848'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a33113e1-6db3-4db0-aeb8-a76b34461957'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a33113e1-6db3-4db0-aeb8-a76b34461957'
lerna ERR! LOG: 'Kernel: connected (da42386f-fc2b-4d7a-8d1e-6bf57b14e48f)'
lerna ERR! LOG: 'Kernel: connected (da42386f-fc2b-4d7a-8d1e-6bf57b14e48f)'
lerna ERR! LOG: 'Kernel: connected (a2c49f54-fd6c-4a1d-a45c-03f749a03c53)'
lerna ERR! LOG: 'Kernel: connected (a2c49f54-fd6c-4a1d-a45c-03f749a03c53)'
lerna ERR! CellTools.ActiveCellTool
lerna ERR! ✔ should create a new active cell tool
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/6f06d1b9-4f2b-4295-9062-11d68ac83b2e'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/6f06d1b9-4f2b-4295-9062-11d68ac83b2e'
lerna ERR! LOG: 'Kernel: connected (e85325b5-2bfc-400a-bf12-2fb19dcbef21)'
lerna ERR! LOG: 'Kernel: connected (e85325b5-2bfc-400a-bf12-2fb19dcbef21)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/458b28ac-2ef1-4882-a9af-fac78516f7ee'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/458b28ac-2ef1-4882-a9af-fac78516f7ee'
lerna ERR! LOG: 'Kernel: connected (822a7e4b-7c3f-4d32-a89e-5b4f455ae848)'
lerna ERR! LOG: 'Kernel: connected (822a7e4b-7c3f-4d32-a89e-5b4f455ae848)'
lerna ERR! LOG: 'Kernel: connected (a33113e1-6db3-4db0-aeb8-a76b34461957)'
lerna ERR! LOG: 'Kernel: connected (a33113e1-6db3-4db0-aeb8-a76b34461957)'
lerna ERR! ✔ should handle a change to the active cell
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/06a9ff11-eb93-4f0a-a021-cc8edce54664'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/06a9ff11-eb93-4f0a-a021-cc8edce54664'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/e2e7850b-cf27-4699-873a-75001c01f89a'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/e2e7850b-cf27-4699-873a-75001c01f89a'
lerna ERR! LOG: 'Kernel: connected (6f06d1b9-4f2b-4295-9062-11d68ac83b2e)'
lerna ERR! LOG: 'Kernel: connected (6f06d1b9-4f2b-4295-9062-11d68ac83b2e)'
lerna ERR! CellTools.MetadataEditorTool
lerna ERR! ✔ should create a new metadata editor tool
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/39c4d6a6-6609-4ece-bde7-55970575850a'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/39c4d6a6-6609-4ece-bde7-55970575850a'
lerna ERR! LOG: 'Kernel: connected (458b28ac-2ef1-4882-a9af-fac78516f7ee)'
lerna ERR! LOG: 'Kernel: connected (458b28ac-2ef1-4882-a9af-fac78516f7ee)'
lerna ERR! LOG: 'Kernel: connected (06a9ff11-eb93-4f0a-a021-cc8edce54664)'
lerna ERR! LOG: 'Kernel: connected (06a9ff11-eb93-4f0a-a021-cc8edce54664)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d'
lerna ERR! LOG: 'Kernel: connected (e2e7850b-cf27-4699-873a-75001c01f89a)'
lerna ERR! LOG: 'Kernel: connected (e2e7850b-cf27-4699-873a-75001c01f89a)'
lerna ERR! ✔ should handle a change to the active cell
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/64fce29d-8b9b-445a-8179-19a3ec9bdd3c'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/64fce29d-8b9b-445a-8179-19a3ec9bdd3c'
lerna ERR! LOG: 'Kernel: connected (39c4d6a6-6609-4ece-bde7-55970575850a)'
lerna ERR! LOG: 'Kernel: connected (39c4d6a6-6609-4ece-bde7-55970575850a)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/dbb41cf2-847a-47a3-ad51-1c411aa944ef'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/dbb41cf2-847a-47a3-ad51-1c411aa944ef'
lerna ERR! ✔ should handle a change to the metadata
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/34e70446-2cc6-4fdb-a5c3-540512bdd2fc'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/34e70446-2cc6-4fdb-a5c3-540512bdd2fc'
lerna ERR! LOG: 'Kernel: connected (861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d)'
lerna ERR! LOG: 'Kernel: connected (861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d)'
lerna ERR! LOG: 'Kernel: connected (64fce29d-8b9b-445a-8179-19a3ec9bdd3c)'
lerna ERR! LOG: 'Kernel: connected (64fce29d-8b9b-445a-8179-19a3ec9bdd3c)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/bc44d0de-62b2-4a5d-b425-457a5e397428'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/bc44d0de-62b2-4a5d-b425-457a5e397428'
lerna ERR! LOG: 'Kernel: connected (dbb41cf2-847a-47a3-ad51-1c411aa944ef)'
lerna ERR! LOG: 'Kernel: connected (dbb41cf2-847a-47a3-ad51-1c411aa944ef)'
lerna ERR! CellTools.KeySelector
lerna ERR! #constructor()
lerna ERR! ✔ should create a new key selector
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/829c2a11-b0d3-44fd-9306-0f60907521a8'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/829c2a11-b0d3-44fd-9306-0f60907521a8'
lerna ERR! LOG: 'Kernel: connected (34e70446-2cc6-4fdb-a5c3-540512bdd2fc)'
lerna ERR! LOG: 'Kernel: connected (34e70446-2cc6-4fdb-a5c3-540512bdd2fc)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/6e8760e1-33da-41e4-8e29-9b06e62c641a'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/6e8760e1-33da-41e4-8e29-9b06e62c641a'
lerna ERR! LOG: 'Kernel: connected (bc44d0de-62b2-4a5d-b425-457a5e397428)'
lerna ERR! LOG: 'Kernel: connected (bc44d0de-62b2-4a5d-b425-457a5e397428)'
lerna ERR! #key
lerna ERR! ✔ should be the key used by the selector
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/7ec81dc1-fe0c-455a-99f6-f1645e4b98ba'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/7ec81dc1-fe0c-455a-99f6-f1645e4b98ba'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4b42030d-6c01-4d44-ba53-2841d997f2c5'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4b42030d-6c01-4d44-ba53-2841d997f2c5'
lerna ERR! LOG: 'Kernel: connected (829c2a11-b0d3-44fd-9306-0f60907521a8)'
lerna ERR! LOG: 'Kernel: connected (829c2a11-b0d3-44fd-9306-0f60907521a8)'
lerna ERR! #selectNode
lerna ERR! ✔ should be the select node
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/21f3615d-89ea-406b-b29c-7ac10a133f98'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/21f3615d-89ea-406b-b29c-7ac10a133f98'
lerna ERR! LOG: 'Kernel: connected (6e8760e1-33da-41e4-8e29-9b06e62c641a)'
lerna ERR! LOG: 'Kernel: connected (6e8760e1-33da-41e4-8e29-9b06e62c641a)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/3897d54f-c5d5-4e86-b0ee-275885a89d97'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/3897d54f-c5d5-4e86-b0ee-275885a89d97'
lerna ERR! LOG: 'Kernel: connected (7ec81dc1-fe0c-455a-99f6-f1645e4b98ba)'
lerna ERR! LOG: 'Kernel: connected (7ec81dc1-fe0c-455a-99f6-f1645e4b98ba)'
lerna ERR! #handleEvent()
lerna ERR! change
lerna ERR! ✔ should update the metadata
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ba984f07-094b-4f1d-b345-2f8142180876'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ba984f07-094b-4f1d-b345-2f8142180876'
lerna ERR! LOG: 'Kernel: connected (4b42030d-6c01-4d44-ba53-2841d997f2c5)'
lerna ERR! LOG: 'Kernel: connected (4b42030d-6c01-4d44-ba53-2841d997f2c5)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4867c6a2-5236-4fb7-af34-1b14a22d035c'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4867c6a2-5236-4fb7-af34-1b14a22d035c'
lerna ERR! LOG: 'Kernel: connected (21f3615d-89ea-406b-b29c-7ac10a133f98)'
lerna ERR! LOG: 'Kernel: connected (21f3615d-89ea-406b-b29c-7ac10a133f98)'
lerna ERR! focus
lerna ERR! ✔ should add the focused class to the wrapper node
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/8f95a987-e1c9-4b08-82d7-5a022f928ef3'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/8f95a987-e1c9-4b08-82d7-5a022f928ef3'
lerna ERR! LOG: 'Kernel: connected (3897d54f-c5d5-4e86-b0ee-275885a89d97)'
lerna ERR! LOG: 'Kernel: connected (3897d54f-c5d5-4e86-b0ee-275885a89d97)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/36804040-d156-49ad-996d-f8d27fe3d8d0'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/36804040-d156-49ad-996d-f8d27fe3d8d0'
lerna ERR! LOG: 'Kernel: connected (ba984f07-094b-4f1d-b345-2f8142180876)'
lerna ERR! LOG: 'Kernel: connected (ba984f07-094b-4f1d-b345-2f8142180876)'
lerna ERR! LOG: 'Kernel: connected (4867c6a2-5236-4fb7-af34-1b14a22d035c)'
lerna ERR! LOG: 'Kernel: connected (4867c6a2-5236-4fb7-af34-1b14a22d035c)'
lerna ERR! blur
lerna ERR! ✔ should remove the focused class from the wrapper node
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/72db2276-6fc9-469c-afbb-ad326e432fab'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/72db2276-6fc9-469c-afbb-ad326e432fab'
lerna ERR! LOG: 'Kernel: connected (8f95a987-e1c9-4b08-82d7-5a022f928ef3)'
lerna ERR! LOG: 'Kernel: connected (8f95a987-e1c9-4b08-82d7-5a022f928ef3)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0f5a3a95-7c06-416e-92bf-8c57d62f0278'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0f5a3a95-7c06-416e-92bf-8c57d62f0278'
lerna ERR! LOG: 'Kernel: connected (36804040-d156-49ad-996d-f8d27fe3d8d0)'
lerna ERR! LOG: 'Kernel: connected (36804040-d156-49ad-996d-f8d27fe3d8d0)'
lerna ERR! #onAfterAttach()
lerna ERR! ✔ should add event listeners
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/44bd4045-5cc5-4479-8917-72ff60f347d6'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/44bd4045-5cc5-4479-8917-72ff60f347d6'
lerna ERR! LOG: 'Kernel: connected (72db2276-6fc9-469c-afbb-ad326e432fab)'
lerna ERR! LOG: 'Kernel: connected (72db2276-6fc9-469c-afbb-ad326e432fab)'
lerna ERR! LOG: 'Kernel: connected (0f5a3a95-7c06-416e-92bf-8c57d62f0278)'
lerna ERR! LOG: 'Kernel: connected (0f5a3a95-7c06-416e-92bf-8c57d62f0278)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/81c37905-037a-4b2b-bdaa-f98d2cd62090'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/81c37905-037a-4b2b-bdaa-f98d2cd62090'
lerna ERR! #onBeforeDetach()
lerna ERR! ✔ should remove event listeners
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/72347039-0b37-4003-b804-12859ba1c8da'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/72347039-0b37-4003-b804-12859ba1c8da'
lerna ERR! LOG: 'Kernel: connected (44bd4045-5cc5-4479-8917-72ff60f347d6)'
lerna ERR! LOG: 'Kernel: connected (44bd4045-5cc5-4479-8917-72ff60f347d6)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/000b5f4e-607a-49f1-be52-2f5388a10a05'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/000b5f4e-607a-49f1-be52-2f5388a10a05'
lerna ERR! LOG: 'Kernel: connected (81c37905-037a-4b2b-bdaa-f98d2cd62090)'
lerna ERR! LOG: 'Kernel: connected (81c37905-037a-4b2b-bdaa-f98d2cd62090)'
lerna ERR! #onValueChanged()
lerna ERR! ✔ should update the metadata
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f3f14ef8-6753-4d42-a7ac-effeafc84d96'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f3f14ef8-6753-4d42-a7ac-effeafc84d96'
lerna ERR! LOG: 'Kernel: connected (72347039-0b37-4003-b804-12859ba1c8da)'
lerna ERR! LOG: 'Kernel: connected (72347039-0b37-4003-b804-12859ba1c8da)'
lerna ERR! #onActiveCellChanged()
lerna ERR! ✔ should update the select value
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38e0967d-07b9-4f9f-a9a5-de17a9f0c06e'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38e0967d-07b9-4f9f-a9a5-de17a9f0c06e'
lerna ERR! LOG: 'Kernel: connected (000b5f4e-607a-49f1-be52-2f5388a10a05)'
lerna ERR! LOG: 'Kernel: connected (000b5f4e-607a-49f1-be52-2f5388a10a05)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/b619c7af-73ff-4e37-8a6b-971e9e040566'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/b619c7af-73ff-4e37-8a6b-971e9e040566'
lerna ERR! LOG: 'Kernel: connected (5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa)'
lerna ERR! LOG: 'Kernel: connected (5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa)'
lerna ERR! LOG: 'Kernel: connected (f3f14ef8-6753-4d42-a7ac-effeafc84d96)'
lerna ERR! LOG: 'Kernel: connected (f3f14ef8-6753-4d42-a7ac-effeafc84d96)'
lerna ERR! #onMetadataChanged()
lerna ERR! ✔ should update the select value
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/1e2d77af-8afb-463a-9707-e1d10e393b9d'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/1e2d77af-8afb-463a-9707-e1d10e393b9d'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1'
lerna ERR! LOG: 'Kernel: connected (38e0967d-07b9-4f9f-a9a5-de17a9f0c06e)'
lerna ERR! LOG: 'Kernel: connected (38e0967d-07b9-4f9f-a9a5-de17a9f0c06e)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/2d18f4e7-6e21-4785-a9dc-1daaf72cda68'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/2d18f4e7-6e21-4785-a9dc-1daaf72cda68'
lerna ERR! LOG: 'Kernel: connected (b619c7af-73ff-4e37-8a6b-971e9e040566)'
lerna ERR! LOG: 'Kernel: connected (b619c7af-73ff-4e37-8a6b-971e9e040566)'
lerna ERR! CellTools.createSlideShowSelector()
lerna ERR! ✔ should create a slide show selector
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60dc3686-cf8e-49ae-913e-495899b2bd4d'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60dc3686-cf8e-49ae-913e-495899b2bd4d'
lerna ERR! LOG: 'Kernel: connected (1e2d77af-8afb-463a-9707-e1d10e393b9d)'
lerna ERR! LOG: 'Kernel: connected (1e2d77af-8afb-463a-9707-e1d10e393b9d)'
lerna ERR! LOG: 'Kernel: connected (a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1)'
lerna ERR! LOG: 'Kernel: connected (a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1)'
lerna ERR! CellTools.createNBConvertSelector()
lerna ERR! ✔ should create a raw mimetype selector
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e'
lerna ERR! LOG: 'Kernel: connected (2d18f4e7-6e21-4785-a9dc-1daaf72cda68)'
lerna ERR! LOG: 'Kernel: connected (2d18f4e7-6e21-4785-a9dc-1daaf72cda68)'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0c1ed33b-7e97-4e15-b6d8-28d7203e2214'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0c1ed33b-7e97-4e15-b6d8-28d7203e2214'
lerna ERR! LOG: 'Kernel: connected (60dc3686-cf8e-49ae-913e-495899b2bd4d)'
lerna ERR! LOG: 'Kernel: connected (60dc3686-cf8e-49ae-913e-495899b2bd4d)'
lerna ERR! ✔ should have no effect on a code cell
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/98514341-ce05-45f3-ac14-110b4f25d73c'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/98514341-ce05-45f3-ac14-110b4f25d73c'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60061a27-5ba5-47f8-a947-c9a28c65d814'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60061a27-5ba5-47f8-a947-c9a28c65d814'
lerna ERR! ToolbarItems
lerna ERR! #createSaveButton()
lerna ERR! ✔ should save when clicked
lerna ERR! LOG: 'Kernel: connected (820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e)'
lerna ERR! LOG: 'Kernel: connected (820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e)'
lerna ERR! LOG: 'Kernel: connected (0c1ed33b-7e97-4e15-b6d8-28d7203e2214)'
lerna ERR! LOG: 'Kernel: connected (0c1ed33b-7e97-4e15-b6d8-28d7203e2214)'
lerna ERR! ✔ should have the `'jp-SaveIcon'` class
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/fadecf02-8ee0-430c-bf8e-640a6d592bf5'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/fadecf02-8ee0-430c-bf8e-640a6d592bf5'
lerna ERR! #createInsertButton()
lerna ERR! ✔ should insert below when clicked
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a73cd7a7-7c9e-4936-844a-d09da15ed643'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a73cd7a7-7c9e-4936-844a-d09da15ed643'
lerna ERR! ✔ should have the `'jp-AddIcon'` class
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/2b39d531-3cdd-4ac5-899b-f72f872951ec'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/2b39d531-3cdd-4ac5-899b-f72f872951ec'
lerna ERR! #createCutButton()
lerna ERR! ✔ should cut when clicked
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/58cccae0-2c4a-4b86-9489-2ff2791b68e2'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/58cccae0-2c4a-4b86-9489-2ff2791b68e2'
lerna ERR! ✔ should have the `'jp-CutIcon'` class
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ae132f66-a1c2-4b02-8616-39440b658ed2'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ae132f66-a1c2-4b02-8616-39440b658ed2'
lerna ERR! #createCopyButton()
lerna ERR! ✔ should copy when clicked
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/5753e656-998e-4a05-ac6e-090b8c172818'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/5753e656-998e-4a05-ac6e-090b8c172818'
lerna ERR! ✔ should have the `'jp-CopyIcon'` class
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/d91e63ea-75cd-44f9-b6c2-22f855092013'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/d91e63ea-75cd-44f9-b6c2-22f855092013'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/de734d7b-911b-4383-9def-32b5f4762fe3'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/de734d7b-911b-4383-9def-32b5f4762fe3'
lerna ERR! #createPasteButton()
lerna ERR! ✔ should paste when clicked
lerna ERR! ✔ should have the `'jp-PasteIcon'` class
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c89c1e0c-f137-487c-a70a-81f768cfa1cd'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c89c1e0c-f137-487c-a70a-81f768cfa1cd'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/9a5b3037-2da5-437f-8bf4-b3635b428cc6'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/9a5b3037-2da5-437f-8bf4-b3635b428cc6'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38c845f3-2376-48ba-a61a-9768e33c0fc1'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38c845f3-2376-48ba-a61a-9768e33c0fc1'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ea2ef57a-9421-4b05-9d41-a30f0b746285'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ea2ef57a-9421-4b05-9d41-a30f0b746285'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cc9b75d5-41b2-4fe3-b562-271fc2f27aae'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cc9b75d5-41b2-4fe3-b562-271fc2f27aae'
lerna ERR! #createRunButton()
lerna ERR! ✖ should run and advance when clicked
lerna ERR! HeadlessChrome 0.0.0 (Linux 0.0.0) @jupyterlab/notebook ToolbarItems #createRunButton() should run and advance when clicked FAILED
lerna ERR! Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
lerna ERR! ✔ should have the `'jp-RunIcon'` class
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/445d042f-72e9-4d7f-a757-56e45f7b2aca'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/445d042f-72e9-4d7f-a757-56e45f7b2aca'
lerna ERR! #createCellTypeItem()
lerna ERR! ✔ should track the cell type of the current cell
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c97584d2-5e04-4ac0-8ff5-48cf7a5c91bb'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c97584d2-5e04-4ac0-8ff5-48cf7a5c91bb'
lerna ERR! ✔ should display `'-'` if multiple cell types are selected
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/dba14f9b-3f4e-4b8b-9a13-26c6ff8fd471'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/dba14f9b-3f4e-4b8b-9a13-26c6ff8fd471'
lerna ERR! ✔ should display the active cell type if multiple cells of the same type are selected
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c8900b82-f519-4633-b35a-01a75935bc2d'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c8900b82-f519-4633-b35a-01a75935bc2d'
lerna ERR! #populateDefaults()
lerna ERR! ✔ should add the default items to the panel toolbar
lerna ERR! NotebookModel
lerna ERR! #constructor()
lerna ERR! ✔ should create a notebook model
lerna ERR! ✔ should accept an optional language preference
lerna ERR! ✔ should add a single code cell by default
lerna ERR! ✔ should accept an optional factory
lerna ERR! #metadataChanged
lerna ERR! ✔ should be emitted when a metadata field changes
lerna ERR! ✔ should not be emitted when the value does not change
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f720821a-1593-4dba-9cb1-716b510f6610'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f720821a-1593-4dba-9cb1-716b510f6610'
lerna ERR! #cells
lerna ERR! ✔ should add an empty code cell by default
lerna ERR! ✔ should be reset when loading from disk
lerna ERR! ✔ should allow undoing a change
lerna ERR! cells `changed` signal
lerna ERR! ✔ should emit a `contentChanged` signal upon cell addition
lerna ERR! ✔ should emit a `contentChanged` signal upon cell removal
lerna ERR! ✔ should emit a `contentChanged` signal upon cell move
lerna ERR! ✔ should set the dirty flag
lerna ERR! ✔ should add a new code cell when cells are cleared
lerna ERR! cell `changed` signal
lerna ERR! ✔ should be called when a cell content changes
lerna ERR! ✔ should emit the `contentChanged` signal
lerna ERR! ✔ should set the dirty flag
lerna ERR! #contentFactory
lerna ERR! ✔ should be the cell model factory used by the model
lerna ERR! #nbformat
lerna ERR! ✔ should get the major version number of the nbformat
lerna ERR! #nbformatMinor
lerna ERR! ✔ should get the minor version number of the nbformat
lerna ERR! #defaultKernelName()
lerna ERR! ✔ should get the default kernel name of the document
lerna ERR! ✔ should default to an empty string
lerna ERR! #defaultKernelLanguage
lerna ERR! ✔ should get the default kernel language of the document
lerna ERR! ✔ should default to an empty string
lerna ERR! ✔ should be set from the constructor arg
lerna ERR! #dispose()
lerna ERR! ✔ should dispose of the resources held by the model
lerna ERR! ✔ should be safe to call multiple times
lerna ERR! #toString()
lerna ERR! ✔ should serialize the model to a string
lerna ERR! #fromString()
lerna ERR! ✔ should deserialize the model from a string
lerna ERR! ✔ should set the dirty flag
lerna ERR! #toJSON()
lerna ERR! ✔ should serialize the model to JSON
lerna ERR! #fromJSON()
lerna ERR! ✔ should serialize the model from JSON
lerna ERR! ✔ should set the dirty flag
lerna ERR! #metadata
lerna ERR! ✔ should have default values
lerna ERR! ✔ should set the dirty flag when changed
lerna ERR! ✔ should emit the `contentChanged` signal
lerna ERR! ✔ should emit the `metadataChanged` signal
lerna ERR! .ContentFactory
lerna ERR! #codeCellContentFactory
lerna ERR! ✔ should be a code cell content factory
lerna ERR! ✔ should be settable in the constructor
lerna ERR! #createCodeCell()
lerna ERR! ✔ should create a new code cell
lerna ERR! ✔ should clone an existing code cell
lerna ERR! ✔ should clone an existing raw cell
lerna ERR! #createRawCell()
lerna ERR! ✔ should create a new raw cell
lerna ERR! ✔ should clone an existing raw cell
lerna ERR! ✔ should clone an existing code cell
lerna ERR! #createMarkdownCell()
lerna ERR! ✔ should create a new markdown cell
lerna ERR! ✔ should clone an existing markdown cell
lerna ERR! ✔ should clone an existing raw cell
lerna ERR! #modelDB
lerna ERR! ✔ should be undefined by default
lerna ERR! #clone()
lerna ERR! ✔ should create a new content factory with a new IModelDB
lerna ERR! .defaultContentFactory
lerna ERR! ✔ should be a ContentFactory
lerna ERR! NotebookModelFactory
lerna ERR! #constructor
lerna ERR! ✔ should create a new notebook model factory
lerna ERR! ✔ should accept a code cell content factory
lerna ERR! ✔ should accept a notebook model content factory
lerna ERR! #contentFactory
lerna ERR! ✔ should be the content factory used by the model factory
lerna ERR! #name
lerna ERR! ✔ should get the name of the model factory
lerna ERR! #contentType
lerna ERR! ✔ should get the file type
lerna ERR! #fileFormat
lerna ERR! ✔ should get the file format
lerna ERR! #isDisposed
lerna ERR! ✔ should get whether the factory is disposed
lerna ERR! #dispose()
lerna ERR! ✔ should dispose of the model factory
lerna ERR! ✔ should be safe to call multiple times
lerna ERR! #createNew()
lerna ERR! ✔ should create a new model for a given path
lerna ERR! ✔ should add an empty code cell by default
lerna ERR! ✔ should accept a language preference
lerna ERR! #preferredLanguage()
lerna ERR! ✔ should always return an empty string
lerna ERR! NotebookPanel
lerna ERR! #constructor()
lerna ERR! ✔ should create a notebook panel
lerna ERR! ✔ should change notebook to edit mode if we have a single empty code cell
lerna ERR! #toolbar
lerna ERR! ✔ should be the toolbar used by the widget
lerna ERR! #content
lerna ERR! ✔ should be the notebook content widget
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/12f7a7b3-4024-42d4-9f28-19a31a3c396d'
lerna ERR! LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/12f7a7b3-4024-42d4-9f28-19a31a3c396d'
lerna ERR! #context
lerna ERR! ✔ should get the document context for the widget
lerna ERR! #dispose()
lerna ERR! ✔ should dispose of the resources used by the widget
lerna ERR! ✔ should be safe to call more than once
lerna ERR! .ContentFactory
lerna ERR! #constructor
lerna ERR! ✔ should create a new ContentFactory
lerna ERR! #createNotebook()
lerna ERR! ✔ should create a notebook widget
lerna ERR! NotebookTracker
lerna ERR! #constructor()
lerna ERR! ✔ should create a NotebookTracker
lerna ERR! #activeCell
lerna ERR! ✔ should be `null` if there is no tracked notebook panel
lerna ERR! ✔ should be `null` if a tracked notebook has no active cell
lerna ERR! ✔ should be the active cell if a tracked notebook has one
lerna ERR! #activeCellChanged
lerna ERR! ✔ should emit a signal when the active cell changes
lerna ERR! #onCurrentChanged()
lerna ERR! ✔ should be called when the active cell changes
lerna ERR! @jupyter/notebook
lerna ERR! StaticNotebook
lerna ERR! #constructor()
lerna ERR! ✔ should create a notebook widget
lerna ERR! ✔ should add the `jp-Notebook` class
lerna ERR! ✔ should accept an optional render
lerna ERR! ✔ should accept an optional editor config
lerna ERR! #modelChanged
lerna ERR! ✔ should be emitted when the model changes
lerna ERR! #modelContentChanged
lerna ERR! ✔ should be emitted when a cell is added
lerna ERR! ✔ should be emitted when metadata is set
lerna ERR! #model
lerna ERR! ✔ should get the model for the widget
lerna ERR! ✔ should set the model for the widget
lerna ERR! ✔ should emit the `modelChanged` signal
lerna ERR! ✔ should be a no-op if the value does not change
lerna ERR! ✔ should add the model cells to the layout
lerna ERR! ✔ should set the mime types of the cell widgets
lerna ERR! `cells.changed` signal
lerna ERR! ✔ should handle changes to the model cell list
lerna ERR! ✔ should handle a remove
lerna ERR! ✔ should handle an add
lerna ERR! ✔ should handle a move
lerna ERR! ✔ should handle a clear
lerna ERR! #rendermime
lerna ERR! ✔ should be the rendermime instance used by the widget
lerna ERR! #contentFactory
lerna ERR! ✔ should be the cell widget contentFactory used by the widget
lerna ERR! #editorConfig
lerna ERR! ✔ should be the cell widget contentFactory used by the widget
lerna ERR! ✔ should be settable
lerna ERR! #codeMimetype
lerna ERR! ✔ should get the mime type for code cells
lerna ERR! ✔ should be set from language metadata
lerna ERR! #widgets
lerna ERR! ✔ should get the child widget at a specified index
lerna ERR! ✔ should return `undefined` if out of range
lerna ERR! ✔ should get the number of child widgets
lerna ERR! #dispose()
lerna ERR! ✔ should dispose of the resources held by the widget
lerna ERR! ✔ should be safe to call multiple times
lerna ERR! #onModelChanged()
lerna ERR! ✔ should be called when the model changes
lerna ERR! ✔ should not be called if the model does not change
lerna ERR! #onMetadataChanged()
lerna ERR! ✔ should be called when the metadata on the notebook changes
lerna ERR! ✔ should update the `codeMimetype`
lerna ERR! ✔ should update the cell widget mimetype
lerna ERR! #onCellInserted()
lerna ERR! ✔ should be called when a cell is inserted
lerna ERR! #onCellMoved()
lerna ERR! ✔ should be called when a cell is moved
lerna ERR! #onCellRemoved()
lerna ERR! ✔ should be called when a cell is removed
lerna ERR! .ContentFactory
lerna ERR! #constructor
lerna ERR! ✔ should create a new ContentFactory
lerna ERR! #createCodeCell({})
lerna ERR! ✔ should create a `CodeCell`
lerna ERR! #createMarkdownCell({})
lerna ERR! ✔ should create a `MarkdownCell`
lerna ERR! #createRawCell()
lerna ERR! ✔ should create a `RawCell`
lerna ERR! Notebook
lerna ERR! #stateChanged
lerna ERR! ✔ should be emitted when the state of the notebook changes
lerna ERR! #activeCellChanged
lerna ERR! ✔ should be emitted when the active cell changes
lerna ERR! ✔ should not be emitted when the active cell does not change
lerna ERR! #selectionChanged
lerna ERR! ✔ should be emitted when the selection changes
lerna ERR! ✔ should not be emitted when the selection does not change
lerna ERR! #mode
lerna ERR! ✔ should get the interactivity mode of the notebook
lerna ERR! ✔ should set the interactivity mode of the notebook
lerna ERR! ✔ should emit the `stateChanged` signal
lerna ERR! ✔ should be a no-op if the value does not change
lerna ERR! ✔ should post an update request
lerna ERR! ✔ should deselect all cells if switching to edit mode
lerna ERR! ✔ should unrender a markdown cell when switching to edit mode
lerna ERR! #activeCellIndex
lerna ERR! ✔ should get the active cell index of the notebook
lerna ERR! ✔ should set the active cell index of the notebook
lerna ERR! ✔ should clamp the index to the bounds of the notebook cells
lerna ERR! ✔ should emit the `stateChanged` signal
lerna ERR! ✔ should be a no-op if the value does not change
lerna ERR! ✔ should post an update request
lerna ERR! ✔ should update the active cell if necessary
lerna ERR! #activeCell
lerna ERR! ✔ should get the active cell widget
lerna ERR! #select()
lerna ERR! ✔ should select a cell widget
lerna ERR! ✔ should allow multiple widgets to be selected
lerna ERR! #deselect()
lerna ERR! ✔ should deselect a cell
lerna ERR! ✔ should let the active cell be deselected
lerna ERR! #isSelected()
lerna ERR! ✔ should get whether the cell is selected
lerna ERR! ✔ reports selection whether or not cell is active
lerna ERR! #deselectAll()
lerna ERR! ✔ should deselect all cells
lerna ERR! #extendContiguousSelectionTo()
lerna ERR! ✔ should work in each permutation of anchor, head, and index
lerna ERR! ✔ should work when we only have an active cell, with no existing selection
lerna ERR! ✔ should clip when the index is greater than the last index
lerna ERR! ✔ should clip when the index is greater than the last index with no existing selection
lerna ERR! ✔ should clip when the index is less than 0
lerna ERR! ✔ should clip when the index is less than 0 with no existing selection
lerna ERR! ✔ handles the case of no cells
lerna ERR! #getContiguousSelection()
lerna ERR! ✔ throws an error when the selection is not contiguous
lerna ERR! ✔ throws an error if the active cell is not at an endpoint
lerna ERR! ✔ returns null values if there is no selection
lerna ERR! ✔ handles the case of no cells
lerna ERR! ✔ works if head is before the anchor
lerna ERR! ✔ works if head is after the anchor
lerna ERR! ✔ works if head and anchor are the same
lerna ERR! #handleEvent()
lerna ERR! mousedown
lerna ERR! ✔ should set the active cell index
lerna ERR! ✔ should be a no-op if not not a cell
lerna ERR! ✔ should preserve "command" mode if in a markdown cell
lerna ERR! ✔ should extend selection if invoked with shift
lerna ERR! ✔ should leave a markdown cell rendered
lerna ERR! ✔ should remove selection and switch to command mode
lerna ERR! ✔ should have no effect on shift right click
lerna ERR! dblclick
lerna ERR! ✔ should unrender a markdown cell
lerna ERR! focusin
lerna ERR! ✔ should change to edit mode if a child cell takes focus
lerna ERR! ✔ should change to command mode if the widget takes focus
lerna ERR! focusout
lerna ERR! ✔ should switch to command mode
lerna ERR! ✔ should set command mode
lerna ERR! #onAfterAttach()
lerna ERR! ✔ should add event listeners
lerna ERR! ✔ should post an update request
lerna ERR! #onBeforeDetach()
lerna ERR! ✔ should remove event listeners
lerna ERR! #onActivateRequest()
lerna ERR! ✔ should focus the node after an update
lerna ERR! ✔ should post an `update-request
lerna ERR! #onUpdateRequest()
lerna ERR! ✔ should apply the command class if in command mode
lerna ERR! ✔ should apply the edit class if in edit mode
lerna ERR! ✔ should add the active class to the active widget
lerna ERR! ✔ should set the selected class on the selected widgets
lerna ERR! ✔ should add the multi select class if there is more than one widget
lerna ERR! #onCellInserted()
lerna ERR! ✔ should post an `update-request
lerna ERR! ✔ should update the active cell if necessary
lerna ERR! ✔ should keep the currently active cell active
lerna ERR! `edgeRequested` signal
lerna ERR! ✔ should activate the previous cell if top is requested
lerna ERR! ✔ should activate the next cell if bottom is requested
lerna ERR! #onCellMoved()
lerna ERR! ✔ should update the active cell index if necessary
lerna ERR! #onCellRemoved()
lerna ERR! ✔ should post an `update-request
lerna ERR! ✔ should update the active cell if necessary
lerna ERR! ✔ should keep the currently active cell active
lerna ERR! NotebookWidgetFactory
lerna ERR! #constructor()
lerna ERR! ✔ should create a notebook widget factory
lerna ERR! #isDisposed
lerna ERR! ✔ should get whether the factory has been disposed
lerna ERR! #dispose()
lerna ERR! ✔ should dispose of the resources held by the factory
lerna ERR! ✔ should be safe to call multiple times
lerna ERR! #editorConfig
lerna ERR! ✔ should be the editor config passed into the constructor
lerna ERR! ✔ should be settable
lerna ERR! #createNew()
lerna ERR! ✔ should create a new `NotebookPanel` widget
lerna ERR! ✔ should create a clone of the rendermime
lerna ERR! ✔ should pass the editor config to the notebook
lerna ERR! ✔ should populate the default toolbar items
lerna ERR!
lerna ERR! Finished in 2 mins 30.132 secs / 25.623 secs
lerna ERR!
lerna ERR! SUMMARY:
lerna ERR! ✔ 397 tests completed
lerna ERR! ✖ 1 test failed
lerna ERR!
lerna ERR! FAILED TESTS:
lerna ERR! @jupyterlab/notebook
lerna ERR! ToolbarItems
lerna ERR! #createRunButton()
lerna ERR! ✖ should run and advance when clicked
lerna ERR! HeadlessChrome 0.0.0 (Linux 0.0.0)
lerna ERR! Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
lerna ERR!
lerna ERR! TOTAL: 1 FAILED, 397 SUCCESS
lerna ERR!
lerna ERR! =============================== Coverage summary ===============================
lerna ERR! Statements : 77.02% ( 1535/1993 )
lerna ERR! Branches : 65.72% ( 602/916 )
lerna ERR! Functions : 80.11% ( 286/357 )
lerna ERR! Lines : 76.98% ( 1532/1990 )
lerna ERR! ================================================================================
lerna ERR! info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
lerna ERR!
lerna ERR! at Promise.all.then.arr (/home/travis/build/jupyterlab/jupyterlab/node_modules/execa/index.js:236:11)
lerna ERR! at <anonymous>
{ Error: Command failed: yarn run coverage
[C 19:52:40.942 KarmaTestApp]
Copy/paste this URL into your browser when you connect for the first time,
to login with a token:
http://localhost:8888/?token=c54e8704e417d548f29c20e157e899b8b3d6e199c943199d
Traceback (most recent call last):
File "/opt/python/3.6.3/lib/python3.6/runpy.py", line 193, in _run_module_as_main
"__main__", mod_spec)
File "/opt/python/3.6.3/lib/python3.6/runpy.py", line 85, in _run_code
exec(code, run_globals)
File "/home/travis/build/jupyterlab/jupyterlab/jupyterlab/tests/echo_kernel.py", line 38, in <module>
EchoKernelApp.launch_instance()
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/traitlets/config/application.py", line 657, in launch_instance
app.initialize(argv)
File "<decorator-gen-123>", line 2, in initialize
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/traitlets/config/application.py", line 87, in catch_config_error
return method(app, *args, **kwargs)
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 456, in initialize
self.init_sockets()
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 248, in init_sockets
self.control_port = self._bind_socket(self.control_socket, self.control_port)
File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 180, in _bind_socket
s.bind("tcp://%s:%i" % (self.ip, port))
File "zmq/backend/cython/socket.pyx", line 549, in zmq.backend.cython.socket.Socket.bind
File "zmq/backend/cython/checkrc.pxd", line 25, in zmq.backend.cython.checkrc._check_rc
zmq.error.ZMQError: Address already in use
error Command failed with exit code 1.
$ python run-test.py --browsers=ChromeHeadless karma-cov.conf.js
Starting type checking service...
Using 1 worker with 2048MB memory limit
START:
(node:6933) DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead
Type checking in progress...
No type errors found
Version: typescript 2.9.2
Time: 9237ms
26 07 2018 19:52:59.852:INFO [karma]: Karma v2.0.4 server started at http://0.0.0.0:9876/
26 07 2018 19:52:59.854:INFO [launcher]: Launching browser ChromeHeadless with unlimited concurrency
26 07 2018 19:52:59.857:INFO [launcher]: Starting browser ChromeHeadless
26 07 2018 19:53:00.388:INFO [HeadlessChrome 0.0.0 (Linux 0.0.0)]: Connected on socket OxLEqK9PWiQsRfAHAAAA with id 26472421
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cab07031-ba93-4ffc-80a4-12b7a5adca25'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cab07031-ba93-4ffc-80a4-12b7a5adca25'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (cab07031-ba93-4ffc-80a4-12b7a5adca25)'
LOG: 'Kernel: connected (cab07031-ba93-4ffc-80a4-12b7a5adca25)'
@jupyterlab/notebook
NotebookActions
#executed
✔ should emit when Markdown and code cells are run
#splitCell({})
✔ should split the active cell into two cells
✔ should preserve leading white space in the second cell
✔ should clear the existing selection
✔ should activate the second cell
✔ should preserve the types of each cell
✔ should create two empty cells if there is no content
✔ should be a no-op if there is no model
✔ should preserve the widget mode
✔ should be undo-able
#mergeCells
✔ should merge the selected cells
✔ should be a no-op if there is no model
✔ should select the next cell if there is only one cell selected
✔ should clear the outputs of a code cell
✔ should preserve the widget mode
✔ should be undo-able
✔ should unrender a markdown cell
✔ should preserve the cell type of the active cell
#deleteCells()
✔ should delete the selected cells
✔ should be a no-op if there is no model
✔ should switch to command mode
✔ should activate the cell after the last selected cell
✔ should select the previous cell if the last cell is deleted
✔ should add a code cell if all cells are deleted
✔ should be undo-able
✔ should be undo-able if all the cells are deleted
#insertAbove()
✔ should insert a code cell above the active cell
✔ should be a no-op if there is no model
✔ should widget mode should be preserved
✔ should be undo-able
✔ should clear the existing selection
✔ should be the new active cell
#insertBelow()
✔ should insert a code cell below the active cell
✔ should be a no-op if there is no model
✔ should widget mode should be preserved
✔ should be undo-able
✔ should clear the existing selection
✔ should be the new active cell
#changeCellType()
✔ should change the selected cell type(s)
✔ should be a no-op if there is no model
✔ should preserve the widget mode
✔ should be undo-able
✔ should clear the existing selection
✔ should unrender markdown cells
#run()
✔ should run the selected cells
✔ should be a no-op if there is no model
✔ should activate the last selected cell
✔ should clear the selection
✔ should change to command mode
✔ should handle no session
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
✔ should stop executing code cells on an error
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
✔ should render all markdown cells on an error
#runAndAdvance()
✔ should run the selected cells
✔ should be a no-op if there is no model
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
✔ should clear the existing selection
✔ should change to command mode
✔ should activate the cell after the last selected cell
✔ should create a new code cell in edit mode if necessary
✔ should allow an undo of the new cell
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
✔ should stop executing code cells on an error
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
✔ should render all markdown cells on an error
#runAndInsert()
✔ should run the selected cells
✔ should be a no-op if there is no model
✔ should clear the existing selection
✔ should insert a new code cell in edit mode after the last selected cell
✔ should allow an undo of the cell insert
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
✔ should stop executing code cells on an error
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
✔ should render all markdown cells on an error
#runAll()
✔ should run all of the cells in the notebok
✔ should be a no-op if there is no model
✔ should change to command mode
✔ should clear the existing selection
✔ should activate the last cell
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
✔ should stop executing code cells on an error
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
LOG: 'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)'
✔ should render all markdown cells on an error
#selectAbove(`)
✔ should select the cell above the active cell
✔ should be a no-op if there is no model
✔ should not wrap around to the bottom
✔ should preserve the mode
#selectBelow()
✔ should select the cell below the active cell
✔ should be a no-op if there is no model
✔ should not wrap around to the top
✔ should preserve the mode
#extendSelectionAbove()
✔ should extend the selection to the cell above
✔ should be a no-op if there is no model
✔ should change to command mode if there is a selection
✔ should not wrap around to the bottom
✔ should deselect the current cell if the cell above is selected
✔ should select only the first cell if we move from the second to first
✔ should activate the cell
#extendSelectionBelow()
��� should extend the selection to the cell below
✔ should be a no-op if there is no model
✔ should change to command mode if there is a selection
✔ should not wrap around to the top
✔ should deselect the current cell if the cell below is selected
✔ should select only the last cell if we move from the second last to last
✔ should activate the cell
#moveUp()
✔ should move the selected cells up
✔ should be a no-op if there is no model
✔ should not wrap around to the bottom
✔ should be undo-able
#moveDown()
✔ should move the selected cells down
✔ should be a no-op if there is no model
✔ should not wrap around to the top
✔ should be undo-able
#copy()
✔ should copy the selected cells to a clipboard
✔ should be a no-op if there is no model
✔ should change to command mode
#cut()
✔ should cut the selected cells to a clipboard
✔ should be a no-op if there is no model
✔ should change to command mode
✔ should be undo-able
✔ should add a new code cell if all cells were cut
#paste()
✔ should paste cells from a clipboard
✔ should be a no-op if there is no model
✔ should be a no-op if there is no cell data on the clipboard
✔ should change to command mode
✔ should be undo-able
#undo()
✔ should undo a cell action
✔ should switch the widget to command mode
✔ should be a no-op if there is no model
✔ should be a no-op if there are no cell actions to undo
#redo()
✔ should redo a cell action
✔ should switch the widget to command mode
✔ should be a no-op if there is no model
✔ should be a no-op if there are no cell actions to redo
#toggleAllLineNumbers()
✔ should toggle line numbers on all cells
✔ should be based on the state of the active cell
✔ should preserve the widget mode
✔ should be a no-op if there is no model
#clearOutputs()
✔ should clear the outputs on the selected cells
✔ should preserve the widget mode
✔ should be a no-op if there is no model
#clearAllOutputs()
✔ should clear the outputs on all cells
✔ should preserve the widget mode
✔ should be a no-op if there is no model
#persistViewState()
✔ input hidden, output hidden and scrolled
✔ input hidden, output hidden and not scrolled
✔ input hidden, output shown and not scrolled
#setMarkdownHeader()
✔ should set the markdown header level of selected cells
✔ should convert the cells to markdown type
✔ should be clamped between 1 and 6
✔ should be a no-op if there is no model
✔ should replace an existing header
✔ should replace leading white space
✔ should unrender the cells
#trust()
✔ should trust the notebook cells if the user accepts
✔ should not trust the notebook cells if the user aborts
✔ should bail if the model is `null`
✔ should show a dialog if all cells are trusted
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4b3fb9be-0928-4384-bb41-c1c9abf9c3a4'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4b3fb9be-0928-4384-bb41-c1c9abf9c3a4'
celltools
CellTools
#constructor()
✔ should create a celltools object
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c41909eb-05b5-455c-94c8-bf5a6c856d01'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c41909eb-05b5-455c-94c8-bf5a6c856d01'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/52860bff-6a7a-4537-9b48-a16ffbba2c82'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/52860bff-6a7a-4537-9b48-a16ffbba2c82'
LOG: 'Kernel: connected (4b3fb9be-0928-4384-bb41-c1c9abf9c3a4)'
LOG: 'Kernel: connected (4b3fb9be-0928-4384-bb41-c1c9abf9c3a4)'
#activeCell
✔ should be the active cell
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/263a47b1-bbc3-4ff4-b0bb-78368ba968ca'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/263a47b1-bbc3-4ff4-b0bb-78368ba968ca'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/8fe02ad7-35c0-42a2-8692-f3449f122fd2'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/8fe02ad7-35c0-42a2-8692-f3449f122fd2'
LOG: 'Kernel: connected (c41909eb-05b5-455c-94c8-bf5a6c856d01)'
LOG: 'Kernel: connected (c41909eb-05b5-455c-94c8-bf5a6c856d01)'
#selectedCells
✔ should be the currently selected cells
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c0747388-5209-4279-9437-e7bc56e8f506'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c0747388-5209-4279-9437-e7bc56e8f506'
LOG: 'Kernel: connected (52860bff-6a7a-4537-9b48-a16ffbba2c82)'
LOG: 'Kernel: connected (52860bff-6a7a-4537-9b48-a16ffbba2c82)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/629a4e1c-58c0-42d9-bcbc-bef60fe6a7be'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/629a4e1c-58c0-42d9-bcbc-bef60fe6a7be'
LOG: 'Kernel: connected (263a47b1-bbc3-4ff4-b0bb-78368ba968ca)'
LOG: 'Kernel: connected (263a47b1-bbc3-4ff4-b0bb-78368ba968ca)'
#addItem()
✔ should add a cell tool item
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/1013e5d1-4d04-4d3c-a1dd-28decb37172c'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/1013e5d1-4d04-4d3c-a1dd-28decb37172c'
LOG: 'Kernel: connected (8fe02ad7-35c0-42a2-8692-f3449f122fd2)'
LOG: 'Kernel: connected (8fe02ad7-35c0-42a2-8692-f3449f122fd2)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/bb0822a6-1b83-4d61-841a-4faf36d7ae7e'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/bb0822a6-1b83-4d61-841a-4faf36d7ae7e'
LOG: 'Kernel: connected (c0747388-5209-4279-9437-e7bc56e8f506)'
LOG: 'Kernel: connected (c0747388-5209-4279-9437-e7bc56e8f506)'
LOG: 'Kernel: connected (629a4e1c-58c0-42d9-bcbc-bef60fe6a7be)'
LOG: 'Kernel: connected (629a4e1c-58c0-42d9-bcbc-bef60fe6a7be)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38ea7c07-55c1-47aa-b8f9-31247b38238d'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38ea7c07-55c1-47aa-b8f9-31247b38238d'
✔ should accept a rank
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f17e3a51-1ab1-4e76-90dc-0ba4c38338bf'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f17e3a51-1ab1-4e76-90dc-0ba4c38338bf'
LOG: 'Kernel: connected (1013e5d1-4d04-4d3c-a1dd-28decb37172c)'
LOG: 'Kernel: connected (1013e5d1-4d04-4d3c-a1dd-28decb37172c)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/be323416-f4df-4a10-a9c4-d6fcb1af81f8'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/be323416-f4df-4a10-a9c4-d6fcb1af81f8'
LOG: 'Kernel: connected (bb0822a6-1b83-4d61-841a-4faf36d7ae7e)'
LOG: 'Kernel: connected (bb0822a6-1b83-4d61-841a-4faf36d7ae7e)'
CellTools.Tool
#constructor
✔ should create a new base tool
LOG: 'Kernel: connected (38ea7c07-55c1-47aa-b8f9-31247b38238d)'
LOG: 'Kernel: connected (38ea7c07-55c1-47aa-b8f9-31247b38238d)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0a271a9d-98d7-4f05-8ea0-dc8edd7d494d'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0a271a9d-98d7-4f05-8ea0-dc8edd7d494d'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/7d9c535e-d8cf-4587-92ea-bf036d8baef2'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/7d9c535e-d8cf-4587-92ea-bf036d8baef2'
LOG: 'Kernel: connected (f17e3a51-1ab1-4e76-90dc-0ba4c38338bf)'
LOG: 'Kernel: connected (f17e3a51-1ab1-4e76-90dc-0ba4c38338bf)'
#parent
✔ should be the celltools object used by the tool
LOG: 'Kernel: connected (be323416-f4df-4a10-a9c4-d6fcb1af81f8)'
LOG: 'Kernel: connected (be323416-f4df-4a10-a9c4-d6fcb1af81f8)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d'
#onActiveCellChanged()
✔ should be called when the active cell changes
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60179413-bb1a-4a1a-9582-729e15b846c2'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60179413-bb1a-4a1a-9582-729e15b846c2'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/da42386f-fc2b-4d7a-8d1e-6bf57b14e48f'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/da42386f-fc2b-4d7a-8d1e-6bf57b14e48f'
LOG: 'Kernel: connected (0a271a9d-98d7-4f05-8ea0-dc8edd7d494d)'
LOG: 'Kernel: connected (0a271a9d-98d7-4f05-8ea0-dc8edd7d494d)'
LOG: 'Kernel: connected (7d9c535e-d8cf-4587-92ea-bf036d8baef2)'
LOG: 'Kernel: connected (7d9c535e-d8cf-4587-92ea-bf036d8baef2)'
LOG: 'Kernel: connected (cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d)'
LOG: 'Kernel: connected (cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d)'
#onSelectionChanged()
✔ should be called when the selection changes
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a2c49f54-fd6c-4a1d-a45c-03f749a03c53'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a2c49f54-fd6c-4a1d-a45c-03f749a03c53'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/e85325b5-2bfc-400a-bf12-2fb19dcbef21'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/e85325b5-2bfc-400a-bf12-2fb19dcbef21'
LOG: 'Kernel: connected (60179413-bb1a-4a1a-9582-729e15b846c2)'
LOG: 'Kernel: connected (60179413-bb1a-4a1a-9582-729e15b846c2)'
#onMetadataChanged()
✔ should be called when the metadata changes
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/822a7e4b-7c3f-4d32-a89e-5b4f455ae848'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/822a7e4b-7c3f-4d32-a89e-5b4f455ae848'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a33113e1-6db3-4db0-aeb8-a76b34461957'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a33113e1-6db3-4db0-aeb8-a76b34461957'
LOG: 'Kernel: connected (da42386f-fc2b-4d7a-8d1e-6bf57b14e48f)'
LOG: 'Kernel: connected (da42386f-fc2b-4d7a-8d1e-6bf57b14e48f)'
LOG: 'Kernel: connected (a2c49f54-fd6c-4a1d-a45c-03f749a03c53)'
LOG: 'Kernel: connected (a2c49f54-fd6c-4a1d-a45c-03f749a03c53)'
CellTools.ActiveCellTool
✔ should create a new active cell tool
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/6f06d1b9-4f2b-4295-9062-11d68ac83b2e'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/6f06d1b9-4f2b-4295-9062-11d68ac83b2e'
LOG: 'Kernel: connected (e85325b5-2bfc-400a-bf12-2fb19dcbef21)'
LOG: 'Kernel: connected (e85325b5-2bfc-400a-bf12-2fb19dcbef21)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/458b28ac-2ef1-4882-a9af-fac78516f7ee'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/458b28ac-2ef1-4882-a9af-fac78516f7ee'
LOG: 'Kernel: connected (822a7e4b-7c3f-4d32-a89e-5b4f455ae848)'
LOG: 'Kernel: connected (822a7e4b-7c3f-4d32-a89e-5b4f455ae848)'
LOG: 'Kernel: connected (a33113e1-6db3-4db0-aeb8-a76b34461957)'
LOG: 'Kernel: connected (a33113e1-6db3-4db0-aeb8-a76b34461957)'
✔ should handle a change to the active cell
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/06a9ff11-eb93-4f0a-a021-cc8edce54664'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/06a9ff11-eb93-4f0a-a021-cc8edce54664'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/e2e7850b-cf27-4699-873a-75001c01f89a'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/e2e7850b-cf27-4699-873a-75001c01f89a'
LOG: 'Kernel: connected (6f06d1b9-4f2b-4295-9062-11d68ac83b2e)'
LOG: 'Kernel: connected (6f06d1b9-4f2b-4295-9062-11d68ac83b2e)'
CellTools.MetadataEditorTool
✔ should create a new metadata editor tool
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/39c4d6a6-6609-4ece-bde7-55970575850a'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/39c4d6a6-6609-4ece-bde7-55970575850a'
LOG: 'Kernel: connected (458b28ac-2ef1-4882-a9af-fac78516f7ee)'
LOG: 'Kernel: connected (458b28ac-2ef1-4882-a9af-fac78516f7ee)'
LOG: 'Kernel: connected (06a9ff11-eb93-4f0a-a021-cc8edce54664)'
LOG: 'Kernel: connected (06a9ff11-eb93-4f0a-a021-cc8edce54664)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d'
LOG: 'Kernel: connected (e2e7850b-cf27-4699-873a-75001c01f89a)'
LOG: 'Kernel: connected (e2e7850b-cf27-4699-873a-75001c01f89a)'
✔ should handle a change to the active cell
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/64fce29d-8b9b-445a-8179-19a3ec9bdd3c'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/64fce29d-8b9b-445a-8179-19a3ec9bdd3c'
LOG: 'Kernel: connected (39c4d6a6-6609-4ece-bde7-55970575850a)'
LOG: 'Kernel: connected (39c4d6a6-6609-4ece-bde7-55970575850a)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/dbb41cf2-847a-47a3-ad51-1c411aa944ef'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/dbb41cf2-847a-47a3-ad51-1c411aa944ef'
✔ should handle a change to the metadata
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/34e70446-2cc6-4fdb-a5c3-540512bdd2fc'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/34e70446-2cc6-4fdb-a5c3-540512bdd2fc'
LOG: 'Kernel: connected (861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d)'
LOG: 'Kernel: connected (861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d)'
LOG: 'Kernel: connected (64fce29d-8b9b-445a-8179-19a3ec9bdd3c)'
LOG: 'Kernel: connected (64fce29d-8b9b-445a-8179-19a3ec9bdd3c)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/bc44d0de-62b2-4a5d-b425-457a5e397428'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/bc44d0de-62b2-4a5d-b425-457a5e397428'
LOG: 'Kernel: connected (dbb41cf2-847a-47a3-ad51-1c411aa944ef)'
LOG: 'Kernel: connected (dbb41cf2-847a-47a3-ad51-1c411aa944ef)'
CellTools.KeySelector
#constructor()
✔ should create a new key selector
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/829c2a11-b0d3-44fd-9306-0f60907521a8'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/829c2a11-b0d3-44fd-9306-0f60907521a8'
LOG: 'Kernel: connected (34e70446-2cc6-4fdb-a5c3-540512bdd2fc)'
LOG: 'Kernel: connected (34e70446-2cc6-4fdb-a5c3-540512bdd2fc)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/6e8760e1-33da-41e4-8e29-9b06e62c641a'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/6e8760e1-33da-41e4-8e29-9b06e62c641a'
LOG: 'Kernel: connected (bc44d0de-62b2-4a5d-b425-457a5e397428)'
LOG: 'Kernel: connected (bc44d0de-62b2-4a5d-b425-457a5e397428)'
#key
✔ should be the key used by the selector
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/7ec81dc1-fe0c-455a-99f6-f1645e4b98ba'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/7ec81dc1-fe0c-455a-99f6-f1645e4b98ba'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4b42030d-6c01-4d44-ba53-2841d997f2c5'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4b42030d-6c01-4d44-ba53-2841d997f2c5'
LOG: 'Kernel: connected (829c2a11-b0d3-44fd-9306-0f60907521a8)'
LOG: 'Kernel: connected (829c2a11-b0d3-44fd-9306-0f60907521a8)'
#selectNode
✔ should be the select node
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/21f3615d-89ea-406b-b29c-7ac10a133f98'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/21f3615d-89ea-406b-b29c-7ac10a133f98'
LOG: 'Kernel: connected (6e8760e1-33da-41e4-8e29-9b06e62c641a)'
LOG: 'Kernel: connected (6e8760e1-33da-41e4-8e29-9b06e62c641a)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/3897d54f-c5d5-4e86-b0ee-275885a89d97'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/3897d54f-c5d5-4e86-b0ee-275885a89d97'
LOG: 'Kernel: connected (7ec81dc1-fe0c-455a-99f6-f1645e4b98ba)'
LOG: 'Kernel: connected (7ec81dc1-fe0c-455a-99f6-f1645e4b98ba)'
#handleEvent()
change
✔ should update the metadata
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ba984f07-094b-4f1d-b345-2f8142180876'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ba984f07-094b-4f1d-b345-2f8142180876'
LOG: 'Kernel: connected (4b42030d-6c01-4d44-ba53-2841d997f2c5)'
LOG: 'Kernel: connected (4b42030d-6c01-4d44-ba53-2841d997f2c5)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4867c6a2-5236-4fb7-af34-1b14a22d035c'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/4867c6a2-5236-4fb7-af34-1b14a22d035c'
LOG: 'Kernel: connected (21f3615d-89ea-406b-b29c-7ac10a133f98)'
LOG: 'Kernel: connected (21f3615d-89ea-406b-b29c-7ac10a133f98)'
focus
✔ should add the focused class to the wrapper node
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/8f95a987-e1c9-4b08-82d7-5a022f928ef3'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/8f95a987-e1c9-4b08-82d7-5a022f928ef3'
LOG: 'Kernel: connected (3897d54f-c5d5-4e86-b0ee-275885a89d97)'
LOG: 'Kernel: connected (3897d54f-c5d5-4e86-b0ee-275885a89d97)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/36804040-d156-49ad-996d-f8d27fe3d8d0'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/36804040-d156-49ad-996d-f8d27fe3d8d0'
LOG: 'Kernel: connected (ba984f07-094b-4f1d-b345-2f8142180876)'
LOG: 'Kernel: connected (ba984f07-094b-4f1d-b345-2f8142180876)'
LOG: 'Kernel: connected (4867c6a2-5236-4fb7-af34-1b14a22d035c)'
LOG: 'Kernel: connected (4867c6a2-5236-4fb7-af34-1b14a22d035c)'
blur
✔ should remove the focused class from the wrapper node
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/72db2276-6fc9-469c-afbb-ad326e432fab'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/72db2276-6fc9-469c-afbb-ad326e432fab'
LOG: 'Kernel: connected (8f95a987-e1c9-4b08-82d7-5a022f928ef3)'
LOG: 'Kernel: connected (8f95a987-e1c9-4b08-82d7-5a022f928ef3)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0f5a3a95-7c06-416e-92bf-8c57d62f0278'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0f5a3a95-7c06-416e-92bf-8c57d62f0278'
LOG: 'Kernel: connected (36804040-d156-49ad-996d-f8d27fe3d8d0)'
LOG: 'Kernel: connected (36804040-d156-49ad-996d-f8d27fe3d8d0)'
#onAfterAttach()
✔ should add event listeners
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/44bd4045-5cc5-4479-8917-72ff60f347d6'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/44bd4045-5cc5-4479-8917-72ff60f347d6'
LOG: 'Kernel: connected (72db2276-6fc9-469c-afbb-ad326e432fab)'
LOG: 'Kernel: connected (72db2276-6fc9-469c-afbb-ad326e432fab)'
LOG: 'Kernel: connected (0f5a3a95-7c06-416e-92bf-8c57d62f0278)'
LOG: 'Kernel: connected (0f5a3a95-7c06-416e-92bf-8c57d62f0278)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/81c37905-037a-4b2b-bdaa-f98d2cd62090'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/81c37905-037a-4b2b-bdaa-f98d2cd62090'
#onBeforeDetach()
✔ should remove event listeners
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/72347039-0b37-4003-b804-12859ba1c8da'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/72347039-0b37-4003-b804-12859ba1c8da'
LOG: 'Kernel: connected (44bd4045-5cc5-4479-8917-72ff60f347d6)'
LOG: 'Kernel: connected (44bd4045-5cc5-4479-8917-72ff60f347d6)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/000b5f4e-607a-49f1-be52-2f5388a10a05'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/000b5f4e-607a-49f1-be52-2f5388a10a05'
LOG: 'Kernel: connected (81c37905-037a-4b2b-bdaa-f98d2cd62090)'
LOG: 'Kernel: connected (81c37905-037a-4b2b-bdaa-f98d2cd62090)'
#onValueChanged()
✔ should update the metadata
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f3f14ef8-6753-4d42-a7ac-effeafc84d96'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f3f14ef8-6753-4d42-a7ac-effeafc84d96'
LOG: 'Kernel: connected (72347039-0b37-4003-b804-12859ba1c8da)'
LOG: 'Kernel: connected (72347039-0b37-4003-b804-12859ba1c8da)'
#onActiveCellChanged()
✔ should update the select value
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38e0967d-07b9-4f9f-a9a5-de17a9f0c06e'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38e0967d-07b9-4f9f-a9a5-de17a9f0c06e'
LOG: 'Kernel: connected (000b5f4e-607a-49f1-be52-2f5388a10a05)'
LOG: 'Kernel: connected (000b5f4e-607a-49f1-be52-2f5388a10a05)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/b619c7af-73ff-4e37-8a6b-971e9e040566'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/b619c7af-73ff-4e37-8a6b-971e9e040566'
LOG: 'Kernel: connected (5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa)'
LOG: 'Kernel: connected (5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa)'
LOG: 'Kernel: connected (f3f14ef8-6753-4d42-a7ac-effeafc84d96)'
LOG: 'Kernel: connected (f3f14ef8-6753-4d42-a7ac-effeafc84d96)'
#onMetadataChanged()
✔ should update the select value
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/1e2d77af-8afb-463a-9707-e1d10e393b9d'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/1e2d77af-8afb-463a-9707-e1d10e393b9d'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1'
LOG: 'Kernel: connected (38e0967d-07b9-4f9f-a9a5-de17a9f0c06e)'
LOG: 'Kernel: connected (38e0967d-07b9-4f9f-a9a5-de17a9f0c06e)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/2d18f4e7-6e21-4785-a9dc-1daaf72cda68'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/2d18f4e7-6e21-4785-a9dc-1daaf72cda68'
LOG: 'Kernel: connected (b619c7af-73ff-4e37-8a6b-971e9e040566)'
LOG: 'Kernel: connected (b619c7af-73ff-4e37-8a6b-971e9e040566)'
CellTools.createSlideShowSelector()
✔ should create a slide show selector
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60dc3686-cf8e-49ae-913e-495899b2bd4d'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60dc3686-cf8e-49ae-913e-495899b2bd4d'
LOG: 'Kernel: connected (1e2d77af-8afb-463a-9707-e1d10e393b9d)'
LOG: 'Kernel: connected (1e2d77af-8afb-463a-9707-e1d10e393b9d)'
LOG: 'Kernel: connected (a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1)'
LOG: 'Kernel: connected (a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1)'
CellTools.createNBConvertSelector()
✔ should create a raw mimetype selector
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e'
LOG: 'Kernel: connected (2d18f4e7-6e21-4785-a9dc-1daaf72cda68)'
LOG: 'Kernel: connected (2d18f4e7-6e21-4785-a9dc-1daaf72cda68)'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0c1ed33b-7e97-4e15-b6d8-28d7203e2214'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/0c1ed33b-7e97-4e15-b6d8-28d7203e2214'
LOG: 'Kernel: connected (60dc3686-cf8e-49ae-913e-495899b2bd4d)'
LOG: 'Kernel: connected (60dc3686-cf8e-49ae-913e-495899b2bd4d)'
✔ should have no effect on a code cell
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/98514341-ce05-45f3-ac14-110b4f25d73c'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/98514341-ce05-45f3-ac14-110b4f25d73c'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60061a27-5ba5-47f8-a947-c9a28c65d814'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/60061a27-5ba5-47f8-a947-c9a28c65d814'
ToolbarItems
#createSaveButton()
✔ should save when clicked
LOG: 'Kernel: connected (820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e)'
LOG: 'Kernel: connected (820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e)'
LOG: 'Kernel: connected (0c1ed33b-7e97-4e15-b6d8-28d7203e2214)'
LOG: 'Kernel: connected (0c1ed33b-7e97-4e15-b6d8-28d7203e2214)'
✔ should have the `'jp-SaveIcon'` class
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/fadecf02-8ee0-430c-bf8e-640a6d592bf5'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/fadecf02-8ee0-430c-bf8e-640a6d592bf5'
#createInsertButton()
✔ should insert below when clicked
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a73cd7a7-7c9e-4936-844a-d09da15ed643'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/a73cd7a7-7c9e-4936-844a-d09da15ed643'
✔ should have the `'jp-AddIcon'` class
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/2b39d531-3cdd-4ac5-899b-f72f872951ec'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/2b39d531-3cdd-4ac5-899b-f72f872951ec'
#createCutButton()
✔ should cut when clicked
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/58cccae0-2c4a-4b86-9489-2ff2791b68e2'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/58cccae0-2c4a-4b86-9489-2ff2791b68e2'
✔ should have the `'jp-CutIcon'` class
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ae132f66-a1c2-4b02-8616-39440b658ed2'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ae132f66-a1c2-4b02-8616-39440b658ed2'
#createCopyButton()
✔ should copy when clicked
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/5753e656-998e-4a05-ac6e-090b8c172818'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/5753e656-998e-4a05-ac6e-090b8c172818'
✔ should have the `'jp-CopyIcon'` class
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/d91e63ea-75cd-44f9-b6c2-22f855092013'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/d91e63ea-75cd-44f9-b6c2-22f855092013'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/de734d7b-911b-4383-9def-32b5f4762fe3'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/de734d7b-911b-4383-9def-32b5f4762fe3'
#createPasteButton()
✔ should paste when clicked
✔ should have the `'jp-PasteIcon'` class
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c89c1e0c-f137-487c-a70a-81f768cfa1cd'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c89c1e0c-f137-487c-a70a-81f768cfa1cd'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/9a5b3037-2da5-437f-8bf4-b3635b428cc6'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/9a5b3037-2da5-437f-8bf4-b3635b428cc6'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38c845f3-2376-48ba-a61a-9768e33c0fc1'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/38c845f3-2376-48ba-a61a-9768e33c0fc1'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ea2ef57a-9421-4b05-9d41-a30f0b746285'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/ea2ef57a-9421-4b05-9d41-a30f0b746285'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cc9b75d5-41b2-4fe3-b562-271fc2f27aae'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/cc9b75d5-41b2-4fe3-b562-271fc2f27aae'
#createRunButton()
✖ should run and advance when clicked
HeadlessChrome 0.0.0 (Linux 0.0.0) @jupyterlab/notebook ToolbarItems #createRunButton() should run and advance when clicked FAILED
Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
✔ should have the `'jp-RunIcon'` class
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/445d042f-72e9-4d7f-a757-56e45f7b2aca'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/445d042f-72e9-4d7f-a757-56e45f7b2aca'
#createCellTypeItem()
✔ should track the cell type of the current cell
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c97584d2-5e04-4ac0-8ff5-48cf7a5c91bb'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c97584d2-5e04-4ac0-8ff5-48cf7a5c91bb'
✔ should display `'-'` if multiple cell types are selected
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/dba14f9b-3f4e-4b8b-9a13-26c6ff8fd471'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/dba14f9b-3f4e-4b8b-9a13-26c6ff8fd471'
✔ should display the active cell type if multiple cells of the same type are selected
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c8900b82-f519-4633-b35a-01a75935bc2d'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/c8900b82-f519-4633-b35a-01a75935bc2d'
#populateDefaults()
✔ should add the default items to the panel toolbar
NotebookModel
#constructor()
✔ should create a notebook model
✔ should accept an optional language preference
✔ should add a single code cell by default
✔ should accept an optional factory
#metadataChanged
✔ should be emitted when a metadata field changes
✔ should not be emitted when the value does not change
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f720821a-1593-4dba-9cb1-716b510f6610'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/f720821a-1593-4dba-9cb1-716b510f6610'
#cells
✔ should add an empty code cell by default
✔ should be reset when loading from disk
✔ should allow undoing a change
cells `changed` signal
✔ should emit a `contentChanged` signal upon cell addition
✔ should emit a `contentChanged` signal upon cell removal
✔ should emit a `contentChanged` signal upon cell move
✔ should set the dirty flag
✔ should add a new code cell when cells are cleared
cell `changed` signal
✔ should be called when a cell content changes
✔ should emit the `contentChanged` signal
✔ should set the dirty flag
#contentFactory
✔ should be the cell model factory used by the model
#nbformat
✔ should get the major version number of the nbformat
#nbformatMinor
✔ should get the minor version number of the nbformat
#defaultKernelName()
✔ should get the default kernel name of the document
✔ should default to an empty string
#defaultKernelLanguage
✔ should get the default kernel language of the document
✔ should default to an empty string
✔ should be set from the constructor arg
#dispose()
✔ should dispose of the resources held by the model
✔ should be safe to call multiple times
#toString()
✔ should serialize the model to a string
#fromString()
✔ should deserialize the model from a string
✔ should set the dirty flag
#toJSON()
✔ should serialize the model to JSON
#fromJSON()
✔ should serialize the model from JSON
✔ should set the dirty flag
#metadata
✔ should have default values
✔ should set the dirty flag when changed
✔ should emit the `contentChanged` signal
✔ should emit the `metadataChanged` signal
.ContentFactory
#codeCellContentFactory
✔ should be a code cell content factory
✔ should be settable in the constructor
#createCodeCell()
✔ should create a new code cell
✔ should clone an existing code cell
✔ should clone an existing raw cell
#createRawCell()
✔ should create a new raw cell
✔ should clone an existing raw cell
✔ should clone an existing code cell
#createMarkdownCell()
✔ should create a new markdown cell
✔ should clone an existing markdown cell
✔ should clone an existing raw cell
#modelDB
✔ should be undefined by default
#clone()
✔ should create a new content factory with a new IModelDB
.defaultContentFactory
✔ should be a ContentFactory
NotebookModelFactory
#constructor
✔ should create a new notebook model factory
✔ should accept a code cell content factory
✔ should accept a notebook model content factory
#contentFactory
✔ should be the content factory used by the model factory
#name
✔ should get the name of the model factory
#contentType
✔ should get the file type
#fileFormat
✔ should get the file format
#isDisposed
✔ should get whether the factory is disposed
#dispose()
✔ should dispose of the model factory
✔ should be safe to call multiple times
#createNew()
✔ should create a new model for a given path
✔ should add an empty code cell by default
✔ should accept a language preference
#preferredLanguage()
✔ should always return an empty string
NotebookPanel
#constructor()
✔ should create a notebook panel
✔ should change notebook to edit mode if we have a single empty code cell
#toolbar
✔ should be the toolbar used by the widget
#content
✔ should be the notebook content widget
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/12f7a7b3-4024-42d4-9f28-19a31a3c396d'
LOG: 'Starting WebSocket:', 'ws://localhost:8888/api/kernels/12f7a7b3-4024-42d4-9f28-19a31a3c396d'
#context
✔ should get the document context for the widget
#dispose()
✔ should dispose of the resources used by the widget
✔ should be safe to call more than once
.ContentFactory
#constructor
✔ should create a new ContentFactory
#createNotebook()
✔ should create a notebook widget
NotebookTracker
#constructor()
✔ should create a NotebookTracker
#activeCell
✔ should be `null` if there is no tracked notebook panel
✔ should be `null` if a tracked notebook has no active cell
✔ should be the active cell if a tracked notebook has one
#activeCellChanged
✔ should emit a signal when the active cell changes
#onCurrentChanged()
✔ should be called when the active cell changes
@jupyter/notebook
StaticNotebook
#constructor()
✔ should create a notebook widget
✔ should add the `jp-Notebook` class
✔ should accept an optional render
✔ should accept an optional editor config
#modelChanged
✔ should be emitted when the model changes
#modelContentChanged
✔ should be emitted when a cell is added
✔ should be emitted when metadata is set
#model
✔ should get the model for the widget
✔ should set the model for the widget
✔ should emit the `modelChanged` signal
✔ should be a no-op if the value does not change
✔ should add the model cells to the layout
✔ should set the mime types of the cell widgets
`cells.changed` signal
✔ should handle changes to the model cell list
✔ should handle a remove
✔ should handle an add
✔ should handle a move
✔ should handle a clear
#rendermime
✔ should be the rendermime instance used by the widget
#contentFactory
✔ should be the cell widget contentFactory used by the widget
#editorConfig
✔ should be the cell widget contentFactory used by the widget
✔ should be settable
#codeMimetype
✔ should get the mime type for code cells
✔ should be set from language metadata
#widgets
✔ should get the child widget at a specified index
✔ should return `undefined` if out of range
✔ should get the number of child widgets
#dispose()
✔ should dispose of the resources held by the widget
✔ should be safe to call multiple times
#onModelChanged()
✔ should be called when the model changes
✔ should not be called if the model does not change
#onMetadataChanged()
✔ should be called when the metadata on the notebook changes
✔ should update the `codeMimetype`
✔ should update the cell widget mimetype
#onCellInserted()
✔ should be called when a cell is inserted
#onCellMoved()
✔ should be called when a cell is moved
#onCellRemoved()
✔ should be called when a cell is removed
.ContentFactory
#constructor
✔ should create a new ContentFactory
#createCodeCell({})
✔ should create a `CodeCell`
#createMarkdownCell({})
✔ should create a `MarkdownCell`
#createRawCell()
✔ should create a `RawCell`
Notebook
#stateChanged
✔ should be emitted when the state of the notebook changes
#activeCellChanged
✔ should be emitted when the active cell changes
✔ should not be emitted when the active cell does not change
#selectionChanged
✔ should be emitted when the selection changes
✔ should not be emitted when the selection does not change
#mode
✔ should get the interactivity mode of the notebook
✔ should set the interactivity mode of the notebook
✔ should emit the `stateChanged` signal
✔ should be a no-op if the value does not change
✔ should post an update request
✔ should deselect all cells if switching to edit mode
✔ should unrender a markdown cell when switching to edit mode
#activeCellIndex
✔ should get the active cell index of the notebook
✔ should set the active cell index of the notebook
✔ should clamp the index to the bounds of the notebook cells
✔ should emit the `stateChanged` signal
✔ should be a no-op if the value does not change
✔ should post an update request
✔ should update the active cell if necessary
#activeCell
✔ should get the active cell widget
#select()
✔ should select a cell widget
✔ should allow multiple widgets to be selected
#deselect()
✔ should deselect a cell
✔ should let the active cell be deselected
#isSelected()
✔ should get whether the cell is selected
✔ reports selection whether or not cell is active
#deselectAll()
✔ should deselect all cells
#extendContiguousSelectionTo()
✔ should work in each permutation of anchor, head, and index
✔ should work when we only have an active cell, with no existing selection
✔ should clip when the index is greater than the last index
✔ should clip when the index is greater than the last index with no existing selection
✔ should clip when the index is less than 0
✔ should clip when the index is less than 0 with no existing selection
✔ handles the case of no cells
#getContiguousSelection()
✔ throws an error when the selection is not contiguous
✔ throws an error if the active cell is not at an endpoint
✔ returns null values if there is no selection
✔ handles the case of no cells
✔ works if head is before the anchor
✔ works if head is after the anchor
✔ works if head and anchor are the same
#handleEvent()
mousedown
✔ should set the active cell index
✔ should be a no-op if not not a cell
✔ should preserve "command" mode if in a markdown cell
✔ should extend selection if invoked with shift
✔ should leave a markdown cell rendered
✔ should remove selection and switch to command mode
✔ should have no effect on shift right click
dblclick
✔ should unrender a markdown cell
focusin
✔ should change to edit mode if a child cell takes focus
✔ should change to command mode if the widget takes focus
focusout
✔ should switch to command mode
✔ should set command mode
#onAfterAttach()
✔ should add event listeners
✔ should post an update request
#onBeforeDetach()
✔ should remove event listeners
#onActivateRequest()
✔ should focus the node after an update
✔ should post an `update-request
#onUpdateRequest()
✔ should apply the command class if in command mode
✔ should apply the edit class if in edit mode
✔ should add the active class to the active widget
✔ should set the selected class on the selected widgets
✔ should add the multi select class if there is more than one widget
#onCellInserted()
✔ should post an `update-request
✔ should update the active cell if necessary
✔ should keep the currently active cell active
`edgeRequested` signal
✔ should activate the previous cell if top is requested
✔ should activate the next cell if bottom is requested
#onCellMoved()
✔ should update the active cell index if necessary
#onCellRemoved()
✔ should post an `update-request
✔ should update the active cell if necessary
✔ should keep the currently active cell active
NotebookWidgetFactory
#constructor()
✔ should create a notebook widget factory
#isDisposed
✔ should get whether the factory has been disposed
#dispose()
✔ should dispose of the resources held by the factory
✔ should be safe to call multiple times
#editorConfig
✔ should be the editor config passed into the constructor
✔ should be settable
#createNew()
✔ should create a new `NotebookPanel` widget
✔ should create a clone of the rendermime
✔ should pass the editor config to the notebook
✔ should populate the default toolbar items
Finished in 2 mins 30.132 secs / 25.623 secs
SUMMARY:
✔ 397 tests completed
✖ 1 test failed
FAILED TESTS:
@jupyterlab/notebook
ToolbarItems
#createRunButton()
✖ should run and advance when clicked
HeadlessChrome 0.0.0 (Linux 0.0.0)
Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.
TOTAL: 1 FAILED, 397 SUCCESS
=============================== Coverage summary ===============================
Statements : 77.02% ( 1535/1993 )
Branches : 65.72% ( 602/916 )
Functions : 80.11% ( 286/357 )
Lines : 76.98% ( 1532/1990 )
================================================================================
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
at Promise.all.then.arr (/home/travis/build/jupyterlab/jupyterlab/node_modules/execa/index.js:236:11)
at <anonymous>
at process._tickCallback (internal/process/next_tick.js:188:7)
code: 1,
killed: false,
stdout: '$ python run-test.py --browsers=ChromeHeadless karma-cov.conf.js\nStarting type checking service...\nUsing \u001b[1m1 worker\u001b[22m with \u001b[1m2048MB\u001b[22m memory limit\n\n\u001b[4m\u001b[1mSTART:\u001b[22m\u001b[24m\n(node:6933) DeprecationWarning: Tapable.plugin is deprecated. Use new API on `.hooks` instead\nType checking in progress...\n\n\u001b[32mNo type errors found\u001b[39m\nVersion: typescript \u001b[1m2.9.2\u001b[22m\nTime: \u001b[1m9237\u001b[22mms\n\n\u001b[32m26 07 2018 19:52:59.852:INFO [karma]: \u001b[39mKarma v2.0.4 server started at http://0.0.0.0:9876/\n\u001b[32m26 07 2018 19:52:59.854:INFO [launcher]: \u001b[39mLaunching browser ChromeHeadless with unlimited concurrency\n\u001b[32m26 07 2018 19:52:59.857:INFO [launcher]: \u001b[39mStarting browser ChromeHeadless\n\u001b[32m26 07 2018 19:53:00.388:INFO [HeadlessChrome 0.0.0 (Linux 0.0.0)]: \u001b[39mConnected on socket OxLEqK9PWiQsRfAHAAAA with id 26472421\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/cab07031-ba93-4ffc-80a4-12b7a5adca25\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/cab07031-ba93-4ffc-80a4-12b7a5adca25\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (cab07031-ba93-4ffc-80a4-12b7a5adca25)\'\nLOG: \'Kernel: connected (cab07031-ba93-4ffc-80a4-12b7a5adca25)\'\n\u001b[1m @jupyterlab/notebook\u001b[22m\n\u001b[1m NotebookActions\u001b[22m\n\u001b[1m #executed\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should emit when Markdown and code cells are run\u001b[39m\n\u001b[1m #splitCell({})\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should split the active cell into two cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve leading white space in the second cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clear the existing selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should activate the second cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve the types of each cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should create two empty cells if there is no content\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve the widget mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able\u001b[39m\n\u001b[1m #mergeCells\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should merge the selected cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should select the next cell if there is only one cell selected\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clear the outputs of a code cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve the widget mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should unrender a markdown cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve the cell type of the active cell\u001b[39m\n\u001b[1m #deleteCells()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should delete the selected cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should switch to command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should activate the cell after the last selected cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should select the previous cell if the last cell is deleted\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should add a code cell if all cells are deleted\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able if all the cells are deleted\u001b[39m\n\u001b[1m #insertAbove()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should insert a code cell above the active cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should widget mode should be preserved\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clear the existing selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be the new active cell\u001b[39m\n\u001b[1m #insertBelow()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should insert a code cell below the active cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should widget mode should be preserved\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clear the existing selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be the new active cell\u001b[39m\n\u001b[1m #changeCellType()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should change the selected cell type(s)\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve the widget mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clear the existing selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should unrender markdown cells\u001b[39m\n\u001b[1m #run()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should run the selected cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should activate the last selected cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clear the selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should change to command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should handle no session\u001b[39m\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\n\u001b[32m \u001b[32m✔\u001b[32m should stop executing code cells on an error\u001b[39m\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\n\u001b[32m \u001b[32m✔\u001b[32m should render all markdown cells on an error\u001b[39m\n\u001b[1m #runAndAdvance()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should run the selected cells \u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\n\u001b[32m \u001b[32m✔\u001b[32m should clear the existing selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should change to command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should activate the cell after the last selected cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new code cell in edit mode if necessary\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should allow an undo of the new cell\u001b[39m\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\n\u001b[32m \u001b[32m✔\u001b[32m should stop executing code cells on an error\u001b[39m\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\n\u001b[32m \u001b[32m✔\u001b[32m should render all markdown cells on an error\u001b[39m\n\u001b[1m #runAndInsert()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should run the selected cells \u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clear the existing selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should insert a new code cell in edit mode after the last selected cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should allow an undo of the cell insert\u001b[39m\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\n\u001b[32m \u001b[32m✔\u001b[32m should stop executing code cells on an error\u001b[39m\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: starting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\n\u001b[32m \u001b[32m✔\u001b[32m should render all markdown cells on an error\u001b[39m\n\u001b[1m #runAll()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should run all of the cells in the notebok\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should change to command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clear the existing selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should activate the last cell\u001b[39m\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\n\u001b[32m \u001b[32m✔\u001b[32m should stop executing code cells on an error\u001b[39m\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: restarting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: reconnecting (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/87b6efc4-2c37-4d5d-a57d-f020e4c833ac\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\nLOG: \'Kernel: connected (87b6efc4-2c37-4d5d-a57d-f020e4c833ac)\'\n\u001b[32m \u001b[32m✔\u001b[32m should render all markdown cells on an error\u001b[39m\n\u001b[1m #selectAbove(`)\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should select the cell above the active cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not wrap around to the bottom\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve the mode\u001b[39m\n\u001b[1m #selectBelow()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should select the cell below the active cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not wrap around to the top\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve the mode\u001b[39m\n\u001b[1m #extendSelectionAbove()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should extend the selection to the cell above\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should change to command mode if there is a selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not wrap around to the bottom\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should deselect the current cell if the cell above is selected\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should select only the first cell if we move from the second to first\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should activate the cell\u001b[39m\n\u001b[1m #extendSelectionBelow()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should extend the selection to the cell below\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should change to command mode if there is a selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not wrap around to the top\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should deselect the current cell if the cell below is selected\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should select only the last cell if we move from the second last to last\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should activate the cell\u001b[39m\n\u001b[1m #moveUp()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should move the selected cells up\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not wrap around to the bottom\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able\u001b[39m\n\u001b[1m #moveDown()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should move the selected cells down\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not wrap around to the top\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able\u001b[39m\n\u001b[1m #copy()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should copy the selected cells to a clipboard\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should change to command mode\u001b[39m\n\u001b[1m #cut()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should cut the selected cells to a clipboard\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should change to command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should add a new code cell if all cells were cut\u001b[39m\n\u001b[1m #paste()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should paste cells from a clipboard\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no cell data on the clipboard\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should change to command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be undo-able\u001b[39m\n\u001b[1m #undo()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should undo a cell action\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should switch the widget to command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there are no cell actions to undo\u001b[39m\n\u001b[1m #redo()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should redo a cell action\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should switch the widget to command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there are no cell actions to redo\u001b[39m\n\u001b[1m #toggleAllLineNumbers()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should toggle line numbers on all cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be based on the state of the active cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve the widget mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[1m #clearOutputs()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should clear the outputs on the selected cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve the widget mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[1m #clearAllOutputs()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should clear the outputs on all cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve the widget mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[1m #persistViewState()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m input hidden, output hidden and scrolled\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m input hidden, output hidden and not scrolled\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m input hidden, output shown and not scrolled\u001b[39m\n\u001b[1m #setMarkdownHeader()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should set the markdown header level of selected cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should convert the cells to markdown type\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be clamped between 1 and 6\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if there is no model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should replace an existing header\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should replace leading white space\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should unrender the cells\u001b[39m\n\u001b[1m #trust()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should trust the notebook cells if the user accepts\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not trust the notebook cells if the user aborts\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should bail if the model is `null`\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should show a dialog if all cells are trusted\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/4b3fb9be-0928-4384-bb41-c1c9abf9c3a4\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/4b3fb9be-0928-4384-bb41-c1c9abf9c3a4\'\n\u001b[1m celltools\u001b[22m\n\u001b[1m CellTools\u001b[22m\n\u001b[1m #constructor()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a celltools object\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/c41909eb-05b5-455c-94c8-bf5a6c856d01\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/c41909eb-05b5-455c-94c8-bf5a6c856d01\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/52860bff-6a7a-4537-9b48-a16ffbba2c82\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/52860bff-6a7a-4537-9b48-a16ffbba2c82\'\nLOG: \'Kernel: connected (4b3fb9be-0928-4384-bb41-c1c9abf9c3a4)\'\nLOG: \'Kernel: connected (4b3fb9be-0928-4384-bb41-c1c9abf9c3a4)\'\n\u001b[1m #activeCell\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the active cell\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/263a47b1-bbc3-4ff4-b0bb-78368ba968ca\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/263a47b1-bbc3-4ff4-b0bb-78368ba968ca\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/8fe02ad7-35c0-42a2-8692-f3449f122fd2\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/8fe02ad7-35c0-42a2-8692-f3449f122fd2\'\nLOG: \'Kernel: connected (c41909eb-05b5-455c-94c8-bf5a6c856d01)\'\nLOG: \'Kernel: connected (c41909eb-05b5-455c-94c8-bf5a6c856d01)\'\n\u001b[1m #selectedCells\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the currently selected cells\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/c0747388-5209-4279-9437-e7bc56e8f506\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/c0747388-5209-4279-9437-e7bc56e8f506\'\nLOG: \'Kernel: connected (52860bff-6a7a-4537-9b48-a16ffbba2c82)\'\nLOG: \'Kernel: connected (52860bff-6a7a-4537-9b48-a16ffbba2c82)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/629a4e1c-58c0-42d9-bcbc-bef60fe6a7be\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/629a4e1c-58c0-42d9-bcbc-bef60fe6a7be\'\nLOG: \'Kernel: connected (263a47b1-bbc3-4ff4-b0bb-78368ba968ca)\'\nLOG: \'Kernel: connected (263a47b1-bbc3-4ff4-b0bb-78368ba968ca)\'\n\u001b[1m #addItem()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should add a cell tool item\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/1013e5d1-4d04-4d3c-a1dd-28decb37172c\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/1013e5d1-4d04-4d3c-a1dd-28decb37172c\'\nLOG: \'Kernel: connected (8fe02ad7-35c0-42a2-8692-f3449f122fd2)\'\nLOG: \'Kernel: connected (8fe02ad7-35c0-42a2-8692-f3449f122fd2)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/bb0822a6-1b83-4d61-841a-4faf36d7ae7e\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/bb0822a6-1b83-4d61-841a-4faf36d7ae7e\'\nLOG: \'Kernel: connected (c0747388-5209-4279-9437-e7bc56e8f506)\'\nLOG: \'Kernel: connected (c0747388-5209-4279-9437-e7bc56e8f506)\'\nLOG: \'Kernel: connected (629a4e1c-58c0-42d9-bcbc-bef60fe6a7be)\'\nLOG: \'Kernel: connected (629a4e1c-58c0-42d9-bcbc-bef60fe6a7be)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/38ea7c07-55c1-47aa-b8f9-31247b38238d\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/38ea7c07-55c1-47aa-b8f9-31247b38238d\'\n\u001b[32m \u001b[32m✔\u001b[32m should accept a rank\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/f17e3a51-1ab1-4e76-90dc-0ba4c38338bf\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/f17e3a51-1ab1-4e76-90dc-0ba4c38338bf\'\nLOG: \'Kernel: connected (1013e5d1-4d04-4d3c-a1dd-28decb37172c)\'\nLOG: \'Kernel: connected (1013e5d1-4d04-4d3c-a1dd-28decb37172c)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/be323416-f4df-4a10-a9c4-d6fcb1af81f8\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/be323416-f4df-4a10-a9c4-d6fcb1af81f8\'\nLOG: \'Kernel: connected (bb0822a6-1b83-4d61-841a-4faf36d7ae7e)\'\nLOG: \'Kernel: connected (bb0822a6-1b83-4d61-841a-4faf36d7ae7e)\'\n\u001b[1m CellTools.Tool\u001b[22m\n\u001b[1m #constructor\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new base tool\u001b[39m\nLOG: \'Kernel: connected (38ea7c07-55c1-47aa-b8f9-31247b38238d)\'\nLOG: \'Kernel: connected (38ea7c07-55c1-47aa-b8f9-31247b38238d)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/0a271a9d-98d7-4f05-8ea0-dc8edd7d494d\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/0a271a9d-98d7-4f05-8ea0-dc8edd7d494d\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/7d9c535e-d8cf-4587-92ea-bf036d8baef2\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/7d9c535e-d8cf-4587-92ea-bf036d8baef2\'\nLOG: \'Kernel: connected (f17e3a51-1ab1-4e76-90dc-0ba4c38338bf)\'\nLOG: \'Kernel: connected (f17e3a51-1ab1-4e76-90dc-0ba4c38338bf)\'\n\u001b[1m #parent\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the celltools object used by the tool\u001b[39m\nLOG: \'Kernel: connected (be323416-f4df-4a10-a9c4-d6fcb1af81f8)\'\nLOG: \'Kernel: connected (be323416-f4df-4a10-a9c4-d6fcb1af81f8)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d\'\n\u001b[1m #onActiveCellChanged()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be called when the active cell changes\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/60179413-bb1a-4a1a-9582-729e15b846c2\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/60179413-bb1a-4a1a-9582-729e15b846c2\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/da42386f-fc2b-4d7a-8d1e-6bf57b14e48f\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/da42386f-fc2b-4d7a-8d1e-6bf57b14e48f\'\nLOG: \'Kernel: connected (0a271a9d-98d7-4f05-8ea0-dc8edd7d494d)\'\nLOG: \'Kernel: connected (0a271a9d-98d7-4f05-8ea0-dc8edd7d494d)\'\nLOG: \'Kernel: connected (7d9c535e-d8cf-4587-92ea-bf036d8baef2)\'\nLOG: \'Kernel: connected (7d9c535e-d8cf-4587-92ea-bf036d8baef2)\'\nLOG: \'Kernel: connected (cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d)\'\nLOG: \'Kernel: connected (cc2d21cc-a36e-48e3-9bd4-c63abbd8dd1d)\'\n\u001b[1m #onSelectionChanged()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be called when the selection changes\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/a2c49f54-fd6c-4a1d-a45c-03f749a03c53\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/a2c49f54-fd6c-4a1d-a45c-03f749a03c53\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/e85325b5-2bfc-400a-bf12-2fb19dcbef21\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/e85325b5-2bfc-400a-bf12-2fb19dcbef21\'\nLOG: \'Kernel: connected (60179413-bb1a-4a1a-9582-729e15b846c2)\'\nLOG: \'Kernel: connected (60179413-bb1a-4a1a-9582-729e15b846c2)\'\n\u001b[1m #onMetadataChanged()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be called when the metadata changes\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/822a7e4b-7c3f-4d32-a89e-5b4f455ae848\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/822a7e4b-7c3f-4d32-a89e-5b4f455ae848\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/a33113e1-6db3-4db0-aeb8-a76b34461957\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/a33113e1-6db3-4db0-aeb8-a76b34461957\'\nLOG: \'Kernel: connected (da42386f-fc2b-4d7a-8d1e-6bf57b14e48f)\'\nLOG: \'Kernel: connected (da42386f-fc2b-4d7a-8d1e-6bf57b14e48f)\'\nLOG: \'Kernel: connected (a2c49f54-fd6c-4a1d-a45c-03f749a03c53)\'\nLOG: \'Kernel: connected (a2c49f54-fd6c-4a1d-a45c-03f749a03c53)\'\n\u001b[1m CellTools.ActiveCellTool\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new active cell tool\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/6f06d1b9-4f2b-4295-9062-11d68ac83b2e\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/6f06d1b9-4f2b-4295-9062-11d68ac83b2e\'\nLOG: \'Kernel: connected (e85325b5-2bfc-400a-bf12-2fb19dcbef21)\'\nLOG: \'Kernel: connected (e85325b5-2bfc-400a-bf12-2fb19dcbef21)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/458b28ac-2ef1-4882-a9af-fac78516f7ee\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/458b28ac-2ef1-4882-a9af-fac78516f7ee\'\nLOG: \'Kernel: connected (822a7e4b-7c3f-4d32-a89e-5b4f455ae848)\'\nLOG: \'Kernel: connected (822a7e4b-7c3f-4d32-a89e-5b4f455ae848)\'\nLOG: \'Kernel: connected (a33113e1-6db3-4db0-aeb8-a76b34461957)\'\nLOG: \'Kernel: connected (a33113e1-6db3-4db0-aeb8-a76b34461957)\'\n\u001b[32m \u001b[32m✔\u001b[32m should handle a change to the active cell\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/06a9ff11-eb93-4f0a-a021-cc8edce54664\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/06a9ff11-eb93-4f0a-a021-cc8edce54664\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/e2e7850b-cf27-4699-873a-75001c01f89a\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/e2e7850b-cf27-4699-873a-75001c01f89a\'\nLOG: \'Kernel: connected (6f06d1b9-4f2b-4295-9062-11d68ac83b2e)\'\nLOG: \'Kernel: connected (6f06d1b9-4f2b-4295-9062-11d68ac83b2e)\'\n\u001b[1m CellTools.MetadataEditorTool\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new metadata editor tool\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/39c4d6a6-6609-4ece-bde7-55970575850a\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/39c4d6a6-6609-4ece-bde7-55970575850a\'\nLOG: \'Kernel: connected (458b28ac-2ef1-4882-a9af-fac78516f7ee)\'\nLOG: \'Kernel: connected (458b28ac-2ef1-4882-a9af-fac78516f7ee)\'\nLOG: \'Kernel: connected (06a9ff11-eb93-4f0a-a021-cc8edce54664)\'\nLOG: \'Kernel: connected (06a9ff11-eb93-4f0a-a021-cc8edce54664)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d\'\nLOG: \'Kernel: connected (e2e7850b-cf27-4699-873a-75001c01f89a)\'\nLOG: \'Kernel: connected (e2e7850b-cf27-4699-873a-75001c01f89a)\'\n\u001b[32m \u001b[32m✔\u001b[32m should handle a change to the active cell\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/64fce29d-8b9b-445a-8179-19a3ec9bdd3c\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/64fce29d-8b9b-445a-8179-19a3ec9bdd3c\'\nLOG: \'Kernel: connected (39c4d6a6-6609-4ece-bde7-55970575850a)\'\nLOG: \'Kernel: connected (39c4d6a6-6609-4ece-bde7-55970575850a)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/dbb41cf2-847a-47a3-ad51-1c411aa944ef\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/dbb41cf2-847a-47a3-ad51-1c411aa944ef\'\n\u001b[32m \u001b[32m✔\u001b[32m should handle a change to the metadata\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/34e70446-2cc6-4fdb-a5c3-540512bdd2fc\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/34e70446-2cc6-4fdb-a5c3-540512bdd2fc\'\nLOG: \'Kernel: connected (861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d)\'\nLOG: \'Kernel: connected (861a4a9b-1a4a-4c9e-9be9-6be2ffd6ba7d)\'\nLOG: \'Kernel: connected (64fce29d-8b9b-445a-8179-19a3ec9bdd3c)\'\nLOG: \'Kernel: connected (64fce29d-8b9b-445a-8179-19a3ec9bdd3c)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/bc44d0de-62b2-4a5d-b425-457a5e397428\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/bc44d0de-62b2-4a5d-b425-457a5e397428\'\nLOG: \'Kernel: connected (dbb41cf2-847a-47a3-ad51-1c411aa944ef)\'\nLOG: \'Kernel: connected (dbb41cf2-847a-47a3-ad51-1c411aa944ef)\'\n\u001b[1m CellTools.KeySelector\u001b[22m\n\u001b[1m #constructor()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new key selector\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/829c2a11-b0d3-44fd-9306-0f60907521a8\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/829c2a11-b0d3-44fd-9306-0f60907521a8\'\nLOG: \'Kernel: connected (34e70446-2cc6-4fdb-a5c3-540512bdd2fc)\'\nLOG: \'Kernel: connected (34e70446-2cc6-4fdb-a5c3-540512bdd2fc)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/6e8760e1-33da-41e4-8e29-9b06e62c641a\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/6e8760e1-33da-41e4-8e29-9b06e62c641a\'\nLOG: \'Kernel: connected (bc44d0de-62b2-4a5d-b425-457a5e397428)\'\nLOG: \'Kernel: connected (bc44d0de-62b2-4a5d-b425-457a5e397428)\'\n\u001b[1m #key\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the key used by the selector\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/7ec81dc1-fe0c-455a-99f6-f1645e4b98ba\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/7ec81dc1-fe0c-455a-99f6-f1645e4b98ba\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/4b42030d-6c01-4d44-ba53-2841d997f2c5\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/4b42030d-6c01-4d44-ba53-2841d997f2c5\'\nLOG: \'Kernel: connected (829c2a11-b0d3-44fd-9306-0f60907521a8)\'\nLOG: \'Kernel: connected (829c2a11-b0d3-44fd-9306-0f60907521a8)\'\n\u001b[1m #selectNode\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the select node\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/21f3615d-89ea-406b-b29c-7ac10a133f98\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/21f3615d-89ea-406b-b29c-7ac10a133f98\'\nLOG: \'Kernel: connected (6e8760e1-33da-41e4-8e29-9b06e62c641a)\'\nLOG: \'Kernel: connected (6e8760e1-33da-41e4-8e29-9b06e62c641a)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/3897d54f-c5d5-4e86-b0ee-275885a89d97\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/3897d54f-c5d5-4e86-b0ee-275885a89d97\'\nLOG: \'Kernel: connected (7ec81dc1-fe0c-455a-99f6-f1645e4b98ba)\'\nLOG: \'Kernel: connected (7ec81dc1-fe0c-455a-99f6-f1645e4b98ba)\'\n\u001b[1m #handleEvent()\u001b[22m\n\u001b[1m change\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should update the metadata\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/ba984f07-094b-4f1d-b345-2f8142180876\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/ba984f07-094b-4f1d-b345-2f8142180876\'\nLOG: \'Kernel: connected (4b42030d-6c01-4d44-ba53-2841d997f2c5)\'\nLOG: \'Kernel: connected (4b42030d-6c01-4d44-ba53-2841d997f2c5)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/4867c6a2-5236-4fb7-af34-1b14a22d035c\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/4867c6a2-5236-4fb7-af34-1b14a22d035c\'\nLOG: \'Kernel: connected (21f3615d-89ea-406b-b29c-7ac10a133f98)\'\nLOG: \'Kernel: connected (21f3615d-89ea-406b-b29c-7ac10a133f98)\'\n\u001b[1m focus\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should add the focused class to the wrapper node\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/8f95a987-e1c9-4b08-82d7-5a022f928ef3\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/8f95a987-e1c9-4b08-82d7-5a022f928ef3\'\nLOG: \'Kernel: connected (3897d54f-c5d5-4e86-b0ee-275885a89d97)\'\nLOG: \'Kernel: connected (3897d54f-c5d5-4e86-b0ee-275885a89d97)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/36804040-d156-49ad-996d-f8d27fe3d8d0\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/36804040-d156-49ad-996d-f8d27fe3d8d0\'\nLOG: \'Kernel: connected (ba984f07-094b-4f1d-b345-2f8142180876)\'\nLOG: \'Kernel: connected (ba984f07-094b-4f1d-b345-2f8142180876)\'\nLOG: \'Kernel: connected (4867c6a2-5236-4fb7-af34-1b14a22d035c)\'\nLOG: \'Kernel: connected (4867c6a2-5236-4fb7-af34-1b14a22d035c)\'\n\u001b[1m blur\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should remove the focused class from the wrapper node\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/72db2276-6fc9-469c-afbb-ad326e432fab\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/72db2276-6fc9-469c-afbb-ad326e432fab\'\nLOG: \'Kernel: connected (8f95a987-e1c9-4b08-82d7-5a022f928ef3)\'\nLOG: \'Kernel: connected (8f95a987-e1c9-4b08-82d7-5a022f928ef3)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/0f5a3a95-7c06-416e-92bf-8c57d62f0278\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/0f5a3a95-7c06-416e-92bf-8c57d62f0278\'\nLOG: \'Kernel: connected (36804040-d156-49ad-996d-f8d27fe3d8d0)\'\nLOG: \'Kernel: connected (36804040-d156-49ad-996d-f8d27fe3d8d0)\'\n\u001b[1m #onAfterAttach()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should add event listeners\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/44bd4045-5cc5-4479-8917-72ff60f347d6\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/44bd4045-5cc5-4479-8917-72ff60f347d6\'\nLOG: \'Kernel: connected (72db2276-6fc9-469c-afbb-ad326e432fab)\'\nLOG: \'Kernel: connected (72db2276-6fc9-469c-afbb-ad326e432fab)\'\nLOG: \'Kernel: connected (0f5a3a95-7c06-416e-92bf-8c57d62f0278)\'\nLOG: \'Kernel: connected (0f5a3a95-7c06-416e-92bf-8c57d62f0278)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/81c37905-037a-4b2b-bdaa-f98d2cd62090\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/81c37905-037a-4b2b-bdaa-f98d2cd62090\'\n\u001b[1m #onBeforeDetach()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should remove event listeners\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/72347039-0b37-4003-b804-12859ba1c8da\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/72347039-0b37-4003-b804-12859ba1c8da\'\nLOG: \'Kernel: connected (44bd4045-5cc5-4479-8917-72ff60f347d6)\'\nLOG: \'Kernel: connected (44bd4045-5cc5-4479-8917-72ff60f347d6)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/000b5f4e-607a-49f1-be52-2f5388a10a05\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/000b5f4e-607a-49f1-be52-2f5388a10a05\'\nLOG: \'Kernel: connected (81c37905-037a-4b2b-bdaa-f98d2cd62090)\'\nLOG: \'Kernel: connected (81c37905-037a-4b2b-bdaa-f98d2cd62090)\'\n\u001b[1m #onValueChanged()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should update the metadata\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/f3f14ef8-6753-4d42-a7ac-effeafc84d96\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/f3f14ef8-6753-4d42-a7ac-effeafc84d96\'\nLOG: \'Kernel: connected (72347039-0b37-4003-b804-12859ba1c8da)\'\nLOG: \'Kernel: connected (72347039-0b37-4003-b804-12859ba1c8da)\'\n\u001b[1m #onActiveCellChanged()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should update the select value\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/38e0967d-07b9-4f9f-a9a5-de17a9f0c06e\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/38e0967d-07b9-4f9f-a9a5-de17a9f0c06e\'\nLOG: \'Kernel: connected (000b5f4e-607a-49f1-be52-2f5388a10a05)\'\nLOG: \'Kernel: connected (000b5f4e-607a-49f1-be52-2f5388a10a05)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/b619c7af-73ff-4e37-8a6b-971e9e040566\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/b619c7af-73ff-4e37-8a6b-971e9e040566\'\nLOG: \'Kernel: connected (5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa)\'\nLOG: \'Kernel: connected (5b74e3a4-0f2d-46fc-bbfd-694ba5f594aa)\'\nLOG: \'Kernel: connected (f3f14ef8-6753-4d42-a7ac-effeafc84d96)\'\nLOG: \'Kernel: connected (f3f14ef8-6753-4d42-a7ac-effeafc84d96)\'\n\u001b[1m #onMetadataChanged()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should update the select value\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/1e2d77af-8afb-463a-9707-e1d10e393b9d\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/1e2d77af-8afb-463a-9707-e1d10e393b9d\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1\'\nLOG: \'Kernel: connected (38e0967d-07b9-4f9f-a9a5-de17a9f0c06e)\'\nLOG: \'Kernel: connected (38e0967d-07b9-4f9f-a9a5-de17a9f0c06e)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/2d18f4e7-6e21-4785-a9dc-1daaf72cda68\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/2d18f4e7-6e21-4785-a9dc-1daaf72cda68\'\nLOG: \'Kernel: connected (b619c7af-73ff-4e37-8a6b-971e9e040566)\'\nLOG: \'Kernel: connected (b619c7af-73ff-4e37-8a6b-971e9e040566)\'\n\u001b[1m CellTools.createSlideShowSelector()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a slide show selector\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/60dc3686-cf8e-49ae-913e-495899b2bd4d\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/60dc3686-cf8e-49ae-913e-495899b2bd4d\'\nLOG: \'Kernel: connected (1e2d77af-8afb-463a-9707-e1d10e393b9d)\'\nLOG: \'Kernel: connected (1e2d77af-8afb-463a-9707-e1d10e393b9d)\'\nLOG: \'Kernel: connected (a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1)\'\nLOG: \'Kernel: connected (a4ccc214-8a77-4dd2-ad1a-eb8f638e07c1)\'\n\u001b[1m CellTools.createNBConvertSelector()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a raw mimetype selector\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e\'\nLOG: \'Kernel: connected (2d18f4e7-6e21-4785-a9dc-1daaf72cda68)\'\nLOG: \'Kernel: connected (2d18f4e7-6e21-4785-a9dc-1daaf72cda68)\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/0c1ed33b-7e97-4e15-b6d8-28d7203e2214\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/0c1ed33b-7e97-4e15-b6d8-28d7203e2214\'\nLOG: \'Kernel: connected (60dc3686-cf8e-49ae-913e-495899b2bd4d)\'\nLOG: \'Kernel: connected (60dc3686-cf8e-49ae-913e-495899b2bd4d)\'\n\u001b[32m \u001b[32m✔\u001b[32m should have no effect on a code cell\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/98514341-ce05-45f3-ac14-110b4f25d73c\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/98514341-ce05-45f3-ac14-110b4f25d73c\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/60061a27-5ba5-47f8-a947-c9a28c65d814\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/60061a27-5ba5-47f8-a947-c9a28c65d814\'\n\u001b[1m ToolbarItems\u001b[22m\n\u001b[1m #createSaveButton()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should save when clicked\u001b[39m\nLOG: \'Kernel: connected (820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e)\'\nLOG: \'Kernel: connected (820dd1f0-7cc0-4af2-a7a0-7c0cdcc9374e)\'\nLOG: \'Kernel: connected (0c1ed33b-7e97-4e15-b6d8-28d7203e2214)\'\nLOG: \'Kernel: connected (0c1ed33b-7e97-4e15-b6d8-28d7203e2214)\'\n\u001b[32m \u001b[32m✔\u001b[32m should have the `\'jp-SaveIcon\'` class\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/fadecf02-8ee0-430c-bf8e-640a6d592bf5\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/fadecf02-8ee0-430c-bf8e-640a6d592bf5\'\n\u001b[1m #createInsertButton()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should insert below when clicked\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/a73cd7a7-7c9e-4936-844a-d09da15ed643\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/a73cd7a7-7c9e-4936-844a-d09da15ed643\'\n\u001b[32m \u001b[32m✔\u001b[32m should have the `\'jp-AddIcon\'` class\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/2b39d531-3cdd-4ac5-899b-f72f872951ec\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/2b39d531-3cdd-4ac5-899b-f72f872951ec\'\n\u001b[1m #createCutButton()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should cut when clicked\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/58cccae0-2c4a-4b86-9489-2ff2791b68e2\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/58cccae0-2c4a-4b86-9489-2ff2791b68e2\'\n\u001b[32m \u001b[32m✔\u001b[32m should have the `\'jp-CutIcon\'` class\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/ae132f66-a1c2-4b02-8616-39440b658ed2\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/ae132f66-a1c2-4b02-8616-39440b658ed2\'\n\u001b[1m #createCopyButton()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should copy when clicked\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/5753e656-998e-4a05-ac6e-090b8c172818\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/5753e656-998e-4a05-ac6e-090b8c172818\'\n\u001b[32m \u001b[32m✔\u001b[32m should have the `\'jp-CopyIcon\'` class\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/d91e63ea-75cd-44f9-b6c2-22f855092013\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/d91e63ea-75cd-44f9-b6c2-22f855092013\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/de734d7b-911b-4383-9def-32b5f4762fe3\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/de734d7b-911b-4383-9def-32b5f4762fe3\'\n\u001b[1m #createPasteButton()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should paste when clicked\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should have the `\'jp-PasteIcon\'` class\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/c89c1e0c-f137-487c-a70a-81f768cfa1cd\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/c89c1e0c-f137-487c-a70a-81f768cfa1cd\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/9a5b3037-2da5-437f-8bf4-b3635b428cc6\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/9a5b3037-2da5-437f-8bf4-b3635b428cc6\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/38c845f3-2376-48ba-a61a-9768e33c0fc1\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/38c845f3-2376-48ba-a61a-9768e33c0fc1\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/ea2ef57a-9421-4b05-9d41-a30f0b746285\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/ea2ef57a-9421-4b05-9d41-a30f0b746285\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/cc9b75d5-41b2-4fe3-b562-271fc2f27aae\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/cc9b75d5-41b2-4fe3-b562-271fc2f27aae\'\n\u001b[1m #createRunButton()\u001b[22m\n\u001b[31m \u001b[31m✖\u001b[31m should run and advance when clicked\u001b[39m\nHeadlessChrome 0.0.0 (Linux 0.0.0) @jupyterlab/notebook ToolbarItems #createRunButton() should run and advance when clicked FAILED\n\tError: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.\n\u001b[32m \u001b[32m✔\u001b[32m should have the `\'jp-RunIcon\'` class\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/445d042f-72e9-4d7f-a757-56e45f7b2aca\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/445d042f-72e9-4d7f-a757-56e45f7b2aca\'\n\u001b[1m #createCellTypeItem()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should track the cell type of the current cell\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/c97584d2-5e04-4ac0-8ff5-48cf7a5c91bb\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/c97584d2-5e04-4ac0-8ff5-48cf7a5c91bb\'\n\u001b[32m \u001b[32m✔\u001b[32m should display `\'-\'` if multiple cell types are selected\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/dba14f9b-3f4e-4b8b-9a13-26c6ff8fd471\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/dba14f9b-3f4e-4b8b-9a13-26c6ff8fd471\'\n\u001b[32m \u001b[32m✔\u001b[32m should display the active cell type if multiple cells of the same type are selected\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/c8900b82-f519-4633-b35a-01a75935bc2d\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/c8900b82-f519-4633-b35a-01a75935bc2d\'\n\u001b[1m #populateDefaults()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should add the default items to the panel toolbar\u001b[39m\n\u001b[1m NotebookModel\u001b[22m\n\u001b[1m #constructor()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a notebook model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should accept an optional language preference\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should add a single code cell by default\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should accept an optional factory\u001b[39m\n\u001b[1m #metadataChanged\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be emitted when a metadata field changes\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not be emitted when the value does not change\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/f720821a-1593-4dba-9cb1-716b510f6610\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/f720821a-1593-4dba-9cb1-716b510f6610\'\n\u001b[1m #cells\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should add an empty code cell by default\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be reset when loading from disk\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should allow undoing a change\u001b[39m\n\u001b[1m cells `changed` signal\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should emit a `contentChanged` signal upon cell addition\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should emit a `contentChanged` signal upon cell removal\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should emit a `contentChanged` signal upon cell move\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set the dirty flag\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should add a new code cell when cells are cleared\u001b[39m\n\u001b[1m cell `changed` signal\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be called when a cell content changes\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should emit the `contentChanged` signal\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set the dirty flag\u001b[39m\n\u001b[1m #contentFactory\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the cell model factory used by the model\u001b[39m\n\u001b[1m #nbformat\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the major version number of the nbformat\u001b[39m\n\u001b[1m #nbformatMinor\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the minor version number of the nbformat\u001b[39m\n\u001b[1m #defaultKernelName()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the default kernel name of the document\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should default to an empty string\u001b[39m\n\u001b[1m #defaultKernelLanguage\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the default kernel language of the document\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should default to an empty string\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be set from the constructor arg\u001b[39m\n\u001b[1m #dispose()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should dispose of the resources held by the model\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be safe to call multiple times\u001b[39m\n\u001b[1m #toString()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should serialize the model to a string\u001b[39m\n\u001b[1m #fromString()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should deserialize the model from a string\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set the dirty flag\u001b[39m\n\u001b[1m #toJSON()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should serialize the model to JSON\u001b[39m\n\u001b[1m #fromJSON()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should serialize the model from JSON\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set the dirty flag\u001b[39m\n\u001b[1m #metadata\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should have default values\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set the dirty flag when changed\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should emit the `contentChanged` signal\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should emit the `metadataChanged` signal\u001b[39m\n\u001b[1m .ContentFactory\u001b[22m\n\u001b[1m #codeCellContentFactory\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be a code cell content factory\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be settable in the constructor\u001b[39m\n\u001b[1m #createCodeCell()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new code cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clone an existing code cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clone an existing raw cell\u001b[39m\n\u001b[1m #createRawCell()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new raw cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clone an existing raw cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clone an existing code cell\u001b[39m\n\u001b[1m #createMarkdownCell()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new markdown cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clone an existing markdown cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clone an existing raw cell\u001b[39m\n\u001b[1m #modelDB\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be undefined by default\u001b[39m\n\u001b[1m #clone()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new content factory with a new IModelDB\u001b[39m\n\u001b[1m .defaultContentFactory\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be a ContentFactory\u001b[39m\n\u001b[1m NotebookModelFactory\u001b[22m\n\u001b[1m #constructor\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new notebook model factory\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should accept a code cell content factory\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should accept a notebook model content factory\u001b[39m\n\u001b[1m #contentFactory\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the content factory used by the model factory\u001b[39m\n\u001b[1m #name\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the name of the model factory\u001b[39m\n\u001b[1m #contentType\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the file type\u001b[39m\n\u001b[1m #fileFormat\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the file format\u001b[39m\n\u001b[1m #isDisposed\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get whether the factory is disposed\u001b[39m\n\u001b[1m #dispose()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should dispose of the model factory\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be safe to call multiple times\u001b[39m\n\u001b[1m #createNew()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new model for a given path\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should add an empty code cell by default\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should accept a language preference\u001b[39m\n\u001b[1m #preferredLanguage()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should always return an empty string\u001b[39m\n\u001b[1m NotebookPanel\u001b[22m\n\u001b[1m #constructor()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a notebook panel\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should change notebook to edit mode if we have a single empty code cell\u001b[39m\n\u001b[1m #toolbar\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the toolbar used by the widget\u001b[39m\n\u001b[1m #content\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the notebook content widget\u001b[39m\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/12f7a7b3-4024-42d4-9f28-19a31a3c396d\'\nLOG: \'Starting WebSocket:\', \'ws://localhost:8888/api/kernels/12f7a7b3-4024-42d4-9f28-19a31a3c396d\'\n\u001b[1m #context\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the document context for the widget\u001b[39m\n\u001b[1m #dispose()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should dispose of the resources used by the widget\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be safe to call more than once\u001b[39m\n\u001b[1m .ContentFactory\u001b[22m\n\u001b[1m #constructor\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new ContentFactory\u001b[39m\n\u001b[1m #createNotebook()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a notebook widget\u001b[39m\n\u001b[1m NotebookTracker\u001b[22m\n\u001b[1m #constructor()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a NotebookTracker\u001b[39m\n\u001b[1m #activeCell\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be `null` if there is no tracked notebook panel\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be `null` if a tracked notebook has no active cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be the active cell if a tracked notebook has one\u001b[39m\n\u001b[1m #activeCellChanged\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should emit a signal when the active cell changes\u001b[39m\n\u001b[1m #onCurrentChanged()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be called when the active cell changes\u001b[39m\n\u001b[1m @jupyter/notebook\u001b[22m\n\u001b[1m StaticNotebook\u001b[22m\n\u001b[1m #constructor()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a notebook widget\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should add the `jp-Notebook` class\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should accept an optional render\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should accept an optional editor config\u001b[39m\n\u001b[1m #modelChanged\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be emitted when the model changes\u001b[39m\n\u001b[1m #modelContentChanged\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be emitted when a cell is added\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be emitted when metadata is set\u001b[39m\n\u001b[1m #model\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the model for the widget\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set the model for the widget\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should emit the `modelChanged` signal\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if the value does not change\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should add the model cells to the layout\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set the mime types of the cell widgets\u001b[39m\n\u001b[1m `cells.changed` signal\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should handle changes to the model cell list\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should handle a remove\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should handle an add\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should handle a move\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should handle a clear\u001b[39m\n\u001b[1m #rendermime\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the rendermime instance used by the widget\u001b[39m\n\u001b[1m #contentFactory\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the cell widget contentFactory used by the widget\u001b[39m\n\u001b[1m #editorConfig\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the cell widget contentFactory used by the widget\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be settable\u001b[39m\n\u001b[1m #codeMimetype\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the mime type for code cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be set from language metadata\u001b[39m\n\u001b[1m #widgets\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the child widget at a specified index\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should return `undefined` if out of range\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should get the number of child widgets\u001b[39m\n\u001b[1m #dispose()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should dispose of the resources held by the widget\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be safe to call multiple times\u001b[39m\n\u001b[1m #onModelChanged()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be called when the model changes\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not be called if the model does not change\u001b[39m\n\u001b[1m #onMetadataChanged()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be called when the metadata on the notebook changes\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should update the `codeMimetype`\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should update the cell widget mimetype\u001b[39m\n\u001b[1m #onCellInserted()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be called when a cell is inserted\u001b[39m\n\u001b[1m #onCellMoved()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be called when a cell is moved\u001b[39m\n\u001b[1m #onCellRemoved()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be called when a cell is removed\u001b[39m\n\u001b[1m .ContentFactory\u001b[22m\n\u001b[1m #constructor\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new ContentFactory\u001b[39m\n\u001b[1m #createCodeCell({})\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a `CodeCell`\u001b[39m\n\u001b[1m #createMarkdownCell({})\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a `MarkdownCell`\u001b[39m\n\u001b[1m #createRawCell()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a `RawCell`\u001b[39m\n\u001b[1m Notebook\u001b[22m\n\u001b[1m #stateChanged\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be emitted when the state of the notebook changes\u001b[39m\n\u001b[1m #activeCellChanged\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be emitted when the active cell changes\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not be emitted when the active cell does not change\u001b[39m\n\u001b[1m #selectionChanged\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be emitted when the selection changes\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should not be emitted when the selection does not change\u001b[39m\n\u001b[1m #mode\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the interactivity mode of the notebook\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set the interactivity mode of the notebook\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should emit the `stateChanged` signal\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if the value does not change\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should post an update request\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should deselect all cells if switching to edit mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should unrender a markdown cell when switching to edit mode\u001b[39m\n\u001b[1m #activeCellIndex\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the active cell index of the notebook\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set the active cell index of the notebook\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clamp the index to the bounds of the notebook cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should emit the `stateChanged` signal\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if the value does not change\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should post an update request\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should update the active cell if necessary\u001b[39m\n\u001b[1m #activeCell\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get the active cell widget\u001b[39m\n\u001b[1m #select()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should select a cell widget\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should allow multiple widgets to be selected\u001b[39m\n\u001b[1m #deselect()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should deselect a cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should let the active cell be deselected\u001b[39m\n\u001b[1m #isSelected()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get whether the cell is selected\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m reports selection whether or not cell is active\u001b[39m\n\u001b[1m #deselectAll()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should deselect all cells\u001b[39m\n\u001b[1m #extendContiguousSelectionTo()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should work in each permutation of anchor, head, and index\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should work when we only have an active cell, with no existing selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clip when the index is greater than the last index\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clip when the index is greater than the last index with no existing selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clip when the index is less than 0\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should clip when the index is less than 0 with no existing selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m handles the case of no cells\u001b[39m\n\u001b[1m #getContiguousSelection()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m throws an error when the selection is not contiguous\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m throws an error if the active cell is not at an endpoint\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m returns null values if there is no selection\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m handles the case of no cells\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m works if head is before the anchor\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m works if head is after the anchor\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m works if head and anchor are the same\u001b[39m\n\u001b[1m #handleEvent()\u001b[22m\n\u001b[1m mousedown\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should set the active cell index\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be a no-op if not not a cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should preserve "command" mode if in a markdown cell\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should extend selection if invoked with shift\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should leave a markdown cell rendered\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should remove selection and switch to command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should have no effect on shift right click\u001b[39m\n\u001b[1m dblclick\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should unrender a markdown cell\u001b[39m\n\u001b[1m focusin\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should change to edit mode if a child cell takes focus\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should change to command mode if the widget takes focus\u001b[39m\n\u001b[1m focusout\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should switch to command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set command mode\u001b[39m\n\u001b[1m #onAfterAttach()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should add event listeners\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should post an update request\u001b[39m\n\u001b[1m #onBeforeDetach()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should remove event listeners\u001b[39m\n\u001b[1m #onActivateRequest()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should focus the node after an update\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should post an `update-request\u001b[39m\n\u001b[1m #onUpdateRequest()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should apply the command class if in command mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should apply the edit class if in edit mode\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should add the active class to the active widget\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should set the selected class on the selected widgets\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should add the multi select class if there is more than one widget\u001b[39m\n\u001b[1m #onCellInserted()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should post an `update-request\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should update the active cell if necessary\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should keep the currently active cell active\u001b[39m\n\u001b[1m `edgeRequested` signal\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should activate the previous cell if top is requested\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should activate the next cell if bottom is requested\u001b[39m\n\u001b[1m #onCellMoved()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should update the active cell index if necessary\u001b[39m\n\u001b[1m #onCellRemoved()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should post an `update-request\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should update the active cell if necessary\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should keep the currently active cell active\u001b[39m\n\u001b[1m NotebookWidgetFactory\u001b[22m\n\u001b[1m #constructor()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a notebook widget factory\u001b[39m\n\u001b[1m #isDisposed\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should get whether the factory has been disposed\u001b[39m\n\u001b[1m #dispose()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should dispose of the resources held by the factory\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be safe to call multiple times\u001b[39m\n\u001b[1m #editorConfig\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should be the editor config passed into the constructor\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should be settable\u001b[39m\n\u001b[1m #createNew()\u001b[22m\n\u001b[32m \u001b[32m✔\u001b[32m should create a new `NotebookPanel` widget\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should create a clone of the rendermime\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should pass the editor config to the notebook\u001b[39m\n\u001b[32m \u001b[32m✔\u001b[32m should populate the default toolbar items\u001b[39m\n\n\u001b[32mFinished in 2 mins 30.132 secs / 25.623 secs\u001b[39m\n\n\u001b[4m\u001b[1mSUMMARY:\u001b[22m\u001b[24m\n\u001b[32m\u001b[32m✔\u001b[32m 397 tests completed\u001b[39m\n\u001b[31m\u001b[31m✖\u001b[31m 1 test failed\u001b[39m\n\n\u001b[4m\u001b[1mFAILED TESTS:\u001b[22m\u001b[24m\n @jupyterlab/notebook\n ToolbarItems\n #createRunButton()\n\u001b[31m \u001b[31m✖\u001b[31m should run and advance when clicked\u001b[39m\n \u001b[3m\u001b[33mHeadlessChrome 0.0.0 (Linux 0.0.0)\u001b[39m\u001b[23m\n\u001b[31m Error: Timeout of 10000ms exceeded. For async tests and hooks, ensure "done()" is called; if returning a Promise, ensure it resolves.\n\u001b[39m\nTOTAL: 1 FAILED, 397 SUCCESS\n\n=============================== Coverage summary ===============================\nStatements : 77.02% ( 1535/1993 )\nBranches : 65.72% ( 602/916 )\nFunctions : 80.11% ( 286/357 )\nLines : 76.98% ( 1532/1990 )\n================================================================================\ninfo Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.\n',
stderr: '[C 19:52:40.942 KarmaTestApp] \n \n Copy/paste this URL into your browser when you connect for the first time,\n to login with a token:\n http://localhost:8888/?token=c54e8704e417d548f29c20e157e899b8b3d6e199c943199d\nTraceback (most recent call last):\n File "/opt/python/3.6.3/lib/python3.6/runpy.py", line 193, in _run_module_as_main\n "__main__", mod_spec)\n File "/opt/python/3.6.3/lib/python3.6/runpy.py", line 85, in _run_code\n exec(code, run_globals)\n File "/home/travis/build/jupyterlab/jupyterlab/jupyterlab/tests/echo_kernel.py", line 38, in <module>\n EchoKernelApp.launch_instance()\n File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/traitlets/config/application.py", line 657, in launch_instance\n app.initialize(argv)\n File "<decorator-gen-123>", line 2, in initialize\n File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/traitlets/config/application.py", line 87, in catch_config_error\n return method(app, *args, **kwargs)\n File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 456, in initialize\n self.init_sockets()\n File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 248, in init_sockets\n self.control_port = self._bind_socket(self.control_socket, self.control_port)\n File "/home/travis/virtualenv/python3.6.3/lib/python3.6/site-packages/ipykernel/kernelapp.py", line 180, in _bind_socket\n s.bind("tcp://%s:%i" % (self.ip, port))\n File "zmq/backend/cython/socket.pyx", line 549, in zmq.backend.cython.socket.Socket.bind\n File "zmq/backend/cython/checkrc.pxd", line 25, in zmq.backend.cython.checkrc._check_rc\nzmq.error.ZMQError: Address already in use\nerror Command failed with exit code 1.\n',
failed: true,
signal: null,
cmd: 'yarn run coverage',
timedOut: false,
exitCode: 1 }
error Command failed with exit code 1.
The command "bash ./scripts/travis_script.sh" exited with 1.
cache.2
store build cache
0.01s
22.31schange detected (content changed, file is created, or file is deleted):
/home/travis/.cache/pip/http/0/2/e/a/3/02ea3a40bec709fb2e3011abf56d9ff0e8a057e522b64b520bfc74fe
/home/travis/.cache/pip/http/0/6/a/1/0/06a10a01993b98a46b24126de4370c3ed430c734a40d6ac34065ddcf
/home/travis/.cache/pip/http/1/a/a/f/1/1aaf12502d9d2700532b5c7786558a9bfb4d409422398ffa270ae51d
/home/travis/.cache/pip/http/1/f/3/a/0/1f3a010a7cc3ca64eac10d62d9f15870c702fc5a0cf7712c5ae43c10
/home/travis/.cache/pip/http/2/4/9/9/6/249966c7f1e7970eeae0088cdcd48fa18209582a788c44b34dc549ce
/home/travis/.cache/pip/http/3/1/5/b/d/315bd5994915d999cc934902f11d8d89b7bce4fc77ed43b9a66f4aad
/home/travis/.cache/pip/http/3/3/e/d/f/33edfdc631388d50e17fdfc77f6245d6a716f94b1333842b4cce6055
/home/travis/.cache/pip/http/3/e/9/a/4/3e9a4e7f56493e9f06407dbc32afae529f65c7ec2e8742451dcc4271
/home/travis/.cache/pip/http/4/0/0/3/2/40032a90db54f8ff245e06dca3cddd678eebbb4ff268aabed4b22291
/home/travis/.cache/pip/http/4/1/a/4/a/41a4a5b4d08d682c256c42188a3386c88748bf23a52b7c7ccc3a01f0
/home/travis/.cache/pip/http/4/5/9/7/6/45
...
changes detected, packing new archive
.
.
.
uploading archive
Done. Your build exited with 1.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment