Running phase: unpackPhase unpacking source archive /nix/store/y1nhnw4baiwlbqfiij31qjjh6fs6rq3z-source source root is source Running phase: patchPhase patching script interpreter paths in extension/build.sh extension/build.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/9ipfvwnqp1q8ijnmi5sxvlx9r8w34lw3-bash-5.3p15/bin/bash" Executing npmConfigHook /build/source/extension /build/source Configuring npm Validating consistency between /build/source/extension/package-lock.json and /nix/store/5jhnz4533wxnywfs65crgkmwy7a599pq-npm-deps/package-lock.json Setting npm_config_cache to /nix/store/5jhnz4533wxnywfs65crgkmwy7a599pq-npm-deps Installing dependencies npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options. npm warn Unknown env config "platform". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options. npm warn Unknown env config "arch". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options. added 111 packages, and audited 112 packages in 2s 40 packages are looking for funding run `npm fund` for details found 0 vulnerabilities patching script interpreter paths in node_modules node_modules/esbuild/bin/esbuild: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lfaydgacdyngci7p60s8wwvgdm74fjkx-nodejs-24.19.0/bin/node" node_modules/tlds/bin.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lfaydgacdyngci7p60s8wwvgdm74fjkx-nodejs-24.19.0/bin/node" node_modules/tldts/bin/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lfaydgacdyngci7p60s8wwvgdm74fjkx-nodejs-24.19.0/bin/node" node_modules/rolldown/bin/cli.mjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lfaydgacdyngci7p60s8wwvgdm74fjkx-nodejs-24.19.0/bin/node" node_modules/@bramus/specificity/bin/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lfaydgacdyngci7p60s8wwvgdm74fjkx-nodejs-24.19.0/bin/node" node_modules/he/bin/he: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lfaydgacdyngci7p60s8wwvgdm74fjkx-nodejs-24.19.0/bin/node" node_modules/why-is-node-running/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lfaydgacdyngci7p60s8wwvgdm74fjkx-nodejs-24.19.0/bin/node" node_modules/nanoid/bin/nanoid.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lfaydgacdyngci7p60s8wwvgdm74fjkx-nodejs-24.19.0/bin/node" node_modules/vitest/vitest.mjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lfaydgacdyngci7p60s8wwvgdm74fjkx-nodejs-24.19.0/bin/node" node_modules/vitest/node_modules/vite/bin/vite.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lfaydgacdyngci7p60s8wwvgdm74fjkx-nodejs-24.19.0/bin/node" npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options. npm warn Unknown env config "platform". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options. npm warn Unknown env config "arch". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options. npm warn rebuild 1 package has install scripts not yet covered by allowScripts. Run `npm approve-scripts --allow-scripts-pending` to review. rebuilt dependencies successfully patching script interpreter paths in node_modules ~/source Finished npmConfigHook Running phase: updateAutotoolsGnuConfigScriptsPhase Running phase: configurePhase cmake flags: -GNinja -DCMAKE_FIND_USE_SYSTEM_PACKAGE_REGISTRY=OFF -DCMAKE_FIND_USE_PACKAGE_REGISTRY=OFF -DCMAKE_EXPORT_NO_PACKAGE_REGISTRY=ON -DCMAKE_BUILD_TYPE=Release -DCMAKE_INSTALL_LOCALEDIR=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale -DCMAKE_INSTALL_LIBEXECDIR=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/libexec -DCMAKE_INSTALL_LIBDIR=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/lib -DCMAKE_INSTALL_DOCDIR=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/doc/tether -DCMAKE_INSTALL_INFODIR=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/info -DCMAKE_INSTALL_MANDIR=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/man -DCMAKE_INSTALL_INCLUDEDIR=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/include -DCMAKE_INSTALL_SBINDIR=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/sbin -DCMAKE_INSTALL_BINDIR=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin -DCMAKE_INSTALL_NAME_DIR=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/lib -DCMAKE_STRIP=/nix/store/w88q44gqd1qg5wmkk7v0h97rpiqvam0l-gcc-wrapper-15.3.0/bin/strip -DCMAKE_RANLIB=/nix/store/w88q44gqd1qg5wmkk7v0h97rpiqvam0l-gcc-wrapper-15.3.0/bin/ranlib -DCMAKE_AR=/nix/store/w88q44gqd1qg5wmkk7v0h97rpiqvam0l-gcc-wrapper-15.3.0/bin/ar -DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DCMAKE_INSTALL_PREFIX=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18 -DFETCHCONTENT_FULLY_DISCONNECTED:BOOL=TRUE -DFETCHCONTENT_SOURCE_DIR_JSON:STRING=/nix/store/zi53bipc60dzz2vf7459087bjxbag9md-source -DFETCHCONTENT_SOURCE_DIR_GOOGLETEST:STRING=/nix/store/jfpm74qvbni1cgwzi3rxy9nhrn2sjkp6-source -DTETHER_VERSION:STRING=0.2.18 -DBLUETOOTHD_PATH:STRING=/nix/store/vlakbh3si797k5mfpzdxl033aq2h3xck-bluez-5.87/libexec/bluetooth/bluetoothd -DSYSTEMD_UNIT_DIR:STRING=lib/systemd/system -DCHROME_MESSAGING_DIR:STRING=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/etc/chromium/native-messaging-hosts -DGOOGLE_CHROME_MESSAGING_DIR:STRING=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/etc/opt/chrome/native-messaging-hosts -DMOZILLA_MESSAGING_DIR:STRING=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/lib/mozilla/native-messaging-hosts -DTHUNDERBIRD_MESSAGING_DIR:STRING=/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/lib/thunderbird/native-messaging-hosts -- The CXX compiler identification is GNU 15.3.0 -- The C compiler identification is GNU 15.3.0 -- Detecting CXX compiler ABI info -- Detecting CXX compiler ABI info - done -- Check for working CXX compiler: /nix/store/w88q44gqd1qg5wmkk7v0h97rpiqvam0l-gcc-wrapper-15.3.0/bin/g++ - skipped -- Detecting CXX compile features -- Detecting CXX compile features - done -- Detecting C compiler ABI info -- Detecting C compiler ABI info - done -- Check for working C compiler: /nix/store/w88q44gqd1qg5wmkk7v0h97rpiqvam0l-gcc-wrapper-15.3.0/bin/gcc - skipped -- Detecting C compile features -- Detecting C compile features - done -- Found PkgConfig: /nix/store/7fx93fz9c809w8yjxb0934zw6xcjis58-pkg-config-wrapper-0.29.2/bin/pkg-config (found version "0.29.2") -- Checking for module 'wayland-client' -- Found wayland-client, version 1.26.0 -- Checking for module 'avahi-client' -- Found avahi-client, version 0.8 -- Found OpenSSL: /nix/store/hg41dqig0qxm7shyi0a0xkw29a14i3js-openssl-3.6.3/lib/libcrypto.so (found version "3.6.3") -- Found Intl: built in to C library -- Checking for module 'libsecret-1' -- Found libsecret-1, version 0.21.7 Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found -- Using the multi-header code from /nix/store/zi53bipc60dzz2vf7459087bjxbag9md-source/include/ -- Performing Test CMAKE_HAVE_LIBC_PTHREAD -- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success -- Found Threads: TRUE -- Checking for modules 'glib-2.0;gio-2.0' -- Found glib-2.0, version 2.88.3 -- Found gio-2.0, version 2.88.3 Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found -- Checking for module 'libnotify' -- Found libnotify, version 0.8.8 Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found -- Checking for module 'gio-unix-2.0' -- Found gio-unix-2.0, version 2.88.3 Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found -- Checking for module 'gtk+-3.0' -- Found gtk+-3.0, version 3.24.52 Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found -- Checking for module 'gtk-layer-shell-0' -- Found gtk-layer-shell-0, version 0.10.1 Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found Package sysprof-capture-4 was not found in the pkg-config search path. Perhaps you should add the directory containing `sysprof-capture-4.pc' to the PKG_CONFIG_PATH environment variable Package 'sysprof-capture-4', required by 'glib-2.0', not found -- Configuring done (12.4s) -- Generating done (0.3s) CMake Warning: Manually-specified variables were not used by the project: BLUETOOTHD_PATH CMAKE_EXPORT_NO_PACKAGE_REGISTRY FETCHCONTENT_FULLY_DISCONNECTED -- Build files have been written to: /build/source/build cmake: enabled parallel building cmake: enabled parallel installing Running phase: buildPhase build flags: -j4 [1/123] Building CXX object src/core/CMakeFiles/tether.dir/src/core.cpp.o [2/123] Building CXX object src/core/CMakeFiles/tether.dir/src/i18n.cpp.o [3/123] Building CXX object _deps/googletest-build/googletest/CMakeFiles/gtest_main.dir/src/gtest_main.cc.o [4/123] Building CXX object _deps/googletest-build/googlemock/CMakeFiles/gmock.dir/src/gmock-all.cc.o [5/123] Building CXX object src/core/CMakeFiles/tether.dir/src/base64.cpp.o [6/123] Building CXX object src/core/CMakeFiles/tether.dir/src/event_loop.cpp.o [7/123] Building CXX object src/core/CMakeFiles/tether.dir/src/paths.cpp.o [8/123] Building CXX object src/core/CMakeFiles/tether.dir/src/file_transfer.cpp.o [9/123] Building CXX object src/core/CMakeFiles/tether.dir/src/otp.cpp.o [10/123] Building CXX object _deps/googletest-build/googletest/CMakeFiles/gtest.dir/src/gtest-all.cc.o [11/123] Linking CXX static library lib/libgtest.a [12/123] Building CXX object src/core/CMakeFiles/tether.dir/src/secret_store.cpp.o [13/123] Building CXX object src/core/CMakeFiles/tether.dir/src/crypto.cpp.o [14/123] Building CXX object src/core/CMakeFiles/tether.dir/src/extension_host.cpp.o [15/123] Building CXX object src/core/CMakeFiles/tether.dir/src/client.cpp.o [16/123] Building CXX object src/core/CMakeFiles/tether.dir/src/net.cpp.o [17/123] Building CXX object src/core/CMakeFiles/tether.dir/src/discovery.cpp.o [18/123] Building CXX object src/core/CMakeFiles/tether.dir/src/mpris.cpp.o [19/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/objects.cpp.o [20/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/monitor.cpp.o [21/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/agent.cpp.o [22/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/config.cpp.o [23/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/advert.cpp.o [24/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/bearer_supervisor.cpp.o [25/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/vcard.cpp.o [26/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/profile_supervisor.cpp.o [27/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/pairing.cpp.o [28/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/bmessage.cpp.o [29/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/messages.cpp.o [30/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/map_session.cpp.o [31/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/pbap_session.cpp.o [32/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/ancs/parser.cpp.o [33/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/obex_transfer.cpp.o [34/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/ancs/sequencer.cpp.o [35/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/contacts.cpp.o [36/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/journal.cpp.o [37/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/ancs/notifications.cpp.o [38/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/ancs/client.cpp.o [39/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/telephony.cpp.o [40/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/telephony_pipewire.cpp.o [41/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/groups.cpp.o [42/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/airpods.cpp.o [43/123] Building CXX object src/core/CMakeFiles/tether.dir/src/session_lock.cpp.o [44/123] Building CXX object src/core/CMakeFiles/tether.dir/src/wayland_protocols/wayland.cpp.o [45/123] Building CXX object src/core/CMakeFiles/tether.dir/src/wayland_protocols/wlr-data-control-unstable-v1.cpp.o [46/123] Building CXX object src/core/CMakeFiles/tether.dir/src/wayland_protocols/ext-data-control-v1.cpp.o [47/123] Linking CXX static library lib/libgmock.a [48/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/diagnostics.cpp.o [49/123] Linking CXX static library lib/libgtest_main.a [50/123] Building CXX object src/core/CMakeFiles/tether.dir/src/wayland.cpp.o [51/123] Building CXX object _deps/googletest-build/googlemock/CMakeFiles/gmock_main.dir/src/gmock_main.cc.o [52/123] Building CXX object src/core/CMakeFiles/tether.dir/src/bluetooth/connection.cpp.o [53/123] Linking CXX static library src/core/libtether.a [54/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/main.cpp.o [55/123] Building CXX object src/daemon/CMakeFiles/tetherd.dir/notification.cpp.o [56/123] Building CXX object src/daemon/CMakeFiles/tetherd.dir/main.cpp.o [57/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/ui_util.cpp.o [58/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/message_format.cpp.o [59/123] Building CXX object src/cli/CMakeFiles/tether_cli.dir/main.cpp.o [60/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/prefs.cpp.o [61/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/calls_view.cpp.o [62/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/contact_completion.cpp.o [63/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/contacts_view.cpp.o [64/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/notifications_view.cpp.o [65/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/messages_view.cpp.o [66/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/daemon_client.cpp.o [67/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/devices_view.cpp.o [68/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/settings_view.cpp.o [69/123] Building CXX object src/dialog/CMakeFiles/tether-dialog.dir/main.cpp.o [70/123] Building CXX object test/CMakeFiles/tether_test.dir/test_base64.cpp.o [71/123] Building CXX object src/gtk/CMakeFiles/tether-gtk.dir/tray.cpp.o [72/123] Building CXX object test/CMakeFiles/tether_test.dir/test_bluetooth_monitor.cpp.o [73/123] Building CXX object test/CMakeFiles/tether_test.dir/test_airpods.cpp.o [74/123] Building CXX object test/CMakeFiles/tether_test.dir/test_bluetooth_pairing.cpp.o [75/123] Building CXX object test/CMakeFiles/tether_test.dir/test_bluetooth_objects.cpp.o [76/123] Building CXX object test/CMakeFiles/tether_test.dir/test_bmessage_build.cpp.o [77/123] Building CXX object test/CMakeFiles/tether_test.dir/test_ancs_parser.cpp.o [78/123] Building CXX object test/CMakeFiles/tether_test.dir/test_bluetooth_supervisor.cpp.o [79/123] Building CXX object test/CMakeFiles/tether_test.dir/test_bmessage.cpp.o [80/123] Building CXX object test/CMakeFiles/tether_test.dir/test_ancs_notifications.cpp.o [81/123] Building CXX object test/CMakeFiles/tether_test.dir/test_ancs_sequencer.cpp.o [82/123] Building CXX object test/CMakeFiles/tether_test.dir/test_groups.cpp.o [83/123] Building CXX object test/CMakeFiles/tether_test.dir/test_bt_diagnostics.cpp.o [84/123] Building CXX object test/CMakeFiles/tether_test.dir/test_journal.cpp.o [85/123] Building CXX object test/CMakeFiles/tether_test.dir/test_vcard.cpp.o [86/123] Building CXX object test/CMakeFiles/tether_test.dir/secret_test_env.cpp.o [87/123] Building CXX object test/CMakeFiles/tether_test.dir/test_telephony.cpp.o [88/123] Building CXX object test/CMakeFiles/tether_test.dir/test_crypto.cpp.o [89/123] Building CXX object test/CMakeFiles/tether_test.dir/test_event_loop.cpp.o [90/123] Building CXX object test/CMakeFiles/tether_test.dir/test_secret_store.cpp.o [91/123] Building CXX object test/CMakeFiles/tether_test.dir/test_display_width.cpp.o [92/123] Building CXX object test/CMakeFiles/tether_test.dir/test_discovery.cpp.o [93/123] Building CXX object test/CMakeFiles/tether_test.dir/test_file_transfer.cpp.o [94/123] Building CXX object test/CMakeFiles/tether_test.dir/test_extension_host.cpp.o [95/123] Building CXX object test/CMakeFiles/tether_test.dir/test_otp.cpp.o [96/123] Building CXX object test/CMakeFiles/tether_test.dir/test_paths.cpp.o [97/123] Building CXX object test/CMakeFiles/tether_test.dir/test_message_format.cpp.o [98/123] Building browser and mail extensions Building Tether Extensions... Bundling Firefox browser extension... build/extension_bundles/browser/src/background/background.js 147.4kb ⚡ Done in 6ms build/extension_bundles/browser/src/content/autofill.js 7.1kb ⚡ Done in 1ms Bundling mail extension... build/extension_bundles/mail/src/mail/extractor.js 158.7kb ⚡ Done in 4ms Bundling Chromium extension... build/extension_bundles/chromium/src/background/background.js 147.4kb ⚡ Done in 3ms build/extension_bundles/chromium/src/content/autofill.js 7.1kb ⚡ Done in 2ms Extensions successfully built and packaged in /build/source/build/extension_bundles Firefox browser: /build/source/build/extension_bundles/tether-browser-extension.zip Thunderbird: /build/source/build/extension_bundles/tether-mail-extension.xpi Chromium (Store): /build/source/build/extension_bundles/tether-chromium-extension.zip [99/123] Linking CXX static library lib/libgmock_main.a [100/123] Building CXX object test/CMakeFiles/tether_test.dir/test_log.cpp.o [101/123] Linking CXX executable tetherd [102/123] Building CXX object test/CMakeFiles/tether_test.dir/test_net.cpp.o [103/123] Localizing tether-gtk.desktop [104/123] Linking CXX executable tether [105/123] Compiling cs.po [106/123] Compiling de.po [107/123] Compiling es.po [108/123] Compiling fr.po [109/123] Compiling it.po [110/123] Compiling ja.po [111/123] Compiling ko.po [112/123] Compiling nl.po [113/123] Compiling pl.po [114/123] Compiling pt_BR.po [115/123] Compiling ru.po [116/123] Compiling sv.po [117/123] Linking CXX executable tether-dialog [118/123] Compiling tr.po [119/123] Compiling uk.po [120/123] Compiling zh_CN.po [121/123] Linking CXX executable tether-gtk [122/123] Building CXX object test/CMakeFiles/tether_test.dir/__/src/gtk/message_format.cpp.o [123/123] Linking CXX executable test/tether_test buildPhase completed in 2 minutes 28 seconds Running phase: checkPhase check flags: -j4 test [0/1] Running tests... Test project /build/source/build Start 1: Base64Test.EncodeSimple Start 2: Base64Test.DecodeSimple Start 3: Base64Test.DecodeWithPadding Start 4: Base64Test.EdgeCases 1/503 Test #1: Base64Test.EncodeSimple ........................................................ Passed 0.01 sec 2/503 Test #2: Base64Test.DecodeSimple ........................................................ Passed 0.01 sec Start 5: Base64Test.EncodeVector Start 6: Base64Test.RoundTripBinary 3/503 Test #3: Base64Test.DecodeWithPadding ................................................... Passed 0.01 sec Start 7: Base64Test.SingleCharEncode 4/503 Test #4: Base64Test.EdgeCases ........................................................... Passed 0.01 sec Start 8: Base64Test.TwoCharEncode 5/503 Test #5: Base64Test.EncodeVector ........................................................ Passed 0.01 sec Start 9: Base64Test.DecodeInvalidChars 6/503 Test #6: Base64Test.RoundTripBinary ..................................................... Passed 0.01 sec Start 10: Base64Test.RoundTripAllByteValues 7/503 Test #7: Base64Test.SingleCharEncode .................................................... Passed 0.01 sec Start 11: Base64Test.RoundTripEveryLengthUpTo64 8/503 Test #8: Base64Test.TwoCharEncode ....................................................... Passed 0.01 sec Start 12: Base64Test.DecodeStopsAtFirstInvalidByte 9/503 Test #9: Base64Test.DecodeInvalidChars .................................................. Passed 0.00 sec Start 13: Base64Test.DecodeHandlesHighBitBytesWithoutCrashing 10/503 Test #10: Base64Test.RoundTripAllByteValues .............................................. Passed 0.00 sec Start 14: Base64Test.RoundTripLargeChunk 11/503 Test #11: Base64Test.RoundTripEveryLengthUpTo64 .......................................... Passed 0.00 sec Start 15: AirPods.ParsesEveryComponent 12/503 Test #12: Base64Test.DecodeStopsAtFirstInvalidByte ....................................... Passed 0.00 sec Start 16: AirPods.PartialUpdateLeavesOtherComponentsAlone 13/503 Test #13: Base64Test.DecodeHandlesHighBitBytesWithoutCrashing ............................ Passed 0.01 sec Start 17: AirPods.DisconnectedComponentReadsUnknownNotZero 14/503 Test #15: AirPods.ParsesEveryComponent ................................................... Passed 0.00 sec Start 18: AirPods.RejectsMalformedPackets 15/503 Test #16: AirPods.PartialUpdateLeavesOtherComponentsAlone ................................ Passed 0.00 sec Start 19: AirPods.ParsesEveryListeningMode 16/503 Test #17: AirPods.DisconnectedComponentReadsUnknownNotZero ............................... Passed 0.00 sec Start 20: AirPods.RejectsMalformedListeningModes 17/503 Test #14: Base64Test.RoundTripLargeChunk ................................................. Passed 0.01 sec Start 21: AirPods.ParsesEarDetection 18/503 Test #18: AirPods.RejectsMalformedPackets ................................................ Passed 0.01 sec 19/503 Test #19: AirPods.ParsesEveryListeningMode ............................................... Passed 0.00 sec Start 22: AirPods.RejectsMalformedEarDetection Start 23: AirPods.PauseModeNeverDoesNothing 20/503 Test #20: AirPods.RejectsMalformedListeningModes ......................................... Passed 0.00 sec Start 24: AirPods.FirstEarReportIsNotATransition 21/503 Test #21: AirPods.ParsesEarDetection ..................................................... Passed 0.00 sec Start 25: AirPods.PausesWhenOneBudComesOut 22/503 Test #22: AirPods.RejectsMalformedEarDetection ........................................... Passed 0.00 sec Start 26: AirPods.DoesNotResumeWhatItDidNotPause 23/503 Test #23: AirPods.PauseModeNeverDoesNothing .............................................. Passed 0.00 sec Start 27: AirPods.PutsABudInTheCaseTheSameAsOutOfTheEar 24/503 Test #24: AirPods.FirstEarReportIsNotATransition ......................................... Passed 0.00 sec Start 28: AirPods.HandoffIsOffUnlessEnabled 25/503 Test #25: AirPods.PausesWhenOneBudComesOut ............................................... Passed 0.00 sec Start 29: AirPods.HandsBudsOverForACallAndTakesThemBack 26/503 Test #26: AirPods.DoesNotResumeWhatItDidNotPause ......................................... Passed 0.01 sec Start 30: AirPods.DoesNotReclaimBudsItDidNotRelease 27/503 Test #27: AirPods.PutsABudInTheCaseTheSameAsOutOfTheEar .................................. Passed 0.01 sec Start 31: AirPods.DoesNothingWhenTheBudsAreNotOnThisMachine 28/503 Test #28: AirPods.HandoffIsOffUnlessEnabled .............................................. Passed 0.01 sec Start 32: AirPods.DoesNotReleaseTwice 29/503 Test #29: AirPods.HandsBudsOverForACallAndTakesThemBack .................................. Passed 0.01 sec Start 33: AirPods.RecognisesCallsThatWantTheBuds 30/503 Test #30: AirPods.DoesNotReclaimBudsItDidNotRelease ...................................... Passed 0.00 sec Start 34: AirPods.DistinguishesAirPodsFromAnIPhone 31/503 Test #31: AirPods.DoesNothingWhenTheBudsAreNotOnThisMachine .............................. Passed 0.00 sec Start 35: AirPods.JsonOmitsUnknownListeningMode 32/503 Test #32: AirPods.DoesNotReleaseTwice .................................................... Passed 0.00 sec Start 36: BluetoothObjects.ParsesAdapterProperties 33/503 Test #33: AirPods.RecognisesCallsThatWantTheBuds ......................................... Passed 0.00 sec Start 37: BluetoothObjects.ParsesDeviceAndBearer 34/503 Test #34: AirPods.DistinguishesAirPodsFromAnIPhone ....................................... Passed 0.00 sec Start 38: BluetoothObjects.UuidMatchIsCaseInsensitive 35/503 Test #35: AirPods.JsonOmitsUnknownListeningMode .......................................... Passed 0.00 sec Start 39: BluetoothObjects.DerivesAdapterPathWhenPropertyMissing 36/503 Test #36: BluetoothObjects.ParsesAdapterProperties ....................................... Passed 0.00 sec Start 40: BluetoothObjects.BondedFallsBackToPaired 37/503 Test #37: BluetoothObjects.ParsesDeviceAndBearer ......................................... Passed 0.00 sec Start 41: BluetoothObjects.IgnoresUnexpectedPropertyTypes 38/503 Test #38: BluetoothObjects.UuidMatchIsCaseInsensitive .................................... Passed 0.00 sec Start 42: BluetoothObjects.RejectsNullAndWrongShape 39/503 Test #39: BluetoothObjects.DerivesAdapterPathWhenPropertyMissing ......................... Passed 0.00 sec Start 43: BluetoothObjects.ClassicLinkComesFromTheBredrBearerNotTheAggregate 40/503 Test #40: BluetoothObjects.BondedFallsBackToPaired ....................................... Passed 0.00 sec Start 44: BluetoothObjects.ClassicLinkFallsBackToTheAggregateWithoutBearers 41/503 Test #41: BluetoothObjects.IgnoresUnexpectedPropertyTypes ................................ Passed 0.00 sec Start 45: BluetoothObjects.StubBearerIsNotMistakenForAReading 42/503 Test #42: BluetoothObjects.RejectsNullAndWrongShape ...................................... Passed 0.00 sec Start 46: Capability.FullModeWhenBearerConfirmed 43/503 Test #43: BluetoothObjects.ClassicLinkComesFromTheBredrBearerNotTheAggregate ............. Passed 0.00 sec Start 47: Capability.SecureConnectionsStateIsInjectedRatherThanReadDuringResolution 44/503 Test #44: BluetoothObjects.ClassicLinkFallsBackToTheAggregateWithoutBearers .............. Passed 0.01 sec Start 48: Capability.CompatibilityWhenExperimentalIsOff 45/503 Test #45: BluetoothObjects.StubBearerIsNotMistakenForAReading ............................ Passed 0.01 sec Start 49: Capability.AnEmptyBearerInterfaceIsNotProofOfTheApi 46/503 Test #46: Capability.FullModeWhenBearerConfirmed ......................................... Passed 0.01 sec Start 50: Capability.ClassicOnlyBondDoesNotDisproveBearerApi 47/503 Test #47: Capability.SecureConnectionsStateIsInjectedRatherThanReadDuringResolution ...... Passed 0.01 sec Start 51: Capability.ClassicOnlyIphoneBondIsNamedAsSuch 48/503 Test #48: Capability.CompatibilityWhenExperimentalIsOff .................................. Passed 0.01 sec Start 52: Capability.APopulatedLeBearerIsNotProofOfAnLeBond 49/503 Test #49: Capability.AnEmptyBearerInterfaceIsNotProofOfTheApi ............................ Passed 0.01 sec Start 53: Capability.NoRepairAdviceWhenTheAdapterCannotAdvertise 50/503 Test #50: Capability.ClassicOnlyBondDoesNotDisproveBearerApi ............................. Passed 0.01 sec Start 54: Capability.ClassicOnlyBondOnANonPhoneIsNotReported 51/503 Test #51: Capability.ClassicOnlyIphoneBondIsNamedAsSuch .................................. Passed 0.01 sec Start 55: Capability.BearerUnknownWithoutAnyBondStaysFull 52/503 Test #52: Capability.APopulatedLeBearerIsNotProofOfAnLeBond .............................. Passed 0.01 sec Start 56: Capability.BlockedWhenAdapterMissingOrOff 53/503 Test #53: Capability.NoRepairAdviceWhenTheAdapterCannotAdvertise ......................... Passed 0.01 sec Start 57: Capability.BlockedWithoutCentralRole 54/503 Test #54: Capability.ClassicOnlyBondOnANonPhoneIsNotReported ............................. Passed 0.01 sec Start 58: Capability.CompatibilityWithoutAdvertising 55/503 Test #55: Capability.BearerUnknownWithoutAnyBondStaysFull ................................ Passed 0.01 sec Start 59: Capability.WrongClassIsReportedButDoesNotDowngradeMode 56/503 Test #56: Capability.BlockedWhenAdapterMissingOrOff ...................................... Passed 0.01 sec Start 60: Capability.PrefersAPoweredAdapter 57/503 Test #57: Capability.BlockedWithoutCentralRole ........................................... Passed 0.00 sec Start 61: DeviceParsing.AnAncsNotifySessionProvesTheLeLinkIsUp 58/503 Test #58: Capability.CompatibilityWithoutAdvertising ..................................... Passed 0.00 sec Start 62: DeviceParsing.ANotifyFlagLeftOverADeadLeBearerIsNotALink 59/503 Test #59: Capability.WrongClassIsReportedButDoesNotDowngradeMode ......................... Passed 0.01 sec Start 63: DeviceParsing.AnAncsNotifySessionBelongsToOneDeviceOnly 60/503 Test #60: Capability.PrefersAPoweredAdapter .............................................. Passed 0.00 sec Start 64: DeviceParsing.CachedCharacteristicsWithoutNotifyAreNotALink 61/503 Test #61: DeviceParsing.AnAncsNotifySessionProvesTheLeLinkIsUp ........................... Passed 0.00 sec Start 65: DeviceParsing.NoGattTreeAtAllMeansNoLeLink 62/503 Test #62: DeviceParsing.ANotifyFlagLeftOverADeadLeBearerIsNotALink ....................... Passed 0.01 sec Start 66: PreferredAdapter.ConfiguredIdWinsOverTheFirstPowered 63/503 Test #63: DeviceParsing.AnAncsNotifySessionBelongsToOneDeviceOnly ........................ Passed 0.01 sec Start 67: PreferredAdapter.FallsBackWhenTheConfiguredOneIsAbsent 64/503 Test #64: DeviceParsing.CachedCharacteristicsWithoutNotifyAreNotALink .................... Passed 0.00 sec Start 68: PreferredAdapter.PrefersPoweredThenFirst 65/503 Test #65: DeviceParsing.NoGattTreeAtAllMeansNoLeLink ..................................... Passed 0.01 sec Start 69: SecureConnectionsProbe.ParsesEnabledAndDisabledSettings 66/503 Test #66: PreferredAdapter.ConfiguredIdWinsOverTheFirstPowered ........................... Passed 0.01 sec Start 70: SecureConnectionsProbe.TimesOutAndTerminatesTheExactChild 67/503 Test #67: PreferredAdapter.FallsBackWhenTheConfiguredOneIsAbsent ......................... Passed 0.01 sec Start 71: SecureConnectionsProbe.DoesNotLeakParentDescriptorsIntoBtmgmt 68/503 Test #68: PreferredAdapter.PrefersPoweredThenFirst ....................................... Passed 0.00 sec Start 72: SecureConnectionsProbe.GivesBtmgmtAPollableStdin 69/503 Test #69: SecureConnectionsProbe.ParsesEnabledAndDisabledSettings ........................ Passed 0.01 sec Start 73: AgentPolicy.AuthorizesOnlyMapAndPbap 70/503 Test #71: SecureConnectionsProbe.DoesNotLeakParentDescriptorsIntoBtmgmt .................. Passed 0.01 sec Start 74: AgentPolicy.RefusesEverythingElse 71/503 Test #72: SecureConnectionsProbe.GivesBtmgmtAPollableStdin ............................... Passed 0.01 sec Start 75: AgentPolicy.ServiceMatchIsCaseInsensitive 72/503 Test #73: AgentPolicy.AuthorizesOnlyMapAndPbap ........................................... Passed 0.00 sec Start 76: AgentPolicy.AuthorizesHandsFreeOnlyWithCallsEnabled 73/503 Test #74: AgentPolicy.RefusesEverythingElse .............................................. Passed 0.00 sec Start 77: AgentPolicy.CallsEnabledStillRefusesEverythingElse 74/503 Test #75: AgentPolicy.ServiceMatchIsCaseInsensitive ...................................... Passed 0.00 sec Start 78: Passkey.FormatsSixDigitsWithLeadingZeros 75/503 Test #76: AgentPolicy.AuthorizesHandsFreeOnlyWithCallsEnabled ............................ Passed 0.00 sec Start 79: BluetoothConfig.RoundTrips 76/503 Test #77: AgentPolicy.CallsEnabledStillRefusesEverythingElse ............................. Passed 0.01 sec Start 80: BluetoothConfig.DefaultsToConnectFirstAndAncsEnabled 77/503 Test #78: Passkey.FormatsSixDigitsWithLeadingZeros ....................................... Passed 0.00 sec Start 81: BluetoothConfig.ClampsTheAwayGraceToAtLeastASecond 78/503 Test #79: BluetoothConfig.RoundTrips ..................................................... Passed 0.01 sec Start 82: BluetoothConfig.SupervisedAddressIsEmptyWhenDisabled 79/503 Test #80: BluetoothConfig.DefaultsToConnectFirstAndAncsEnabled ........................... Passed 0.00 sec Start 83: BluetoothConfig.UnknownStrategyFallsBackToConnectFirst 80/503 Test #81: BluetoothConfig.ClampsTheAwayGraceToAtLeastASecond ............................. Passed 0.01 sec Start 84: BluetoothConfig.SurvivesCorruptFile 81/503 Test #82: BluetoothConfig.SupervisedAddressIsEmptyWhenDisabled ........................... Passed 0.00 sec Start 85: BluetoothConfig.UnversionedFileTakesTheContentDefault 82/503 Test #83: BluetoothConfig.UnknownStrategyFallsBackToConnectFirst ......................... Passed 0.00 sec Start 86: BluetoothConfig.VersionedFileKeepsTheStoredChoice 83/503 Test #84: BluetoothConfig.SurvivesCorruptFile ............................................ Passed 0.00 sec Start 87: BluetoothConfig.SerializeStampsTheVersion 84/503 Test #85: BluetoothConfig.UnversionedFileTakesTheContentDefault .......................... Passed 0.00 sec Start 88: FallbackPolicy.RetriesARefusedConnectFirst 85/503 Test #86: BluetoothConfig.VersionedFileKeepsTheStoredChoice .............................. Passed 0.00 sec Start 89: FallbackPolicy.DoesNotRetryWhatAlreadyWorked 86/503 Test #87: BluetoothConfig.SerializeStampsTheVersion ...................................... Passed 0.00 sec Start 90: FallbackPolicy.DoesNotRetryAUserRejection 87/503 Test #88: FallbackPolicy.RetriesARefusedConnectFirst ..................................... Passed 0.00 sec Start 91: FallbackPolicy.NeverRetriesExplicitPair 88/503 Test #89: FallbackPolicy.DoesNotRetryWhatAlreadyWorked ................................... Passed 0.00 sec Start 92: DialogAnswer.OnlyAcceptRejectAndTimeoutAreAnswers 89/503 Test #90: FallbackPolicy.DoesNotRetryAUserRejection ...................................... Passed 0.00 sec Start 93: DialogAnswer.ADialogThatCouldNotRunAnsweredNothing 90/503 Test #91: FallbackPolicy.NeverRetriesExplicitPair ........................................ Passed 0.00 sec Start 94: AuthenticationFailure.RecognizesBlueZErrorNames 91/503 Test #92: DialogAnswer.OnlyAcceptRejectAndTimeoutAreAnswers .............................. Passed 0.00 sec Start 95: AuthenticationFailure.IgnoresConnectAndTransportErrors 92/503 Test #93: DialogAnswer.ADialogThatCouldNotRunAnsweredNothing ............................. Passed 0.01 sec Start 96: PairResultJson.ReportsTheStrategyThatBonded 93/503 Test #94: AuthenticationFailure.RecognizesBlueZErrorNames ................................ Passed 0.00 sec Start 97: BearerSupervisor.ConnectsClassicThenLeAfterSettling 94/503 Test #95: AuthenticationFailure.IgnoresConnectAndTransportErrors ......................... Passed 0.00 sec Start 98: BearerSupervisor.ClassicBackoffGrowsAndCaps 95/503 Test #96: PairResultJson.ReportsTheStrategyThatBonded .................................... Passed 0.00 sec Start 99: BearerSupervisor.InProgressWidensTheClassicWindow 96/503 Test #97: BearerSupervisor.ConnectsClassicThenLeAfterSettling ............................ Passed 0.00 sec Start 100: BearerSupervisor.DialsLeOnceThenLeavesItToTheSolicitation 97/503 Test #98: BearerSupervisor.ClassicBackoffGrowsAndCaps .................................... Passed 0.00 sec Start 101: BearerSupervisor.SolicitationIsHeldOffOnlyWhileTheOneDialIsInFlight 98/503 Test #99: BearerSupervisor.InProgressWidensTheClassicWindow .............................. Passed 0.00 sec Start 102: BearerSupervisor.ClassicDroppingUnderADialDoesNotLatchTheSolicitationOffAir 99/503 Test #100: BearerSupervisor.DialsLeOnceThenLeavesItToTheSolicitation ...................... Passed 0.01 sec Start 103: BearerSupervisor.NamesThePhoneCycleAfterALongSilence 100/503 Test #101: BearerSupervisor.SolicitationIsHeldOffOnlyWhileTheOneDialIsInFlight ............ Passed 0.01 sec Start 104: BearerSupervisor.BlamesTheAdapterWhenNothingWasEverSolicited 101/503 Test #102: BearerSupervisor.ClassicDroppingUnderADialDoesNotLatchTheSolicitationOffAir .... Passed 0.00 sec Start 105: BearerSupervisor.HandsTheBearerPreferenceBackToLeOnceClassicSettles 102/503 Test #104: BearerSupervisor.BlamesTheAdapterWhenNothingWasEverSolicited ................... Passed 0.00 sec Start 106: BearerSupervisor.DoesNotWriteTheBearerPreferenceOverADialInFlight 103/503 Test #103: BearerSupervisor.NamesThePhoneCycleAfterALongSilence ........................... Passed 0.01 sec Start 107: BearerSupervisor.BlamesThePinnedBondRatherThanThePhone 104/503 Test #70: SecureConnectionsProbe.TimesOutAndTerminatesTheExactChild ...................... Passed 0.06 sec 105/503 Test #105: BearerSupervisor.HandsTheBearerPreferenceBackToLeOnceClassicSettles ............ Passed 0.01 sec Start 108: BearerSupervisor.OneMomentOffAirDoesNotBlameTheAdapter Start 109: BearerSupervisor.RecoversAfterDisconnect 106/503 Test #107: BearerSupervisor.BlamesThePinnedBondRatherThanThePhone ......................... Passed 0.00 sec Start 110: BearerSupervisor.ResetClearsBackoffForImmediateRetry 107/503 Test #106: BearerSupervisor.DoesNotWriteTheBearerPreferenceOverADialInFlight .............. Passed 0.01 sec Start 111: BearerSupervisor.SkipsLeWhenAncsDisabled 108/503 Test #108: BearerSupervisor.OneMomentOffAirDoesNotBlameTheAdapter ......................... Passed 0.01 sec Start 112: BearerSupervisor.SkipsLeWhenBearerUnavailable 109/503 Test #109: BearerSupervisor.RecoversAfterDisconnect ....................................... Passed 0.01 sec Start 113: BearerSupervisor.ReportsMissingDevice 110/503 Test #110: BearerSupervisor.ResetClearsBackoffForImmediateRetry ........................... Passed 0.00 sec Start 114: BearerSupervisor.StandsDownWhenDeviceIsUnpaired 111/503 Test #111: BearerSupervisor.SkipsLeWhenAncsDisabled ....................................... Passed 0.00 sec Start 115: BearerSupervisor.TransientFailuresDoNotEscalateTheBackoff 112/503 Test #112: BearerSupervisor.SkipsLeWhenBearerUnavailable .................................. Passed 0.00 sec Start 116: BearerSupervisor.PersistentFailuresStillEscalate 113/503 Test #113: BearerSupervisor.ReportsMissingDevice .......................................... Passed 0.01 sec Start 117: BearerSupervisor.ResetClearsAnEscalatedBackoff 114/503 Test #114: BearerSupervisor.StandsDownWhenDeviceIsUnpaired ................................ Passed 0.01 sec Start 118: BearerSupervisor.LeStaysReportedWhenOnlyClassicIsDown 115/503 Test #115: BearerSupervisor.TransientFailuresDoNotEscalateTheBackoff ...................... Passed 0.00 sec Start 119: BearerSupervisor.RepeatedRefusalNamesTheRemedy 116/503 Test #116: BearerSupervisor.PersistentFailuresStillEscalate ............................... Passed 0.00 sec Start 120: BearerSupervisor.LeComingUpClearsTheClassicBackoff 117/503 Test #117: BearerSupervisor.ResetClearsAnEscalatedBackoff ................................. Passed 0.01 sec Start 121: BearerSupervisor.LeComingUpClearsTheRefusalAdvice 118/503 Test #118: BearerSupervisor.LeStaysReportedWhenOnlyClassicIsDown .......................... Passed 0.00 sec Start 122: BearerSupervisor.ClassicBackoffStaysShortWhileLeIsUp 119/503 Test #119: BearerSupervisor.RepeatedRefusalNamesTheRemedy ................................. Passed 0.01 sec Start 123: BearerSupervisor.DoesNotBlameThePhoneWhileItAnswersOnLe 120/503 Test #120: BearerSupervisor.LeComingUpClearsTheClassicBackoff ............................. Passed 0.01 sec Start 124: BearerSupervisor.NamesTheHostWhenObexIsUpAndClassicKeepsRefusing 121/503 Test #121: BearerSupervisor.LeComingUpClearsTheRefusalAdvice .............................. Passed 0.00 sec Start 125: BearerSupervisor.CyclesClassicOnceWhenHandsFreeIsAbsent 122/503 Test #122: BearerSupervisor.ClassicBackoffStaysShortWhileLeIsUp ........................... Passed 0.01 sec Start 126: BearerSupervisor.ArmsAnotherCycleAfterHandsFreeConnects 123/503 Test #123: BearerSupervisor.DoesNotBlameThePhoneWhileItAnswersOnLe ........................ Passed 0.01 sec Start 127: BearerSupervisor.NeverCyclesClassicWhenCallsAreDisabled 124/503 Test #124: BearerSupervisor.NamesTheHostWhenObexIsUpAndClassicKeepsRefusing ............... Passed 0.01 sec Start 128: BearerSupervisor.NeverCyclesClassicWhileHandsFreeIsPresent 125/503 Test #125: BearerSupervisor.CyclesClassicOnceWhenHandsFreeIsAbsent ........................ Passed 0.01 sec Start 129: AncsSolicitation.GoesBackOnAirOverAnLeLinkThatCarriesNoAncs 126/503 Test #126: BearerSupervisor.ArmsAnotherCycleAfterHandsFreeConnects ........................ Passed 0.00 sec Start 130: ObexErrors.DistinguishesForbiddenFromBusy 127/503 Test #127: BearerSupervisor.NeverCyclesClassicWhenCallsAreDisabled ........................ Passed 0.00 sec Start 131: ObexErrors.ServiceRecordMissingIsNotAPermissionProblem 128/503 Test #128: BearerSupervisor.NeverCyclesClassicWhileHandsFreeIsPresent ..................... Passed 0.00 sec Start 132: ObexErrors.ClassifiesUnavailableAndOther 129/503 Test #129: AncsSolicitation.GoesBackOnAirOverAnLeLinkThatCarriesNoAncs .................... Passed 0.00 sec Start 133: ObexErrors.MissingObexdIsNotBlamedOnThePhone 130/503 Test #130: ObexErrors.DistinguishesForbiddenFromBusy ...................................... Passed 0.00 sec Start 134: ObexErrors.AdviceNamesThePermissionToggle 131/503 Test #131: ObexErrors.ServiceRecordMissingIsNotAPermissionProblem ......................... Passed 0.01 sec Start 135: ProfileSupervisor.OpensBothSessionsWhenTheDeviceIsReady 132/503 Test #132: ObexErrors.ClassifiesUnavailableAndOther ....................................... Passed 0.00 sec Start 136: ProfileSupervisor.DoesNothingUntilTheDeviceIsReady 133/503 Test #133: ObexErrors.MissingObexdIsNotBlamedOnThePhone ................................... Passed 0.01 sec Start 137: ProfileSupervisor.RetriesOnceAfterForbidden 134/503 Test #134: ObexErrors.AdviceNamesThePermissionToggle ...................................... Passed 0.00 sec Start 138: ProfileSupervisor.UsesFastCadenceUntilSomethingOpens 135/503 Test #135: ProfileSupervisor.OpensBothSessionsWhenTheDeviceIsReady ........................ Passed 0.00 sec Start 139: ProfileSupervisor.PartialSuccessKeepsRetryingTheOtherProfile 136/503 Test #136: ProfileSupervisor.DoesNothingUntilTheDeviceIsReady ............................. Passed 0.00 sec Start 140: ProfileSupervisor.RespectsPollInterval 137/503 Test #137: ProfileSupervisor.RetriesOnceAfterForbidden .................................... Passed 0.01 sec Start 141: ProfileSupervisor.ResetRemovesSessions 138/503 Test #138: ProfileSupervisor.UsesFastCadenceUntilSomethingOpens ........................... Passed 0.01 sec Start 142: ProfileSupervisor.DestructionReleasesSessions 139/503 Test #139: ProfileSupervisor.PartialSuccessKeepsRetryingTheOtherProfile ................... Passed 0.00 sec Start 143: ProfileSupervisor.BusySessionKeepsPollingWithoutRetryBurst 140/503 Test #140: ProfileSupervisor.RespectsPollInterval ......................................... Passed 0.00 sec Start 144: ProfileSupervisor.ForbiddenRetryRemovesThePreviousSession 141/503 Test #141: ProfileSupervisor.ResetRemovesSessions ......................................... Passed 0.01 sec Start 145: ProfileSupervisor.DropMapReopensWithoutTouchingPbap 142/503 Test #142: ProfileSupervisor.DestructionReleasesSessions .................................. Passed 0.01 sec Start 146: AwayLock.LocksOnceTheGraceHasPassedAfterASupervisionTimeout 143/503 Test #143: ProfileSupervisor.BusySessionKeepsPollingWithoutRetryBurst ..................... Passed 0.00 sec Start 147: AwayLock.WaitsOutTheGraceBeforeLocking 144/503 Test #144: ProfileSupervisor.ForbiddenRetryRemovesThePreviousSession ...................... Passed 0.00 sec Start 148: AwayLock.NeverLocksWhileEitherBearerIsUp 145/503 Test #145: ProfileSupervisor.DropMapReopensWithoutTouchingPbap ............................ Passed 0.00 sec Start 149: AwayLock.NeverLocksWhileAnObexSessionIsOpen 146/503 Test #146: AwayLock.LocksOnceTheGraceHasPassedAfterASupervisionTimeout .................... Passed 0.00 sec Start 150: AwayLock.LocksOnNoOtherDisconnectReason 147/503 Test #147: AwayLock.WaitsOutTheGraceBeforeLocking ......................................... Passed 0.00 sec Start 151: AwayLock.NeverLocksForADeviceThatIsNoLongerPaired 148/503 Test #148: AwayLock.NeverLocksWhileEitherBearerIsUp ....................................... Passed 0.00 sec Start 152: AwayLock.NeverLocksWhenTheSettingIsOff 149/503 Test #149: AwayLock.NeverLocksWhileAnObexSessionIsOpen .................................... Passed 0.01 sec Start 153: AwayLock.NeverLocksBeforeAnythingHasGoneDown 150/503 Test #150: AwayLock.LocksOnNoOtherDisconnectReason ........................................ Passed 0.01 sec Start 154: BMessageParse.ParsesTelephoneOriginator 151/503 Test #151: AwayLock.NeverLocksForADeviceThatIsNoLongerPaired .............................. Passed 0.01 sec Start 155: BMessageParse.ParsesAppleIdOriginator 152/503 Test #152: AwayLock.NeverLocksWhenTheSettingIsOff ......................................... Passed 0.01 sec Start 156: BMessageParse.KeepsMultilineAndUtf8Bodies 153/503 Test #153: AwayLock.NeverLocksBeforeAnythingHasGoneDown ................................... Passed 0.01 sec Start 157: BMessageParse.UnstuffsBodyLinesThatLookStructural 154/503 Test #154: BMessageParse.ParsesTelephoneOriginator ........................................ Passed 0.01 sec Start 158: BMessageParse.AcceptsLfOnlyAndIgnoresUnknownProperties 155/503 Test #155: BMessageParse.ParsesAppleIdOriginator .......................................... Passed 0.00 sec Start 159: BMessageParse.RejectsMalformedInputWithoutThrowing 156/503 Test #156: BMessageParse.KeepsMultilineAndUtf8Bodies ...................................... Passed 0.00 sec Start 160: BMessageParse.StripsTheSchemeTagIosPutsOnAddresses 157/503 Test #157: BMessageParse.UnstuffsBodyLinesThatLookStructural .............................. Passed 0.00 sec Start 161: BMessageParse.LeavesAnUntaggedAddressAlone 158/503 Test #158: BMessageParse.AcceptsLfOnlyAndIgnoresUnknownProperties ......................... Passed 0.00 sec Start 162: AddressIdentity.NormalizesPhoneFormatting 159/503 Test #159: BMessageParse.RejectsMalformedInputWithoutThrowing ............................. Passed 0.00 sec Start 163: AddressIdentity.DoesNotInventCountryCodes 160/503 Test #160: BMessageParse.StripsTheSchemeTagIosPutsOnAddresses ............................. Passed 0.00 sec Start 164: AddressIdentity.EmailIsCaseInsensitive 161/503 Test #161: BMessageParse.LeavesAnUntaggedAddressAlone ..................................... Passed 0.01 sec Start 165: AddressIdentity.ThreadKeyPrefersTelAndNamespacesTypes 162/503 Test #162: AddressIdentity.NormalizesPhoneFormatting ...................................... Passed 0.01 sec Start 166: AddressIdentity.AlphanumericSenderKeepsItsOwnKey 163/503 Test #163: AddressIdentity.DoesNotInventCountryCodes ...................................... Passed 0.01 sec Start 167: AddressIdentity.NameDoesNotAffectThreadKey 164/503 Test #164: AddressIdentity.EmailIsCaseInsensitive ......................................... Passed 0.00 sec Start 168: Timestamps.ParsesMapBasicIso 165/503 Test #165: AddressIdentity.ThreadKeyPrefersTelAndNamespacesTypes .......................... Passed 0.00 sec Start 169: MessageStore.DedupesByHandle 166/503 Test #166: AddressIdentity.AlphanumericSenderKeepsItsOwnKey ............................... Passed 0.01 sec 167/503 Test #167: AddressIdentity.NameDoesNotAffectThreadKey ..................................... Passed 0.00 sec Start 170: MessageStore.RejectsMessagesWithoutHandle Start 171: MessageStore.GroupsThreadsNewestFirst 168/503 Test #168: Timestamps.ParsesMapBasicIso ................................................... Passed 0.01 sec Start 172: MessageStore.CountsUnreadIncomingOnly 169/503 Test #169: MessageStore.DedupesByHandle ................................................... Passed 0.01 sec Start 173: MessageStore.MarkReadIsIdempotentAndReportsChange 170/503 Test #170: MessageStore.RejectsMessagesWithoutHandle ...................................... Passed 0.01 sec Start 174: MessageStore.MessagesAreOldestFirstAndLimited 171/503 Test #171: MessageStore.GroupsThreadsNewestFirst .......................................... Passed 0.01 sec Start 175: MessageStore.EvictsOldestBeyondCap 172/503 Test #172: MessageStore.CountsUnreadIncomingOnly .......................................... Passed 0.01 sec Start 176: MessageStore.BuildsMessageFromIncomingBMessage 173/503 Test #173: MessageStore.MarkReadIsIdempotentAndReportsChange .............................. Passed 0.01 sec Start 177: MessageStore.OutgoingMessageIsKeyedOnRecipient 174/503 Test #174: MessageStore.MessagesAreOldestFirstAndLimited .................................. Passed 0.01 sec Start 178: MessageStore.PhoneCopySupersedesTheLocalEcho 175/503 Test #175: MessageStore.EvictsOldestBeyondCap ............................................. Passed 0.01 sec Start 179: MessageStore.MultiLineEchoSurvivesAFlattenedPhoneCopy 176/503 Test #176: MessageStore.BuildsMessageFromIncomingBMessage ................................. Passed 0.01 sec Start 180: MessageStore.UnrelatedOutgoingMessagesAreNotCollapsed 177/503 Test #177: MessageStore.OutgoingMessageIsKeyedOnRecipient ................................. Passed 0.01 sec Start 181: MessageStore.EchoIsCollapsedOnReplayToo 178/503 Test #178: MessageStore.PhoneCopySupersedesTheLocalEcho ................................... Passed 0.01 sec Start 182: MessageStore.OneNumberSpelledTwoWaysIsOneThread 179/503 Test #179: MessageStore.MultiLineEchoSurvivesAFlattenedPhoneCopy .......................... Passed 0.01 sec Start 183: MessageStore.NationalAndInternationalFormsShareAThread 180/503 Test #180: MessageStore.UnrelatedOutgoingMessagesAreNotCollapsed .......................... Passed 0.01 sec Start 184: MessageStore.EchoCollapsesAcrossAddressSpellings 181/503 Test #181: MessageStore.EchoIsCollapsedOnReplayToo ........................................ Passed 0.01 sec Start 185: MessageStore.ShortNumbersStaySeparate 182/503 Test #182: MessageStore.OneNumberSpelledTwoWaysIsOneThread ................................ Passed 0.01 sec Start 186: MessageStore.RefreshesObjectPathOnRelist 183/503 Test #183: MessageStore.NationalAndInternationalFormsShareAThread ......................... Passed 0.01 sec Start 187: MapListing.BuildsMessageWithoutBMessageFetch 184/503 Test #184: MessageStore.EchoCollapsesAcrossAddressSpellings ............................... Passed 0.01 sec Start 188: MapListing.RoutesAppleIdSenderToEmailIdentity 185/503 Test #185: MessageStore.ShortNumbersStaySeparate .......................................... Passed 0.01 sec Start 189: MapListing.AgreesWithBMessageThreadKey 186/503 Test #186: MessageStore.RefreshesObjectPathOnRelist ....................................... Passed 0.00 sec Start 190: MapListing.SentFlagMarksOutgoing 187/503 Test #187: MapListing.BuildsMessageWithoutBMessageFetch ................................... Passed 0.00 sec Start 191: MapListing.IncomingIsKeyedOnTheSender 188/503 Test #188: MapListing.RoutesAppleIdSenderToEmailIdentity .................................. Passed 0.00 sec Start 192: MapListing.SentIsKeyedOnTheRecipient 189/503 Test #189: MapListing.AgreesWithBMessageThreadKey ......................................... Passed 0.01 sec Start 193: MapListing.SentFolderIsOutgoingWithoutTheFlag 190/503 Test #190: MapListing.SentFlagMarksOutgoing ............................................... Passed 0.01 sec Start 194: MapListing.SentWithoutARecipientHasNoThread 191/503 Test #191: MapListing.IncomingIsKeyedOnTheSender .......................................... Passed 0.01 sec Start 195: MapListing.EmailRecipientIsKeyedAsAnAppleId 192/503 Test #192: MapListing.SentIsKeyedOnTheRecipient ........................................... Passed 0.01 sec Start 196: MapHandle.StripsTheSessionScopedPrefix 193/503 Test #193: MapListing.SentFolderIsOutgoingWithoutTheFlag .................................. Passed 0.00 sec Start 197: MapHandle.PassesThroughUnexpectedShapes 194/503 Test #194: MapListing.SentWithoutARecipientHasNoThread .................................... Passed 0.00 sec Start 198: MapListingConversion.KeepsTheObjectPathForActingOnTheMessage 195/503 Test #195: MapListing.EmailRecipientIsKeyedAsAnAppleId .................................... Passed 0.00 sec Start 199: BMessage.MultiLineBodyKeepsItsLineBreaks 196/503 Test #196: MapHandle.StripsTheSessionScopedPrefix ......................................... Passed 0.00 sec Start 200: BMessageBuild.ProducesTheShapeThePhoneAccepts 197/503 Test #197: MapHandle.PassesThroughUnexpectedShapes ........................................ Passed 0.00 sec Start 201: BMessageBuild.AlwaysUsesSmsGsmEvenForAppleIdRecipients 198/503 Test #198: MapListingConversion.KeepsTheObjectPathForActingOnTheMessage ................... Passed 0.00 sec Start 202: BMessageBuild.AppleIdAddressesCarryASchemeTagSoIosCannotEatThem 199/503 Test #199: BMessage.MultiLineBodyKeepsItsLineBreaks ....................................... Passed 0.00 sec Start 203: BMessageBuild.UsesTheVcardShapeIosParsesCorrectly 200/503 Test #200: BMessageBuild.ProducesTheShapeThePhoneAccepts .................................. Passed 0.00 sec Start 204: BMessageBuild.EmailRecipientSurvivesAParseOfWhatWasBuilt 201/503 Test #201: BMessageBuild.AlwaysUsesSmsGsmEvenForAppleIdRecipients ......................... Passed 0.00 sec Start 205: BMessageBuild.LengthCountsTheWholeMessageBlock 202/503 Test #203: BMessageBuild.UsesTheVcardShapeIosParsesCorrectly .............................. Passed 0.00 sec Start 206: BMessageBuild.ATrailingNewlineDoesNotBecomeBlankLines 203/503 Test #202: BMessageBuild.AppleIdAddressesCarryASchemeTagSoIosCannotEatThem ................ Passed 0.01 sec Start 207: BMessageBuild.RejectsNewlineInjectedRecipient 204/503 Test #204: BMessageBuild.EmailRecipientSurvivesAParseOfWhatWasBuilt ....................... Passed 0.01 sec Start 208: BMessageBuild.RejectsVCardDelimiters 205/503 Test #205: BMessageBuild.LengthCountsTheWholeMessageBlock ................................. Passed 0.00 sec Start 209: BMessageBuild.RejectsControlCharacters 206/503 Test #206: BMessageBuild.ATrailingNewlineDoesNotBecomeBlankLines .......................... Passed 0.00 sec Start 210: BMessageBuild.BuildRefusesAnInvalidRecipientEntirely 207/503 Test #207: BMessageBuild.RejectsNewlineInjectedRecipient .................................. Passed 0.00 sec Start 211: BMessageBuild.InjectedRecipientNeverSurvivesIntoAParsedMessage 208/503 Test #208: BMessageBuild.RejectsVCardDelimiters ........................................... Passed 0.00 sec Start 212: BMessageBuild.AcceptsAddressesPeopleActuallyWrite 209/503 Test #209: BMessageBuild.RejectsControlCharacters ......................................... Passed 0.00 sec Start 213: BMessageBuild.RejectsAddressesThatAreNotAddresses 210/503 Test #210: BMessageBuild.BuildRefusesAnInvalidRecipientEntirely ........................... Passed 0.00 sec Start 214: BMessageBuild.StuffsBodyLinesThatLookStructural 211/503 Test #211: BMessageBuild.InjectedRecipientNeverSurvivesIntoAParsedMessage ................. Passed 0.00 sec Start 215: BMessageBuild.StuffedBodySurvivesARoundTrip 212/503 Test #212: BMessageBuild.AcceptsAddressesPeopleActuallyWrite .............................. Passed 0.01 sec Start 216: BMessageBuild.PreservesUtf8Bodies 213/503 Test #213: BMessageBuild.RejectsAddressesThatAreNotAddresses .............................. Passed 0.01 sec Start 217: BMessageBuild.HandlesMultiLineAndEmptyBodies 214/503 Test #214: BMessageBuild.StuffsBodyLinesThatLookStructural ................................ Passed 0.00 sec Start 218: BMessageBuild.ParsesRecipientsFromThreadKeys 215/503 Test #215: BMessageBuild.StuffedBodySurvivesARoundTrip .................................... Passed 0.00 sec Start 219: BMessageBuild.RefusesThreadKeysItDoesNotUnderstand 216/503 Test #216: BMessageBuild.PreservesUtf8Bodies .............................................. Passed 0.00 sec Start 220: BMessageBuild.ParsesRecipientsFromTypedInput 217/503 Test #217: BMessageBuild.HandlesMultiLineAndEmptyBodies ................................... Passed 0.00 sec Start 221: BMessageBuild.RefusesTypedInputThatIsNotAnAddress 218/503 Test #219: BMessageBuild.RefusesThreadKeysItDoesNotUnderstand ............................. Passed 0.00 sec Start 222: AncsParser.ParsesASourceEvent 219/503 Test #218: BMessageBuild.ParsesRecipientsFromThreadKeys ................................... Passed 0.01 sec Start 223: AncsParser.RejectsSourcePacketsOfTheWrongLength 220/503 Test #220: BMessageBuild.ParsesRecipientsFromTypedInput ................................... Passed 0.00 sec Start 224: AncsParser.RejectsUnknownEventIds 221/503 Test #221: BMessageBuild.RefusesTypedInputThatIsNotAnAddress .............................. Passed 0.00 sec Start 225: AncsParser.ReassemblesACompleteResponse 222/503 Test #222: AncsParser.ParsesASourceEvent .................................................. Passed 0.00 sec Start 226: AncsParser.ReassemblesAcrossArbitraryFragmentBoundaries 223/503 Test #223: AncsParser.RejectsSourcePacketsOfTheWrongLength ................................ Passed 0.00 sec Start 227: AncsParser.ReassemblesOneByteAtATime 224/503 Test #224: AncsParser.RejectsUnknownEventIds .............................................. Passed 0.00 sec Start 228: AncsParser.ParsesAppAttributeResponses 225/503 Test #225: AncsParser.ReassemblesACompleteResponse ........................................ Passed 0.00 sec Start 229: AncsParser.WaitsForAnUnterminatedAppIdentifier 226/503 Test #226: AncsParser.ReassemblesAcrossArbitraryFragmentBoundaries ........................ Passed 0.00 sec Start 230: AncsParser.RejectsAResponseThatDoesNotEchoTheCommand 227/503 Test #227: AncsParser.ReassemblesOneByteAtATime ........................................... Passed 0.00 sec Start 231: AncsParser.RejectsAttributesReturnedOutOfOrder 228/503 Test #228: AncsParser.ParsesAppAttributeResponses ......................................... Passed 0.00 sec Start 232: AncsParser.RejectsAnImplausibleAttributeLength 229/503 Test #229: AncsParser.WaitsForAnUnterminatedAppIdentifier ................................. Passed 0.00 sec Start 233: AncsParser.RejectsTrailingBytesAfterACompleteResponse 230/503 Test #230: AncsParser.RejectsAResponseThatDoesNotEchoTheCommand ........................... Passed 0.00 sec Start 234: AncsParser.RejectsAResponseThatGrowsWithoutEnding 231/503 Test #231: AncsParser.RejectsAttributesReturnedOutOfOrder ................................. Passed 0.00 sec Start 235: AncsParser.RefusesFragmentsWithNoRequestInFlight 232/503 Test #232: AncsParser.RejectsAnImplausibleAttributeLength ................................. Passed 0.00 sec Start 236: AncsParser.RecoversAfterAnError 233/503 Test #233: AncsParser.RejectsTrailingBytesAfterACompleteResponse .......................... Passed 0.00 sec Start 237: AncsParser.HandlesEmptyAttributeValues 234/503 Test #234: AncsParser.RejectsAResponseThatGrowsWithoutEnding .............................. Passed 0.00 sec Start 238: AncsSequencer.EncodesANotificationRequest 235/503 Test #235: AncsParser.RefusesFragmentsWithNoRequestInFlight ............................... Passed 0.00 sec Start 239: AncsSequencer.EncodesDateWithoutALength 236/503 Test #236: AncsParser.RecoversAfterAnError ................................................ Passed 0.01 sec Start 240: AncsSequencer.EncodesAnAppRequest 237/503 Test #237: AncsParser.HandlesEmptyAttributeValues ......................................... Passed 0.01 sec Start 241: AncsSequencer.EncodesAnActionRequest 238/503 Test #238: AncsSequencer.EncodesANotificationRequest ...................................... Passed 0.00 sec Start 242: AncsSequencer.KeepsExactlyOneRequestInFlight 239/503 Test #239: AncsSequencer.EncodesDateWithoutALength ........................................ Passed 0.00 sec Start 243: AncsSequencer.MatchesEachResponseToItsOwnRequest 240/503 Test #240: AncsSequencer.EncodesAnAppRequest .............................................. Passed 0.00 sec Start 244: AncsSequencer.ALateResponseIsDeliveredAgainstTheWrongRequest 241/503 Test #241: AncsSequencer.EncodesAnActionRequest ........................................... Passed 0.00 sec Start 245: AncsSequencer.DoesNotWaitForAResponseToAnAction 242/503 Test #242: AncsSequencer.KeepsExactlyOneRequestInFlight ................................... Passed 0.00 sec Start 246: AncsSequencer.TimesOutARequestThatIsNeverAnswered 243/503 Test #243: AncsSequencer.MatchesEachResponseToItsOwnRequest ............................... Passed 0.00 sec Start 247: AncsSequencer.FailsARequestWhoseWriteIsRefused 244/503 Test #244: AncsSequencer.ALateResponseIsDeliveredAgainstTheWrongRequest ................... Passed 0.00 sec Start 248: AncsSequencer.FailsTheRequestWhenItsResponseIsMalformed 245/503 Test #245: AncsSequencer.DoesNotWaitForAResponseToAnAction ................................ Passed 0.00 sec Start 249: AncsSequencer.DropsEverythingOnReset 246/503 Test #247: AncsSequencer.FailsARequestWhoseWriteIsRefused ................................. Passed 0.00 sec Start 250: AncsSequencer.BoundsTheQueue 247/503 Test #246: AncsSequencer.TimesOutARequestThatIsNeverAnswered .............................. Passed 0.01 sec Start 251: AncsNotifications.SkipsPreExistingOnFirstSubscribe 248/503 Test #248: AncsSequencer.FailsTheRequestWhenItsResponseIsMalformed ........................ Passed 0.00 sec Start 252: AncsNotifications.DedupesRepeatedAddedEvents 249/503 Test #249: AncsSequencer.DropsEverythingOnReset ........................................... Passed 0.00 sec Start 253: AncsNotifications.NeverSuppressesAModification 250/503 Test #250: AncsSequencer.BoundsTheQueue ................................................... Passed 0.00 sec Start 254: AncsNotifications.WithdrawsRemovedNotifications 251/503 Test #251: AncsNotifications.SkipsPreExistingOnFirstSubscribe ............................. Passed 0.00 sec Start 255: AncsNotifications.SuppressesDesktopPopupsForMessages 252/503 Test #252: AncsNotifications.DedupesRepeatedAddedEvents ................................... Passed 0.00 sec Start 256: AncsNotifications.KeepsRecentNotificationsNewestFirst 253/503 Test #253: AncsNotifications.NeverSuppressesAModification ................................. Passed 0.00 sec Start 257: AncsNotifications.ClearingForgetsEverything 254/503 Test #254: AncsNotifications.WithdrawsRemovedNotifications ................................ Passed 0.00 sec Start 258: AncsAppName.DerivesTheLastBundleComponent 255/503 Test #255: AncsNotifications.SuppressesDesktopPopupsForMessages ........................... Passed 0.00 sec Start 259: AncsIcons.PrefersTheAppOverItsCategory 256/503 Test #256: AncsNotifications.KeepsRecentNotificationsNewestFirst .......................... Passed 0.00 sec Start 260: AncsIcons.FallsBackToTheCategoryForAnUnknownApp 257/503 Test #257: AncsNotifications.ClearingForgetsEverything .................................... Passed 0.00 sec Start 261: AncsIcons.AlwaysEndsWithAnIconThatShipsWithTether 258/503 Test #258: AncsAppName.DerivesTheLastBundleComponent ...................................... Passed 0.00 sec Start 262: AncsLaunchTarget.OffersAWayToReachTheLinuxApp 259/503 Test #259: AncsIcons.PrefersTheAppOverItsCategory ......................................... Passed 0.00 sec Start 263: AncsLaunchTarget.IsEmptyWithoutALinuxCounterpart 260/503 Test #260: AncsIcons.FallsBackToTheCategoryForAnUnknownApp ................................ Passed 0.00 sec Start 264: AncsRegistry.RenameAppTouchesOnlyThatApp 261/503 Test #261: AncsIcons.AlwaysEndsWithAnIconThatShipsWithTether .............................. Passed 0.00 sec Start 265: AncsRegistry.RenameAppIgnoresEmptyArguments 262/503 Test #262: AncsLaunchTarget.OffersAWayToReachTheLinuxApp .................................. Passed 0.01 sec Start 266: AncsRegistry.ANewSessionStopsRecycledUidsReadingAsReplays 263/503 Test #264: AncsRegistry.RenameAppTouchesOnlyThatApp ....................................... Passed 0.00 sec Start 267: AncsRegistry.ANewSessionKeepsWhatIsOnScreen 264/503 Test #263: AncsLaunchTarget.IsEmptyWithoutALinuxCounterpart ............................... Passed 0.01 sec Start 268: AncsRegistry.RecentIsOrderedByDeliveryTime 265/503 Test #265: AncsRegistry.RenameAppIgnoresEmptyArguments .................................... Passed 0.01 sec Start 269: Groups.ParsesAnUnnamedGroupSubtitle 266/503 Test #266: AncsRegistry.ANewSessionStopsRecycledUidsReadingAsReplays ...................... Passed 0.00 sec Start 270: Groups.ParsesLongerParticipantLists 267/503 Test #267: AncsRegistry.ANewSessionKeepsWhatIsOnScreen .................................... Passed 0.00 sec Start 271: Groups.ParsesANamedGroup 268/503 Test #268: AncsRegistry.RecentIsOrderedByDeliveryTime ..................................... Passed 0.00 sec Start 272: Groups.TreatsAOneToOneNotificationAsNotAGroup 269/503 Test #269: Groups.ParsesAnUnnamedGroupSubtitle ............................................ Passed 0.01 sec Start 273: Groups.NamedGroupsWithTheSameNameShareAKey 270/503 Test #270: Groups.ParsesLongerParticipantLists ............................................ Passed 0.01 sec Start 274: Groups.UnnamedGroupKeyDoesNotDependOnMemberOrder 271/503 Test #271: Groups.ParsesANamedGroup ....................................................... Passed 0.00 sec Start 275: Groups.CorrelatesAMessageToItsNotification 272/503 Test #272: Groups.TreatsAOneToOneNotificationAsNotAGroup .................................. Passed 0.00 sec Start 276: Groups.MatchesALongerBodyByItsPrefix 273/503 Test #274: Groups.UnnamedGroupKeyDoesNotDependOnMemberOrder ............................... Passed 0.00 sec Start 277: Groups.IgnoresNotificationsOutsideTheWindow 274/503 Test #273: Groups.NamedGroupsWithTheSameNameShareAKey ..................................... Passed 0.01 sec Start 278: Groups.RefusesAmbiguousRepeatedBodies 275/503 Test #275: Groups.CorrelatesAMessageToItsNotification ..................................... Passed 0.01 sec Start 279: Groups.ReportsNoMatchForAnUnrelatedMessage 276/503 Test #276: Groups.MatchesALongerBodyByItsPrefix ........................................... Passed 0.01 sec Start 280: Groups.ExpiryDropsStaleNotifications 277/503 Test #277: Groups.IgnoresNotificationsOutsideTheWindow .................................... Passed 0.01 sec Start 281: Groups.ResolvesAnUnnamedGroupWhenEveryNameIsUnambiguous 278/503 Test #278: Groups.RefusesAmbiguousRepeatedBodies .......................................... Passed 0.01 sec Start 282: Groups.RefusesAnAmbiguousParticipantName 279/503 Test #279: Groups.ReportsNoMatchForAnUnrelatedMessage ..................................... Passed 0.01 sec Start 283: Groups.RefusesAnUnknownParticipantName 280/503 Test #280: Groups.ExpiryDropsStaleNotifications ........................................... Passed 0.01 sec Start 284: Groups.NamedGroupsAreReadOnlyWithoutARoster 281/503 Test #281: Groups.ResolvesAnUnnamedGroupWhenEveryNameIsUnambiguous ........................ Passed 0.01 sec Start 285: Groups.ARosterMakesANamedGroupRepliable 282/503 Test #282: Groups.RefusesAnAmbiguousParticipantName ....................................... Passed 0.01 sec Start 286: Groups.RefusesARosterEntryThatCouldInjectARecipient 283/503 Test #283: Groups.RefusesAnUnknownParticipantName ......................................... Passed 0.01 sec 284/503 Test #284: Groups.NamedGroupsAreReadOnlyWithoutARoster .................................... Passed 0.01 sec Start 287: Groups.AnUnidentifiedThreadCannotBeRepliedTo Start 288: Groups.RepliesAreOffUntilEnabled 285/503 Test #285: Groups.ARosterMakesANamedGroupRepliable ........................................ Passed 0.00 sec Start 289: Groups.AnUnknownSenderInvalidatesTheRoute 286/503 Test #286: Groups.RefusesARosterEntryThatCouldInjectARecipient ............................ Passed 0.01 sec Start 290: Groups.RosterSurvivesARoundTrip 287/503 Test #287: Groups.AnUnidentifiedThreadCannotBeRepliedTo ................................... Passed 0.00 sec Start 291: Groups.CorruptRosterResolvesToNothing 288/503 Test #288: Groups.RepliesAreOffUntilEnabled ............................................... Passed 0.01 sec Start 292: BtDiagnostics.RedactsBareAddress 289/503 Test #289: Groups.AnUnknownSenderInvalidatesTheRoute ...................................... Passed 0.00 sec Start 293: BtDiagnostics.RedactsDeviceNodeInObjectPath 290/503 Test #290: Groups.RosterSurvivesARoundTrip ................................................ Passed 0.01 sec Start 294: BtDiagnostics.SameDeviceGetsSamePlaceholderAcrossSpellings 291/503 Test #291: Groups.CorruptRosterResolvesToNothing .......................................... Passed 0.01 sec Start 295: BtDiagnostics.DistinctDevicesGetDistinctPlaceholders 292/503 Test #292: BtDiagnostics.RedactsBareAddress ............................................... Passed 0.01 sec Start 296: BtDiagnostics.RedactsEmailAndPhoneNumber 293/503 Test #293: BtDiagnostics.RedactsDeviceNodeInObjectPath .................................... Passed 0.01 sec Start 297: BtDiagnostics.RedactsARegisteredDeviceAlias 294/503 Test #295: BtDiagnostics.DistinctDevicesGetDistinctPlaceholders ........................... Passed 0.00 sec Start 298: BtDiagnostics.LeavesAGenericDeviceNameAlone 295/503 Test #294: BtDiagnostics.SameDeviceGetsSamePlaceholderAcrossSpellings ..................... Passed 0.01 sec Start 299: BtDiagnostics.AnAliasWinsOverThePatternsInsideIt 296/503 Test #296: BtDiagnostics.RedactsEmailAndPhoneNumber ....................................... Passed 0.01 sec Start 300: BtDiagnostics.LeavesTimestampsAndErrorCodesAlone 297/503 Test #297: BtDiagnostics.RedactsARegisteredDeviceAlias .................................... Passed 0.01 sec Start 301: BtDiagnostics.RedactsHomeAndRuntimeDirectories 298/503 Test #298: BtDiagnostics.LeavesAGenericDeviceNameAlone .................................... Passed 0.01 sec Start 302: BtDiagnostics.RedactsAConfigDirectoryOutsideTheHome 299/503 Test #299: BtDiagnostics.AnAliasWinsOverThePatternsInsideIt ............................... Passed 0.01 sec Start 303: BtDiagnostics.RedactsRuntimeDirectoryWithoutTheEnvironmentVariable 300/503 Test #300: BtDiagnostics.LeavesTimestampsAndErrorCodesAlone ............................... Passed 0.01 sec Start 304: BtDiagnostics.DropsContentKeysRatherThanRedactingThem 301/503 Test #301: BtDiagnostics.RedactsHomeAndRuntimeDirectories ................................. Passed 0.01 sec Start 305: BtDiagnostics.RedactsNestedStructures 302/503 Test #302: BtDiagnostics.RedactsAConfigDirectoryOutsideTheHome ............................ Passed 0.00 sec Start 306: BtDiagnostics.TimelineKeepsOnlyStateEvents 303/503 Test #303: BtDiagnostics.RedactsRuntimeDirectoryWithoutTheEnvironmentVariable ............. Passed 0.01 sec Start 307: BtDiagnostics.TimelineStripsContentAtRecordTime 304/503 Test #304: BtDiagnostics.DropsContentKeysRatherThanRedactingThem .......................... Passed 0.01 sec 305/503 Test #305: BtDiagnostics.RedactsNestedStructures .......................................... Passed 0.00 sec Start 308: BtDiagnostics.TimelineIsOrderedAndMonotonic Start 309: BtDiagnostics.TimelineIsBounded 306/503 Test #306: BtDiagnostics.TimelineKeepsOnlyStateEvents ..................................... Passed 0.00 sec Start 310: BtDiagnostics.ReportCarriesNoAddressOrContent 307/503 Test #307: BtDiagnostics.TimelineStripsContentAtRecordTime ................................ Passed 0.00 sec Start 311: DialString.KeepsDigitsAndLeadingPlus 308/503 Test #308: BtDiagnostics.TimelineIsOrderedAndMonotonic .................................... Passed 0.00 sec Start 312: DialString.RefusesEverythingElse 309/503 Test #309: BtDiagnostics.TimelineIsBounded ................................................ Passed 0.01 sec Start 313: Telephony.ParsesTheGateway 310/503 Test #311: DialString.KeepsDigitsAndLeadingPlus ........................................... Passed 0.00 sec Start 314: Telephony.ParsesOnlyTheSelectedGatewaysCalls 311/503 Test #312: DialString.RefusesEverythingElse ............................................... Passed 0.00 sec Start 315: Telephony.GatewayPathIsMatchedWholeNotAsAPrefix 312/503 Test #313: Telephony.ParsesTheGateway ..................................................... Passed 0.00 sec Start 316: Telephony.AbsentWhenHandsFreeIsNotConnected 313/503 Test #310: BtDiagnostics.ReportCarriesNoAddressOrContent .................................. Passed 0.01 sec Start 317: Telephony.IsNotReadyBeforeTheServiceLevelConnection 314/503 Test #314: Telephony.ParsesOnlyTheSelectedGatewaysCalls ................................... Passed 0.01 sec Start 318: Telephony.TracksACallThroughItsStates 315/503 Test #315: Telephony.GatewayPathIsMatchedWholeNotAsAPrefix ................................ Passed 0.00 sec Start 319: Telephony.PassesUnknownStatesThrough 316/503 Test #316: Telephony.AbsentWhenHandsFreeIsNotConnected .................................... Passed 0.00 sec Start 320: Telephony.WithheldCallerIdIsNotANumber 317/503 Test #317: Telephony.IsNotReadyBeforeTheServiceLevelConnection ............................ Passed 0.00 sec Start 321: Telephony.SerializesCallsForClients 318/503 Test #319: Telephony.PassesUnknownStatesThrough ........................................... Passed 0.00 sec Start 322: Telephony.SerializesTheGatewayForClients 319/503 Test #318: Telephony.TracksACallThroughItsStates .......................................... Passed 0.01 sec Start 323: PipewireTelephony.MatchesTheGatewayByAddress 320/503 Test #320: Telephony.WithheldCallerIdIsNotANumber ......................................... Passed 0.01 sec Start 324: PipewireTelephony.RootManagerCarriesNoCalls 321/503 Test #321: Telephony.SerializesCallsForClients ............................................ Passed 0.01 sec Start 325: PipewireTelephony.ScopesCallsToTheirOwnGateway 322/503 Test #322: Telephony.SerializesTheGatewayForClients ....................................... Passed 0.01 sec Start 326: PipewireTelephony.CallsNeedAGatewayToBelongTo 323/503 Test #323: PipewireTelephony.MatchesTheGatewayByAddress ................................... Passed 0.01 sec 324/503 Test #324: PipewireTelephony.RootManagerCarriesNoCalls .................................... Passed 0.00 sec Start 327: PipewireTelephony.UnknownAddressYieldsNoGateway Start 328: PipewireTelephony.ReportsNoCellularIndicators 325/503 Test #325: PipewireTelephony.ScopesCallsToTheirOwnGateway ................................. Passed 0.01 sec Start 329: PipewireTelephony.EmptyPayloadIsNotAFailure 326/503 Test #326: PipewireTelephony.CallsNeedAGatewayToBelongTo .................................. Passed 0.01 sec Start 330: TelephonyClientSources.PrefersTheFirstSourceWithAGateway 327/503 Test #327: PipewireTelephony.UnknownAddressYieldsNoGateway ................................ Passed 0.01 sec Start 331: TelephonyClientSources.FallsThroughToTheNextSource 328/503 Test #328: PipewireTelephony.ReportsNoCellularIndicators .................................. Passed 0.01 sec Start 332: TelephonyClientSources.NoSourceReadsAsUnavailable 329/503 Test #329: PipewireTelephony.EmptyPayloadIsNotAFailure .................................... Passed 0.01 sec Start 333: TelephonyClientSources.AudioActionIsRefusedWithoutATransport 330/503 Test #331: TelephonyClientSources.FallsThroughToTheNextSource ............................. Passed 0.00 sec Start 334: TelephonyClientSources.DialArgumentMatchesTheStack 331/503 Test #330: TelephonyClientSources.PrefersTheFirstSourceWithAGateway ....................... Passed 0.01 sec Start 335: VCard.ParsesNameTelAndEmail 332/503 Test #332: TelephonyClientSources.NoSourceReadsAsUnavailable .............................. Passed 0.01 sec Start 336: VCard.KeepsEveryTelAndEmail 333/503 Test #333: TelephonyClientSources.AudioActionIsRefusedWithoutATransport ................... Passed 0.01 sec Start 337: VCard.ParsesMultipleCards 334/503 Test #334: TelephonyClientSources.DialArgumentMatchesTheStack ............................. Passed 0.00 sec Start 338: VCard.UnfoldsContinuationLines 335/503 Test #335: VCard.ParsesNameTelAndEmail .................................................... Passed 0.00 sec Start 339: VCard.FallsBackToStructuredName 336/503 Test #336: VCard.KeepsEveryTelAndEmail .................................................... Passed 0.01 sec Start 340: VCard.PrefersFormattedNameOverStructured 337/503 Test #337: VCard.ParsesMultipleCards ...................................................... Passed 0.00 sec Start 341: VCard.UnescapesValues 338/503 Test #338: VCard.UnfoldsContinuationLines ................................................. Passed 0.00 sec Start 342: VCard.IgnoresMalformedInput 339/503 Test #339: VCard.FallsBackToStructuredName ................................................ Passed 0.01 sec Start 343: VCard.RecoversFromUnterminatedCard 340/503 Test #340: VCard.PrefersFormattedNameOverStructured ....................................... Passed 0.01 sec Start 344: ContactStore.ResolvesNamesByTelAndEmail 341/503 Test #341: VCard.UnescapesValues .......................................................... Passed 0.01 sec Start 345: ContactStore.MatchesNationalAndE164FormsForDisplay 342/503 Test #342: VCard.IgnoresMalformedInput .................................................... Passed 0.01 sec Start 346: ContactStore.RefusesToGuessWhenTwoContactsShareASuffix 343/503 Test #343: VCard.RecoversFromUnterminatedCard ............................................. Passed 0.01 sec Start 347: ContactStore.DoesNotSuffixMatchShortNumbers 344/503 Test #344: ContactStore.ResolvesNamesByTelAndEmail ........................................ Passed 0.01 sec Start 348: ContactStore.SurvivesJsonRoundTrip 345/503 Test #345: ContactStore.MatchesNationalAndE164FormsForDisplay ............................. Passed 0.01 sec Start 349: ContactStore.CorruptCacheYieldsEmptyStore 346/503 Test #346: ContactStore.RefusesToGuessWhenTwoContactsShareASuffix ......................... Passed 0.01 sec Start 350: ContactStore.SkipsUnnamedContacts 347/503 Test #347: ContactStore.DoesNotSuffixMatchShortNumbers .................................... Passed 0.00 sec Start 351: ContactStore.EncryptedCacheLeavesNothingReadable 348/503 Test #348: ContactStore.SurvivesJsonRoundTrip ............................................. Passed 0.01 sec Start 352: ContactStore.MigratesAPlaintextCacheOnLoad 349/503 Test #349: ContactStore.CorruptCacheYieldsEmptyStore ...................................... Passed 0.01 sec 350/503 Test #350: ContactStore.SkipsUnnamedContacts .............................................. Passed 0.01 sec Start 353: ContactStore.RemovesASourceLeftBehindByAnInterruptedMigration Start 354: ContactStore.RetentionNoneWritesNothing 351/503 Test #351: ContactStore.EncryptedCacheLeavesNothingReadable ............................... Passed 0.01 sec Start 355: ContactStore.AnUnreadableKeyDoesNotClobberTheCache 352/503 Test #354: ContactStore.RetentionNoneWritesNothing ........................................ Passed 0.00 sec Start 356: ContactStore.AnInterruptedMigrationKeepsTheDestinationNotTheSource 353/503 Test #353: ContactStore.RemovesASourceLeftBehindByAnInterruptedMigration .................. Passed 0.01 sec Start 357: ContactSearch.MatchesOnPartOfAName 354/503 Test #357: ContactSearch.MatchesOnPartOfAName ............................................. Passed 0.01 sec Start 358: ContactSearch.IsCaseInsensitive 355/503 Test #355: ContactStore.AnUnreadableKeyDoesNotClobberTheCache ............................. Passed 0.01 sec Start 359: ContactSearch.MatchesANumberTypedWithoutItsFormatting 356/503 Test #356: ContactStore.AnInterruptedMigrationKeepsTheDestinationNotTheSource ............. Passed 0.01 sec Start 360: ContactSearch.MatchesAnEmailAddress 357/503 Test #352: ContactStore.MigratesAPlaintextCacheOnLoad ..................................... Passed 0.02 sec Start 361: ContactSearch.AnEmptyQueryReturnsEverythingSortedByName 358/503 Test #358: ContactSearch.IsCaseInsensitive ................................................ Passed 0.01 sec Start 362: ContactSearch.HonoursTheLimit 359/503 Test #359: ContactSearch.MatchesANumberTypedWithoutItsFormatting .......................... Passed 0.01 sec Start 363: ContactSearch.NoMatchIsEmptyRatherThanEverything 360/503 Test #360: ContactSearch.MatchesAnEmailAddress ............................................ Passed 0.01 sec Start 364: ContactSearch.NamespacedAddressesParseBackToTheSameThreadKey 361/503 Test #361: ContactSearch.AnEmptyQueryReturnsEverythingSortedByName ........................ Passed 0.00 sec Start 365: ContactSearch.EveryEmittedAddressIsUsableAsARecipient 362/503 Test #362: ContactSearch.HonoursTheLimit .................................................. Passed 0.00 sec Start 366: Journal.RoundTripsAMessage 363/503 Test #363: ContactSearch.NoMatchIsEmptyRatherThanEverything ............................... Passed 0.00 sec Start 367: Journal.SerializesToASingleLine 364/503 Test #364: ContactSearch.NamespacedAddressesParseBackToTheSameThreadKey ................... Passed 0.00 sec Start 368: Journal.RejectsMalformedLines 365/503 Test #365: ContactSearch.EveryEmittedAddressIsUsableAsARecipient .......................... Passed 0.00 sec Start 369: Journal.RetentionDropsMessagesPastTheAgeLimit 366/503 Test #369: Journal.RetentionDropsMessagesPastTheAgeLimit .................................. Passed 0.00 sec Start 370: Journal.RetentionKeepsTheNewestWhenOverCount 367/503 Test #366: Journal.RoundTripsAMessage ..................................................... Passed 0.01 sec 368/503 Test #367: Journal.SerializesToASingleLine ................................................ Passed 0.01 sec Start 371: Journal.RetentionKeepsUndatedMessages Start 372: Journal.RetentionIsANoOpUnderBothLimits 369/503 Test #368: Journal.RejectsMalformedLines .................................................. Passed 0.01 sec Start 373: Journal.RetentionCollapsesRepeatedHandles 370/503 Test #370: Journal.RetentionKeepsTheNewestWhenOverCount ................................... Passed 0.01 sec Start 374: Journal.ReadStateSurvivesARestart 371/503 Test #371: Journal.RetentionKeepsUndatedMessages .......................................... Passed 0.01 sec Start 375: Journal.EncryptedRetentionLeavesNothingReadable 372/503 Test #372: Journal.RetentionIsANoOpUnderBothLimits ........................................ Passed 0.01 sec Start 376: Journal.MigratesAPlaintextStoreOnFirstOpen 373/503 Test #373: Journal.RetentionCollapsesRepeatedHandles ...................................... Passed 0.01 sec Start 377: Journal.MigratesBackToPlaintextOnOptOut 374/503 Test #375: Journal.EncryptedRetentionLeavesNothingReadable ................................ Passed 0.01 sec Start 378: Journal.FoldsInASourceLeftBehindByAnInterruptedMigration 375/503 Test #374: Journal.ReadStateSurvivesARestart .............................................. Passed 0.01 sec Start 379: Journal.ALockedWalletCannotDestroyHistory 376/503 Test #376: Journal.MigratesAPlaintextStoreOnFirstOpen ..................................... Passed 0.01 sec Start 380: Journal.CompactRefusesToEmptyAPopulatedJournal 377/503 Test #377: Journal.MigratesBackToPlaintextOnOptOut ........................................ Passed 0.02 sec Start 381: Journal.RetentionNoneWritesNothing 378/503 Test #379: Journal.ALockedWalletCannotDestroyHistory ...................................... Passed 0.01 sec Start 382: Journal.APartialReadIsNotCompactedAway 379/503 Test #381: Journal.RetentionNoneWritesNothing ............................................. Passed 0.00 sec Start 383: Journal.AMigrationWhileOpenDoesNotStrandLaterAppends 380/503 Test #378: Journal.FoldsInASourceLeftBehindByAnInterruptedMigration ....................... Passed 0.02 sec Start 384: Journal.MigrationRefusesAPartiallyReadableSource 381/503 Test #380: Journal.CompactRefusesToEmptyAPopulatedJournal ................................. Passed 0.01 sec 382/503 Test #382: Journal.APartialReadIsNotCompactedAway ......................................... Passed 0.01 sec Start 385: CryptoTest.CompleteCryptographicLifecycle Start 386: CryptoTest.KnownHostsPersistsAcrossInit 383/503 Test #384: Journal.MigrationRefusesAPartiallyReadableSource ............................... Passed 0.01 sec Start 387: CryptoTest.MultipleKnownHosts 384/503 Test #383: Journal.AMigrationWhileOpenDoesNotStrandLaterAppends ........................... Passed 0.01 sec Start 388: CryptoTest.RemoveKnownHost 385/503 Test #387: CryptoTest.MultipleKnownHosts .................................................. Passed 0.03 sec Start 389: CryptoTest.UnreadableKnownHostsIsNotOverwritten 386/503 Test #389: CryptoTest.UnreadableKnownHostsIsNotOverwritten ................................ Passed 0.02 sec Start 390: CryptoTest.GetMyFingerprint 387/503 Test #388: CryptoTest.RemoveKnownHost ..................................................... Passed 0.06 sec Start 391: SecretStore.SealUnsealRoundTrip 388/503 Test #385: CryptoTest.CompleteCryptographicLifecycle ...................................... Passed 0.07 sec Start 392: SecretStore.SealIsNonDeterministic 389/503 Test #391: SecretStore.SealUnsealRoundTrip ................................................ Passed 0.01 sec Start 393: SecretStore.SealedRecordHasNoNewline 390/503 Test #392: SecretStore.SealIsNonDeterministic ............................................. Passed 0.01 sec Start 394: SecretStore.TamperedRecordFailsToUnseal 391/503 Test #393: SecretStore.SealedRecordHasNoNewline ........................................... Passed 0.01 sec Start 395: SecretStore.TruncatedRecordFailsToUnseal 392/503 Test #386: CryptoTest.KnownHostsPersistsAcrossInit ........................................ Passed 0.09 sec Start 396: SecretStore.ADifferentKeyCannotUnseal 393/503 Test #394: SecretStore.TamperedRecordFailsToUnseal ........................................ Passed 0.01 sec Start 397: SecretStore.KeySurvivesWithinTheSameHome 394/503 Test #395: SecretStore.TruncatedRecordFailsToUnseal ....................................... Passed 0.01 sec Start 398: SecretStore.KeyfileIsOwnerOnly 395/503 Test #396: SecretStore.ADifferentKeyCannotUnseal .......................................... Passed 0.01 sec Start 399: SecretStore.PlaintextModeIsTheIdentity 396/503 Test #397: SecretStore.KeySurvivesWithinTheSameHome ....................................... Passed 0.01 sec Start 400: SecretStore.NoneModeSealsNothing 397/503 Test #399: SecretStore.PlaintextModeIsTheIdentity ......................................... Passed 0.01 sec 398/503 Test #400: SecretStore.NoneModeSealsNothing ............................................... Passed 0.00 sec Start 401: SecretStore.RetentionNamesRoundTrip Start 402: DiscoveryTest.GroupDiscoveredHosts_EmptyInput 399/503 Test #398: SecretStore.KeyfileIsOwnerOnly ................................................. Passed 0.01 sec Start 403: DiscoveryTest.GroupDiscoveredHosts_SingleHost 400/503 Test #401: SecretStore.RetentionNamesRoundTrip ............................................ Passed 0.01 sec Start 404: DiscoveryTest.GroupDiscoveredHosts_MultipleAddressesSameFingerprint 401/503 Test #402: DiscoveryTest.GroupDiscoveredHosts_EmptyInput .................................. Passed 0.01 sec Start 405: DiscoveryTest.GroupDiscoveredHosts_MultipleDevices 402/503 Test #403: DiscoveryTest.GroupDiscoveredHosts_SingleHost .................................. Passed 0.00 sec Start 406: DiscoveryTest.GroupDiscoveredHosts_EmptyFingerprintGroupsByName 403/503 Test #405: DiscoveryTest.GroupDiscoveredHosts_MultipleDevices ............................. Passed 0.00 sec Start 407: DiscoveryTest.GroupDiscoveredHosts_IPv4Sorting 404/503 Test #404: DiscoveryTest.GroupDiscoveredHosts_MultipleAddressesSameFingerprint ............ Passed 0.01 sec Start 408: DiscoveryTest.GroupDiscoveredHosts_MixedFingerprintsAndNames 405/503 Test #406: DiscoveryTest.GroupDiscoveredHosts_EmptyFingerprintGroupsByName ................ Passed 0.01 sec Start 409: DiscoveryTest.GroupDiscoveredHosts_ExcludesOwnFingerprint 406/503 Test #408: DiscoveryTest.GroupDiscoveredHosts_MixedFingerprintsAndNames ................... Passed 0.00 sec Start 410: DiscoveryTest.StateCallbackReportsOnlyChanges 407/503 Test #390: CryptoTest.GetMyFingerprint .................................................... Passed 0.07 sec 408/503 Test #407: DiscoveryTest.GroupDiscoveredHosts_IPv4Sorting ................................. Passed 0.01 sec Start 411: DiscoveryTest.RefreshWithoutBrowseIsNoop Start 412: DiscoveryTest.RefreshReinvokesBrowseCallback 409/503 Test #409: DiscoveryTest.GroupDiscoveredHosts_ExcludesOwnFingerprint ...................... Passed 0.01 sec Start 413: DiscoveryTest.RefreshAfterStopIsNoop 410/503 Test #411: DiscoveryTest.RefreshWithoutBrowseIsNoop ....................................... Passed 0.00 sec Start 414: EventLoopTest.RunsPostedWorkOnTheLoopThread 411/503 Test #413: DiscoveryTest.RefreshAfterStopIsNoop ........................................... Passed 0.00 sec Start 415: EventLoopTest.RunsWorkPostedBeforeRun 412/503 Test #414: EventLoopTest.RunsPostedWorkOnTheLoopThread .................................... Passed 0.00 sec Start 416: DisplayWidth.Ascii 413/503 Test #415: EventLoopTest.RunsWorkPostedBeforeRun .......................................... Passed 0.00 sec Start 417: DisplayWidth.MultibyteLatinCountsOneColumnPerGlyph 414/503 Test #416: DisplayWidth.Ascii ............................................................. Passed 0.01 sec Start 418: DisplayWidth.CjkCountsTwoColumnsPerGlyph 415/503 Test #417: DisplayWidth.MultibyteLatinCountsOneColumnPerGlyph ............................. Passed 0.01 sec Start 419: DisplayWidth.InvalidUtf8FallsBackToByteCount 416/503 Test #418: DisplayWidth.CjkCountsTwoColumnsPerGlyph ....................................... Passed 0.01 sec Start 420: ExtensionHost.WritesManifestsOnlyWhereTheBrowserIs 417/503 Test #419: DisplayWidth.InvalidUtf8FallsBackToByteCount ................................... Passed 0.01 sec Start 421: ExtensionHost.WritesOutsideTheFlatpakPrivateHome 418/503 Test #420: ExtensionHost.WritesManifestsOnlyWhereTheBrowserIs ............................. Passed 0.01 sec 419/503 Test #421: ExtensionHost.WritesOutsideTheFlatpakPrivateHome ............................... Passed 0.01 sec Start 422: FileTransferTest.SingleChunkTransfer Start 423: FileTransferTest.NameDeduplicatorAppendsCounterGracefully 420/503 Test #422: FileTransferTest.SingleChunkTransfer ........................................... Passed 0.01 sec Start 424: FileTransferTest.MultiChunkTransferConcatenates 421/503 Test #423: FileTransferTest.NameDeduplicatorAppendsCounterGracefully ...................... Passed 0.01 sec Start 425: FileTransferTest.RejectsChunkPastDeclaredSize 422/503 Test #424: FileTransferTest.MultiChunkTransferConcatenates ................................ Passed 0.01 sec 423/503 Test #425: FileTransferTest.RejectsChunkPastDeclaredSize .................................. Passed 0.01 sec Start 426: FileTransferTest.TruncatedTransferIsNotReportedAsSuccess Start 427: FileTransferTest.DuplicateTransferIdIsRejected 424/503 Test #426: FileTransferTest.TruncatedTransferIsNotReportedAsSuccess ....................... Passed 0.01 sec Start 428: FileTransferTest.UnknownTransferIdIsRejected 425/503 Test #427: FileTransferTest.DuplicateTransferIdIsRejected ................................. Passed 0.01 sec Start 429: FileTransferTest.PathTraversalInFilenameStaysInDownloads 426/503 Test #428: FileTransferTest.UnknownTransferIdIsRejected ................................... Passed 0.01 sec 427/503 Test #429: FileTransferTest.PathTraversalInFilenameStaysInDownloads ....................... Passed 0.01 sec Start 430: LogTest.ConcurrentLinesAreNotInterleaved Start 431: SingleInstanceLockTest.ExecedHelpersDoNotKeepTheLockAliveAfterTheDaemonExits 428/503 Test #430: LogTest.ConcurrentLinesAreNotInterleaved ....................................... Passed 0.01 sec Start 432: TcpServerTest.ReportsWhyATlsHandshakeFailed 429/503 Test #431: SingleInstanceLockTest.ExecedHelpersDoNotKeepTheLockAliveAfterTheDaemonExits ... Passed 0.02 sec Start 433: TcpServerTest.AcceptsIpv6Clients 430/503 Test #432: TcpServerTest.ReportsWhyATlsHandshakeFailed .................................... Passed 0.05 sec Start 434: TcpServerTest.DialToAClosedPortLeaksNothing 431/503 Test #433: TcpServerTest.AcceptsIpv6Clients ............................................... Passed 0.05 sec Start 435: TcpServerTest.DialFailureReportsAReason 432/503 Test #435: TcpServerTest.DialFailureReportsAReason ........................................ Passed 0.02 sec Start 436: TcpServerTest.DialToABlackHoleGivesUpQuickly 433/503 Test #434: TcpServerTest.DialToAClosedPortLeaksNothing .................................... Passed 0.04 sec Start 437: TcpServerTest.DiallingPeerSendsPairRequest 434/503 Test #436: TcpServerTest.DialToABlackHoleGivesUpQuickly ................................... Passed 0.03 sec Start 438: ClientTest.ConnectsToAnIpv6Literal 435/503 Test #437: TcpServerTest.DiallingPeerSendsPairRequest ..................................... Passed 0.04 sec Start 439: FirewallTest.UfwEnabledReadsTheEnabledKey 436/503 Test #439: FirewallTest.UfwEnabledReadsTheEnabledKey ...................................... Passed 0.01 sec Start 440: FirewallTest.UfwEnabledIgnoresCommentsAndWhitespace 437/503 Test #440: FirewallTest.UfwEnabledIgnoresCommentsAndWhitespace ............................ Passed 0.01 sec Start 441: FirewallTest.UfwEnabledIgnoresOtherKeysAndTakesTheFirstMatch 438/503 Test #441: FirewallTest.UfwEnabledIgnoresOtherKeysAndTakesTheFirstMatch ................... Passed 0.01 sec Start 442: FirewallTest.UfwEnabledIsFalseWhenTheKeyIsAbsent 439/503 Test #438: ClientTest.ConnectsToAnIpv6Literal ............................................. Passed 0.05 sec Start 443: ShouldDialPeer.OnlyTheLowerFingerprintDials 440/503 Test #442: FirewallTest.UfwEnabledIsFalseWhenTheKeyIsAbsent ............................... Passed 0.01 sec Start 444: ShouldDialPeer.IsReciprocal 441/503 Test #443: ShouldDialPeer.OnlyTheLowerFingerprintDials .................................... Passed 0.01 sec Start 445: ShouldDialPeer.SkipsUnknownIncompleteAndSelf 442/503 Test #444: ShouldDialPeer.IsReciprocal .................................................... Passed 0.00 sec Start 446: OtpTest.EmptyVaultServesNothing 443/503 Test #445: ShouldDialPeer.SkipsUnknownIncompleteAndSelf ................................... Passed 0.00 sec Start 447: OtpTest.StoreAndPeek 444/503 Test #446: OtpTest.EmptyVaultServesNothing ................................................ Passed 0.00 sec Start 448: OtpTest.IdsAreUniqueAndIncreasing 445/503 Test #447: OtpTest.StoreAndPeek ........................................................... Passed 0.00 sec Start 449: OtpTest.StoringEmptyCodeClearsVault 446/503 Test #448: OtpTest.IdsAreUniqueAndIncreasing .............................................. Passed 0.00 sec Start 450: OtpTest.ExpiresAfterTtl 447/503 Test #449: OtpTest.StoringEmptyCodeClearsVault ............................................ Passed 0.00 sec Start 451: OtpTest.CodeIsClaimedByTheFirstHostThatTakesIt 448/503 Test #450: OtpTest.ExpiresAfterTtl ........................................................ Passed 0.00 sec Start 452: OtpTest.ClaimingHostKeepsPollingSuccessfully 449/503 Test #451: OtpTest.CodeIsClaimedByTheFirstHostThatTakesIt ................................. Passed 0.00 sec Start 453: OtpTest.NewCodeResetsTheClaim 450/503 Test #452: OtpTest.ClaimingHostKeepsPollingSuccessfully ................................... Passed 0.00 sec Start 454: OtpTest.UnknownHostTakesButDoesNotClaim 451/503 Test #453: OtpTest.NewCodeResetsTheClaim .................................................. Passed 0.00 sec Start 455: OtpTest.UnknownHostDoesNotStealAClaimedCode 452/503 Test #454: OtpTest.UnknownHostTakesButDoesNotClaim ........................................ Passed 0.00 sec Start 456: OtpTest.PinnedCodeServesOnlyMatchingDomain 453/503 Test #455: OtpTest.UnknownHostDoesNotStealAClaimedCode .................................... Passed 0.00 sec Start 457: OtpTest.PinnedCodeServesSubdomains 454/503 Test #456: OtpTest.PinnedCodeServesOnlyMatchingDomain ..................................... Passed 0.01 sec Start 458: OtpTest.PinnedCodeRejectsSuffixSpoofs 455/503 Test #457: OtpTest.PinnedCodeServesSubdomains ............................................. Passed 0.01 sec Start 459: OtpTest.PinnedCodeRejectsUnknownHost 456/503 Test #458: OtpTest.PinnedCodeRejectsSuffixSpoofs .......................................... Passed 0.01 sec Start 460: OtpTest.UnpinnedCodeKeepsLegacyBehaviour 457/503 Test #459: OtpTest.PinnedCodeRejectsUnknownHost ........................................... Passed 0.01 sec Start 461: OtpTest.PinnedCodeClaimIsScopedToHostWithinDomain 458/503 Test #460: OtpTest.UnpinnedCodeKeepsLegacyBehaviour ....................................... Passed 0.01 sec Start 462: OtpTest.SenderDomainIsNormalized 459/503 Test #461: OtpTest.PinnedCodeClaimIsScopedToHostWithinDomain .............................. Passed 0.01 sec Start 463: OtpTest.PinnedCodeMatchesApexWhenSenderIsSubdomain 460/503 Test #462: OtpTest.SenderDomainIsNormalized ............................................... Passed 0.01 sec Start 464: OtpTest.PinnedCodeMatchesRegistrableCctld 461/503 Test #463: OtpTest.PinnedCodeMatchesApexWhenSenderIsSubdomain ............................. Passed 0.01 sec Start 465: OtpTest.PinnedCodeRejectsCctldSpoof 462/503 Test #464: OtpTest.PinnedCodeMatchesRegistrableCctld ...................................... Passed 0.01 sec Start 466: OtpTest.PinnedCodeDoesNotMatchDifferentCctldRegistrant 463/503 Test #465: OtpTest.PinnedCodeRejectsCctldSpoof ............................................ Passed 0.01 sec Start 467: OtpTest.PinnedCodeDoesNotMatchDifferentPrivateSuffixSite 464/503 Test #466: OtpTest.PinnedCodeDoesNotMatchDifferentCctldRegistrant ......................... Passed 0.01 sec Start 468: OtpTest.PinnedCodeHandlesWildcardSuffix 465/503 Test #467: OtpTest.PinnedCodeDoesNotMatchDifferentPrivateSuffixSite ....................... Passed 0.01 sec Start 469: OtpTest.PinnedCodeHandlesExceptionSuffix 466/503 Test #468: OtpTest.PinnedCodeHandlesWildcardSuffix ........................................ Passed 0.01 sec Start 470: OtpTest.ConsumeClearsMatchingId 467/503 Test #469: OtpTest.PinnedCodeHandlesExceptionSuffix ....................................... Passed 0.01 sec Start 471: OtpTest.StaleConsumeDoesNotClearNewerCode 468/503 Test #470: OtpTest.ConsumeClearsMatchingId ................................................ Passed 0.00 sec Start 472: OtpTest.ConsumeWithoutIdClearsUnconditionally 469/503 Test #471: OtpTest.StaleConsumeDoesNotClearNewerCode ...................................... Passed 0.00 sec Start 473: OtpTest.ConsumeIsIdempotent 470/503 Test #472: OtpTest.ConsumeWithoutIdClearsUnconditionally .................................. Passed 0.00 sec Start 474: OtpTest.ConsumingClearsTheClaim 471/503 Test #473: OtpTest.ConsumeIsIdempotent .................................................... Passed 0.00 sec Start 475: OtpExtractTest.TypicalSmsCodes 472/503 Test #474: OtpTest.ConsumingClearsTheClaim ................................................ Passed 0.00 sec Start 476: OtpExtractTest.IgnoresTextWithoutAnOtpCue 473/503 Test #475: OtpExtractTest.TypicalSmsCodes ................................................. Passed 0.00 sec Start 477: OtpExtractTest.RejectsLookalikes 474/503 Test #476: OtpExtractTest.IgnoresTextWithoutAnOtpCue ...................................... Passed 0.00 sec Start 478: OtpExtractTest.PrefersTheNumberNearestTheCue 475/503 Test #477: OtpExtractTest.RejectsLookalikes ............................................... Passed 0.00 sec Start 479: PathsTest.FallsBackToTheDefaultsWhenNoXdgVariableIsSet 476/503 Test #478: OtpExtractTest.PrefersTheNumberNearestTheCue ................................... Passed 0.00 sec Start 480: PathsTest.HonorsTheXdgVariables 477/503 Test #479: PathsTest.FallsBackToTheDefaultsWhenNoXdgVariableIsSet ......................... Passed 0.00 sec Start 481: PathsTest.IgnoresAnEmptyOrRelativeXdgValue 478/503 Test #480: PathsTest.HonorsTheXdgVariables ................................................ Passed 0.00 sec Start 482: PathsTest.PrefersAnExistingLegacyDirectoryOverAnAbsentXdgOne 479/503 Test #481: PathsTest.IgnoresAnEmptyOrRelativeXdgValue ..................................... Passed 0.00 sec Start 483: PathsTest.UsesTheXdgDirectoryOnceItExists 480/503 Test #482: PathsTest.PrefersAnExistingLegacyDirectoryOverAnAbsentXdgOne ................... Passed 0.00 sec Start 484: LinkifyMarkup.PlainTextIsEscapedAndUnlinked 481/503 Test #483: PathsTest.UsesTheXdgDirectoryOnceItExists ...................................... Passed 0.00 sec Start 485: LinkifyMarkup.BareUrlBecomesALink 482/503 Test #484: LinkifyMarkup.PlainTextIsEscapedAndUnlinked .................................... Passed 0.00 sec Start 486: LinkifyMarkup.TrailingSentencePunctuationStaysOutsideTheLink 483/503 Test #485: LinkifyMarkup.BareUrlBecomesALink .............................................. Passed 0.00 sec Start 487: LinkifyMarkup.ClosingParenBelongingToTheUrlIsKept 484/503 Test #486: LinkifyMarkup.TrailingSentencePunctuationStaysOutsideTheLink ................... Passed 0.00 sec Start 488: LinkifyMarkup.WwwHostGetsAScheme 485/503 Test #487: LinkifyMarkup.ClosingParenBelongingToTheUrlIsKept .............................. Passed 0.00 sec Start 489: LinkifyMarkup.QueryStringIsEscapedInBothHrefAndText 486/503 Test #488: LinkifyMarkup.WwwHostGetsAScheme ............................................... Passed 0.00 sec Start 490: LinkifyMarkup.MultipleUrlsInOneBody 487/503 Test #489: LinkifyMarkup.QueryStringIsEscapedInBothHrefAndText ............................ Passed 0.00 sec Start 491: LinkifyMarkup.AlwaysProducesParseableMarkup 488/503 Test #490: LinkifyMarkup.MultipleUrlsInOneBody ............................................ Passed 0.00 sec Start 492: FixedZone.TodayIsAClockTime 489/503 Test #491: LinkifyMarkup.AlwaysProducesParseableMarkup .................................... Passed 0.00 sec Start 493: FixedZone.EarlierTodayStaysAClockTime 490/503 Test #492: FixedZone.TodayIsAClockTime .................................................... Passed 0.00 sec Start 494: FixedZone.PreviousCalendarDayIsYesterday 491/503 Test #493: FixedZone.EarlierTodayStaysAClockTime .......................................... Passed 0.00 sec Start 495: FixedZone.WithinTheWeekIsAWeekday 492/503 Test #494: FixedZone.PreviousCalendarDayIsYesterday ....................................... Passed 0.00 sec Start 496: FixedZone.BeyondAWeekIsADate 493/503 Test #495: FixedZone.WithinTheWeekIsAWeekday .............................................. Passed 0.00 sec Start 497: FixedZone.MissingTimestampIsEmpty 494/503 Test #496: FixedZone.BeyondAWeekIsADate ................................................... Passed 0.00 sec Start 498: FixedZone.DayHeadingNamesTodayAndYesterday 495/503 Test #497: FixedZone.MissingTimestampIsEmpty .............................................. Passed 0.00 sec Start 499: FixedZone.DayHeadingWithinTheWeekIsTheWeekdayName 496/503 Test #498: FixedZone.DayHeadingNamesTodayAndYesterday ..................................... Passed 0.00 sec Start 500: FixedZone.DayHeadingBeyondAWeekCarriesTheDate 497/503 Test #499: FixedZone.DayHeadingWithinTheWeekIsTheWeekdayName .............................. Passed 0.00 sec Start 501: FixedZone.SameLocalDayIgnoresTimeOfDayButNotTheDateBoundary 498/503 Test #500: FixedZone.DayHeadingBeyondAWeekCarriesTheDate .................................. Passed 0.00 sec Start 502: po_catalogs 499/503 Test #501: FixedZone.SameLocalDayIgnoresTimeOfDayButNotTheDateBoundary .................... Passed 0.00 sec Start 503: po_template 500/503 Test #503: po_template .................................................................... Passed 0.06 sec 501/503 Test #502: po_catalogs .................................................................... Passed 0.07 sec 502/503 Test #410: DiscoveryTest.StateCallbackReportsOnlyChanges .................................. Passed 0.51 sec 503/503 Test #412: DiscoveryTest.RefreshReinvokesBrowseCallback ...................................***Skipped 0.51 sec 100% tests passed, 0 tests failed out of 503 Total Test time (real) = 1.18 sec The following tests did not run: 412 - DiscoveryTest.RefreshReinvokesBrowseCallback (Skipped) npm warn Unknown env config "nodedir". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options. npm warn Unknown env config "platform". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options. npm warn Unknown env config "arch". This will stop working in the next major version of npm. See `npm help npmrc` for supported config options. > tether-extension@1.0.0 test > vitest run RUN v4.1.10 /build/source/extension ❯ test/extractor.test.js [queued] Test Files 0 passed (5) Tests 0 passed (0) Start at 10:22:22 Duration 0ms ❯ test/autofill.test.js [queued] ❯ test/extractor.test.js [queued] ❯ test/integration.test.js [queued] ❯ test/native.test.js 0/24 ❯ test/otp-consume.test.js [queued] Test Files 0 passed (5) Tests 0 passed (24) Start at 10:22:22 Duration 202ms stderr | test/extractor.test.js Native messaging not supported in this environment ❯ test/autofill.test.js 0/11 ❯ test/integration.test.js [queued] ❯ test/otp-consume.test.js [queued] Test Files 2 passed (5) Tests 59 passed (70) Start at 10:22:22 Duration 503ms ✓ test/native.test.js (24 tests) 10ms stdout | test/extractor.test.js > processMessage sends the sender domain > leaves sender_domain empty when the server did not validate DKIM Processing message stdout | test/extractor.test.js > processMessage sends the sender domain > leaves sender_domain empty when the server did not validate DKIM Found OTP candidate in email with score: 90 stdout | test/extractor.test.js > processMessage sends the sender domain > uses the validated DKIM domain when available Processing message stdout | test/extractor.test.js > processMessage sends the sender domain > uses the validated DKIM domain when available Found OTP candidate in email with score: 90 ✓ test/extractor.test.js (35 tests) 11ms ❯ test/autofill.test.js 0/11 ❯ test/integration.test.js [queued] ❯ test/otp-consume.test.js [queued] Test Files 2 passed (5) Tests 59 passed (70) Start at 10:22:22 Duration 503ms ❯ test/autofill.test.js 1/11 ❯ test/integration.test.js [queued] ❯ test/otp-consume.test.js 0/18 Test Files 2 passed (5) Tests 60 passed (88) Start at 10:22:22 Duration 603ms stdout | test/integration.test.js > Integration tests with real .eml files > processes MyBank OTP email and extracts 171792 Processing message stdout | test/integration.test.js > Integration tests with real .eml files > processes MyBank OTP email and extracts 171792 Found OTP candidate in email with score: 90 stdout | test/integration.test.js > Integration tests with real .eml files > processes MyBank OTP email with HTML and extracts 171793 Processing message stdout | test/integration.test.js > Integration tests with real .eml files > processes MyBank OTP email with HTML and extracts 171793 Found OTP candidate in email with score: 90 stdout | test/integration.test.js > Integration tests with real .eml files > processes Google auth email and extracts 123456 Processing message stdout | test/integration.test.js > Integration tests with real .eml files > processes Google auth email and extracts 123456 Found OTP candidate in email with score: 120 stdout | test/integration.test.js > Integration tests with real .eml files > processes Amazon formatted code and extracts 123456 Processing message stdout | test/integration.test.js > Integration tests with real .eml files > processes Amazon formatted code and extracts 123456 Found OTP candidate in email with score: 100 stdout | test/integration.test.js > Integration tests with real .eml files > processes bank verification email and extracts 987654 Processing message stdout | test/integration.test.js > Integration tests with real .eml files > processes bank verification email and extracts 987654 Found OTP candidate in email with score: 60 stdout | test/integration.test.js > Integration tests with real .eml files > rejects order confirmation (no OTP extraction) Processing message ❯ test/autofill.test.js 3/11 ❯ test/integration.test.js 1/6 ❯ test/otp-consume.test.js 7/18 Test Files 2 passed (5) Tests 70 passed (94) Start at 10:22:22 Duration 703ms ✓ test/integration.test.js (6 tests) 93ms ✓ test/otp-consume.test.js (18 tests) 248ms ❯ test/autofill.test.js 4/11 Test Files 4 passed (5) Tests 87 passed (94) Start at 10:22:22 Duration 903ms ✓ test/autofill.test.js (11 tests) 413ms Test Files 5 passed (5) Tests 94 passed (94) Start at 10:22:22 Duration 990ms (transform 419ms, setup 0ms, import 1.96s, tests 775ms, environment 0ms) Running phase: glibPreInstallPhase Running phase: installPhase install flags: -j4 install [1/2] Building browser and mail extensions Building Tether Extensions... Bundling Firefox browser extension... build/extension_bundles/browser/src/background/background.js 147.4kb ⚡ Done in 4ms build/extension_bundles/browser/src/content/autofill.js 7.1kb ⚡ Done in 2ms Bundling mail extension... build/extension_bundles/mail/src/mail/extractor.js 158.7kb ⚡ Done in 4ms Bundling Chromium extension... build/extension_bundles/chromium/src/background/background.js 147.4kb ⚡ Done in 4ms build/extension_bundles/chromium/src/content/autofill.js 7.1kb ⚡ Done in 2ms Extensions successfully built and packaged in /build/source/build/extension_bundles Firefox browser: /build/source/build/extension_bundles/tether-browser-extension.zip Thunderbird: /build/source/build/extension_bundles/tether-mail-extension.xpi Chromium (Store): /build/source/build/extension_bundles/tether-chromium-extension.zip [1/2] Install the project... -- Install configuration: "Release" -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tetherd -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-gtk -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/applications/tether-gtk.desktop -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/16x16/apps/tether.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/16x16/apps/tether-offline.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/16x16/apps/tether-unread.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/32x32/apps/tether.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/32x32/apps/tether-offline.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/32x32/apps/tether-unread.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/48x48/apps/tether.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/48x48/apps/tether-offline.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/48x48/apps/tether-unread.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/64x64/apps/tether.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/64x64/apps/tether-offline.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/64x64/apps/tether-unread.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/128x128/apps/tether.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/128x128/apps/tether-offline.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/128x128/apps/tether-unread.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/256x256/apps/tether.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/256x256/apps/tether-offline.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/256x256/apps/tether-unread.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/512x512/apps/tether.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/512x512/apps/tether-offline.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/512x512/apps/tether-unread.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/1024x1024/apps/tether.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/1024x1024/apps/tether-offline.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/1024x1024/apps/tether-unread.png -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/symbolic/apps/tether-symbolic.svg -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/symbolic/apps/tether-offline-symbolic.svg -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/icons/hicolor/symbolic/apps/tether-unread-symbolic.svg -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-dialog -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/cs/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/de/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/es/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/fr/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/it/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/ja/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/ko/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/nl/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/pl/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/pt_BR/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/ru/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/sv/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/tr/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/uk/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/locale/zh_CN/LC_MESSAGES/tether.mo -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-native-host -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/etc/chromium/native-messaging-hosts/com.tether.extension.json -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/etc/opt/chrome/native-messaging-hosts/com.tether.extension.json -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/lib/mozilla/native-messaging-hosts/com.tether.extension.json -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/lib/thunderbird/native-messaging-hosts/com.tether.extension.json -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/man/man1/tether.1 -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/man/man1/tether-gtk.1 -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/man/man8/tetherd.8 -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/lib/systemd/system/tether-btclass@.service -- Skipping /etc/ufw/applications.d/tether: directory not present -- Skipping /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/lib/firewalld/services/tether.xml: directory not present -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/tether/extensions/tether-browser-extension.zip -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/tether/extensions/tether-mail-extension.xpi -- Installing: /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/tether/extensions/tether-chromium-extension.zip patching script interpreter paths in /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-native-host /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-native-host: interpreter directive changed from "#!/bin/bash" to "/nix/store/9ipfvwnqp1q8ijnmi5sxvlx9r8w34lw3-bash-5.3p15/bin/bash" Running phase: gappsWrapperArgsHook Running phase: dropIconThemeCache Running phase: fixupPhase Wrapping program '/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-gtk' Wrapping program '/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-dialog' Wrapping program '/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-native-host' Wrapping program '/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether' Wrapping program '/nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tetherd' shrinking RPATHs of ELF executables and libraries in /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18 shrinking /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-gtk shrinking /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/.tetherd-wrapped shrinking /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-dialog shrinking /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether-native-host shrinking /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/.tether-gtk-wrapped shrinking /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tether shrinking /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/tetherd shrinking /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/.tether-dialog-wrapped shrinking /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin/.tether-wrapped checking for references to /build/ in /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18... gzipping man pages under /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/share/man/ patching script interpreter paths in /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18 stripping (with command strip and flags -S -p) in /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/lib /nix/store/34bgvxbpf70d5bpr9ggi62sa2zr60j2x-tether-0.2.18/bin