1. 0.33 s $ /nix/store/vzx1mi9c0xfadmsm9dhd83d005cb1qs9-coreutils-9.8/bin/timeout --kill-after=15s 7200s /nix/store/86n4l5yri6hys3zk2mwy2azcv9prqb8j-nix-2.31.4/bin/nix --extra-experimental-features nix-command --extra-experimental-features flakes --log-format internal-json build --no-link git+https://codeberg.org/mtlynch/little-moments?ref=email-auth&rev=87e46130862bea89210b3cffc391e46cbbe3f17d#packages.x86_64-linux.e2e-tests --print-build-logs
  2. 0.65 s
  3. 0.65 s Downloading cached source from https://cache.nix-ci.com
  4. 7.99 s Progress: 1 of 1 downloaded from cache
  5. 41.42 s
  6. 41.44 s Downloading cached little-moments-e2e-0.0.1-npm-deps from https://cache.nix-ci.com
  7. 41.45 s Downloading cached npm-build-hook from https://cache.nix-ci.com
  8. 41.45 s Downloading cached dejavu-fonts-minimal from https://cache.nix-ci.com
  9. 41.45 s Downloading cached install-shell-files from https://cache.nix-ci.com
  10. 41.45 s Downloading cached mailcap from https://cache.nix-ci.com
  11. 41.45 s Downloading cached nodejs-22.21.1-source from https://cache.nix-ci.com
  12. 41.45 s Downloading cached tzdata from https://cache.nix-ci.com
  13. 41.45 s Downloading cached die-hook from https://cache.nix-ci.com
  14. 41.45 s Downloading cached gcc-14.3.0-libgcc from https://cache.nix-ci.com
  15. 41.45 s Downloading cached gnu-config-2024-01 from https://cache.nix-ci.com
  16. 41.46 s Downloading cached xgcc-14.3.0-libgcc from https://cache.nix-ci.com
  17. 41.46 s Downloading cached libunistring from https://cache.nix-ci.com
  18. 41.46 s Downloading cached linux-headers from https://cache.nix-ci.com
  19. 41.46 s Downloading cached publicsuffix-list-0-unstable-2025-10 from https://cache.nix-ci.com
  20. 41.46 s Progress: 0 of 11 built, 1 of 100 downloaded from cache (13 downloading)
  21. 41.47 s Progress: 0 of 10 built, 2 of 100 downloaded from cache (12 downloading)
  22. 41.47 s Progress: 0 of 10 built, 3 of 100 downloaded from cache (11 downloading)
  23. 41.47 s Progress: 0 of 10 built, 4 of 100 downloaded from cache (10 downloading)
  24. 41.48 s Progress: 0 of 10 built, 5 of 100 downloaded from cache (9 downloading)
  25. 41.48 s Downloading cached dejavu-fonts from https://cache.nix-ci.com
  26. 41.48 s Progress: 0 of 10 built, 6 of 100 downloaded from cache (9 downloading)
  27. 41.48 s Progress: 0 of 10 built, 7 of 100 downloaded from cache (8 downloading)
  28. 41.48 s Downloading cached update-autotools-gnu-config-scripts-hook from https://cache.nix-ci.com
  29. 41.48 s Progress: 0 of 10 built, 8 of 100 downloaded from cache (8 downloading)
  30. 41.49 s Progress: 0 of 10 built, 9 of 100 downloaded from cache (7 downloading)
  31. 41.51 s Progress: 0 of 10 built, 10 of 100 downloaded from cache (6 downloading)
  32. 41.53 s Progress: 0 of 10 built, 11 of 100 downloaded from cache (5 downloading)
  33. 41.53 s Downloading cached libidn2 from https://cache.nix-ci.com
  34. 41.58 s Progress: 0 of 10 built, 12 of 100 downloaded from cache (5 downloading)
  35. 41.62 s Progress: 0 of 10 built, 13 of 100 downloaded from cache (4 downloading)
  36. 41.63 s Progress: 0 of 9 built, 14 of 100 downloaded from cache (3 downloading)
  37. 41.70 s Progress: 0 of 9 built, 15 of 100 downloaded from cache (2 downloading)
  38. 41.70 s Downloading cached glibc-2.40 from https://cache.nix-ci.com
  39. 41.72 s Progress: 0 of 9 built, 16 of 100 downloaded from cache (2 downloading)
  40. 41.72 s Downloading cached fonts.conf from https://cache.nix-ci.com
  41. 41.72 s Progress: 0 of 9 built, 17 of 100 downloaded from cache (2 downloading)
  42. 42.03 s Progress: 0 of 8 built, 18 of 100 downloaded from cache (1 downloading)
  43. 42.04 s Downloading cached attr from https://cache.nix-ci.com
  44. 42.04 s Downloading cached bash from https://cache.nix-ci.com
  45. 42.04 s Downloading cached brotli-1.1.0-lib from https://cache.nix-ci.com
  46. 42.04 s Downloading cached bzip2 from https://cache.nix-ci.com
  47. 42.04 s Downloading cached c-ares from https://cache.nix-ci.com
  48. 42.04 s Downloading cached ed from https://cache.nix-ci.com
  49. 42.04 s Downloading cached expand-response-params from https://cache.nix-ci.com
  50. 42.04 s Downloading cached expat from https://cache.nix-ci.com
  51. 42.04 s Downloading cached gawk from https://cache.nix-ci.com
  52. 42.04 s Downloading cached gcc-14.3.0-lib from https://cache.nix-ci.com
  53. 42.04 s Downloading cached gdbm-1.26-lib from https://cache.nix-ci.com
  54. 42.04 s Downloading cached glibc-2.40-66-bin from https://cache.nix-ci.com
  55. 42.04 s Downloading cached gmp from https://cache.nix-ci.com
  56. 42.04 s Downloading cached gnumake from https://cache.nix-ci.com
  57. 42.04 s Downloading cached gnused from https://cache.nix-ci.com
  58. 42.07 s Progress: 0 of 8 built, 19 of 100 downloaded from cache (15 downloading)
  59. 42.07 s Downloading cached keyutils-1.6.3-lib from https://cache.nix-ci.com
  60. 42.07 s Progress: 0 of 8 built, 20 of 100 downloaded from cache (15 downloading)
  61. 42.07 s Downloading cached libffi from https://cache.nix-ci.com
  62. 42.07 s Progress: 0 of 8 built, 21 of 100 downloaded from cache (15 downloading)
  63. 42.07 s Downloading cached acl from https://cache.nix-ci.com
  64. 42.07 s Progress: 0 of 8 built, 22 of 100 downloaded from cache (15 downloading)
  65. 42.07 s Downloading cached libpsl from https://cache.nix-ci.com
  66. 42.08 s Progress: 0 of 8 built, 23 of 100 downloaded from cache (15 downloading)
  67. 42.08 s Downloading cached libuv from https://cache.nix-ci.com
  68. 42.08 s Progress: 0 of 8 built, 24 of 100 downloaded from cache (15 downloading)
  69. 42.08 s Downloading cached mpdecimal from https://cache.nix-ci.com
  70. 42.08 s Progress: 0 of 8 built, 25 of 100 downloaded from cache (15 downloading)
  71. 42.08 s Downloading cached ncurses from https://cache.nix-ci.com
  72. 42.09 s Progress: 0 of 8 built, 26 of 100 downloaded from cache (15 downloading)
  73. 42.09 s Downloading cached bzip2-1.0.8-bin from https://cache.nix-ci.com
  74. 42.10 s Progress: 0 of 8 built, 27 of 100 downloaded from cache (15 downloading)
  75. 42.10 s Downloading cached nghttp2-1.67.1-lib from https://cache.nix-ci.com
  76. 42.10 s Progress: 0 of 7 built, 28 of 100 downloaded from cache (15 downloading)
  77. 42.10 s Downloading cached gzip from https://cache.nix-ci.com
  78. 42.10 s Progress: 0 of 7 built, 29 of 100 downloaded from cache (15 downloading)
  79. 42.11 s Downloading cached isl from https://cache.nix-ci.com
  80. 42.11 s Progress: 0 of 7 built, 30 of 100 downloaded from cache (15 downloading)
  81. 42.11 s Downloading cached make-shell-wrapper-hook from https://cache.nix-ci.com
  82. 42.11 s Progress: 0 of 7 built, 31 of 100 downloaded from cache (15 downloading)
  83. 42.11 s Downloading cached mpfr from https://cache.nix-ci.com
  84. 42.11 s Progress: 0 of 7 built, 32 of 100 downloaded from cache (15 downloading)
  85. 42.11 s Progress: 0 of 7 built, 33 of 100 downloaded from cache (15 downloading)
  86. 42.11 s Downloading cached nghttp3 from https://cache.nix-ci.com
  87. 42.11 s Downloading cached gnutar from https://cache.nix-ci.com
  88. 42.11 s Progress: 0 of 7 built, 34 of 100 downloaded from cache (15 downloading)
  89. 42.11 s Downloading cached oniguruma-6.9.10-lib from https://cache.nix-ci.com
  90. 42.12 s Progress: 0 of 7 built, 35 of 100 downloaded from cache (15 downloading)
  91. 42.12 s Downloading cached libuv-1.51.0-dev from https://cache.nix-ci.com
  92. 42.12 s Progress: 0 of 7 built, 36 of 100 downloaded from cache (15 downloading)
  93. 42.12 s Downloading cached openssl from https://cache.nix-ci.com
  94. 42.12 s Progress: 0 of 7 built, 37 of 100 downloaded from cache (15 downloading)
  95. 42.12 s Progress: 0 of 7 built, 38 of 100 downloaded from cache (15 downloading)
  96. 42.12 s Downloading cached patch from https://cache.nix-ci.com
  97. 42.12 s Downloading cached pcre2 from https://cache.nix-ci.com
  98. 42.12 s Progress: 0 of 7 built, 39 of 100 downloaded from cache (15 downloading)
  99. 42.12 s Downloading cached util-linux-minimal-2.41.2-lib from https://cache.nix-ci.com
  100. 42.12 s Progress: 0 of 7 built, 40 of 100 downloaded from cache (15 downloading)
  101. 42.12 s Downloading cached xz from https://cache.nix-ci.com
  102. 42.12 s Progress: 0 of 7 built, 41 of 100 downloaded from cache (15 downloading)
  103. 42.13 s Downloading cached zlib from https://cache.nix-ci.com
  104. 42.13 s Progress: 0 of 7 built, 42 of 100 downloaded from cache (15 downloading)
  105. 42.13 s Downloading cached glibc-2.40-66-dev from https://cache.nix-ci.com
  106. 42.14 s Progress: 0 of 7 built, 43 of 100 downloaded from cache (15 downloading)
  107. 42.14 s Progress: 0 of 7 built, 44 of 100 downloaded from cache (14 downloading)
  108. 42.14 s Progress: 0 of 7 built, 45 of 100 downloaded from cache (13 downloading)
  109. 42.14 s Progress: 0 of 7 built, 46 of 100 downloaded from cache (13 downloading)
  110. 42.14 s Downloading cached libmpc from https://cache.nix-ci.com
  111. 42.14 s Progress: 0 of 7 built, 47 of 100 downloaded from cache (12 downloading)
  112. 42.14 s Downloading cached jq from https://cache.nix-ci.com
  113. 42.15 s Progress: 0 of 7 built, 48 of 100 downloaded from cache (12 downloading)
  114. 42.15 s Downloading cached sqlite from https://cache.nix-ci.com
  115. 42.15 s Downloading cached binutils-2.44-lib from https://cache.nix-ci.com
  116. 42.15 s Downloading cached file from https://cache.nix-ci.com
  117. 42.15 s Downloading cached sqlite-3.50.4-bin from https://cache.nix-ci.com
  118. 42.16 s Progress: 0 of 7 built, 49 of 100 downloaded from cache (15 downloading)
  119. 42.16 s Downloading cached zlib-1.3.1-dev from https://cache.nix-ci.com
  120. 42.16 s Progress: 0 of 7 built, 50 of 100 downloaded from cache (15 downloading)
  121. 42.16 s Downloading cached xz-5.8.1-bin from https://cache.nix-ci.com
  122. 42.17 s Progress: 0 of 7 built, 51 of 100 downloaded from cache (15 downloading)
  123. 42.17 s Downloading cached gnugrep from https://cache.nix-ci.com
  124. 42.17 s Progress: 0 of 7 built, 52 of 100 downloaded from cache (15 downloading)
  125. 42.17 s Progress: 0 of 7 built, 53 of 100 downloaded from cache (14 downloading)
  126. 42.18 s Progress: 0 of 7 built, 54 of 100 downloaded from cache (13 downloading)
  127. 42.18 s Progress: 0 of 7 built, 55 of 100 downloaded from cache (12 downloading)
  128. 42.18 s Downloading cached jq-1.8.1-bin from https://cache.nix-ci.com
  129. 42.19 s Progress: 0 of 7 built, 56 of 100 downloaded from cache (12 downloading)
  130. 42.20 s Progress: 0 of 7 built, 57 of 100 downloaded from cache (11 downloading)
  131. 42.20 s Progress: 0 of 7 built, 58 of 100 downloaded from cache (10 downloading)
  132. 42.20 s Downloading cached nodejs-install-manuals from https://cache.nix-ci.com
  133. 42.21 s Progress: 0 of 7 built, 59 of 100 downloaded from cache (10 downloading)
  134. 42.21 s Downloading cached gmp-with-cxx from https://cache.nix-ci.com
  135. 42.21 s Downloading cached icu4c from https://cache.nix-ci.com
  136. 42.21 s Downloading cached patchelf from https://cache.nix-ci.com
  137. 42.21 s Downloading cached zstd from https://cache.nix-ci.com
  138. 42.21 s Progress: 0 of 7 built, 60 of 100 downloaded from cache (13 downloading)
  139. 42.21 s Downloading cached binutils from https://cache.nix-ci.com
  140. 42.21 s Progress: 0 of 7 built, 61 of 100 downloaded from cache (13 downloading)
  141. 42.21 s Downloading cached gcc from https://cache.nix-ci.com
  142. 42.22 s Progress: 0 of 7 built, 62 of 100 downloaded from cache (13 downloading)
  143. 42.22 s Progress: 0 of 7 built, 63 of 100 downloaded from cache (12 downloading)
  144. 42.22 s Progress: 0 of 7 built, 64 of 100 downloaded from cache (11 downloading)
  145. 42.22 s Progress: 0 of 7 built, 65 of 100 downloaded from cache (10 downloading)
  146. 42.22 s Progress: 0 of 7 built, 66 of 100 downloaded from cache (9 downloading)
  147. 42.22 s Downloading cached sqlite-3.50.4-dev from https://cache.nix-ci.com
  148. 42.23 s Progress: 0 of 7 built, 67 of 100 downloaded from cache (9 downloading)
  149. 42.23 s Progress: 0 of 7 built, 68 of 100 downloaded from cache (8 downloading)
  150. 42.23 s Downloading cached coreutils from https://cache.nix-ci.com
  151. 42.24 s Progress: 0 of 7 built, 69 of 100 downloaded from cache (8 downloading)
  152. 42.26 s Progress: 0 of 7 built, 70 of 100 downloaded from cache (7 downloading)
  153. 42.27 s Progress: 0 of 7 built, 71 of 100 downloaded from cache (6 downloading)
  154. 42.27 s Downloading cached krb5-1.22.1-lib from https://cache.nix-ci.com
  155. 42.27 s Downloading cached libssh2 from https://cache.nix-ci.com
  156. 42.27 s Downloading cached ngtcp2 from https://cache.nix-ci.com
  157. 42.27 s Downloading cached openssl-3.6.0-bin from https://cache.nix-ci.com
  158. 42.30 s Progress: 0 of 7 built, 72 of 100 downloaded from cache (9 downloading)
  159. 42.30 s Downloading cached diffutils from https://cache.nix-ci.com
  160. 42.30 s Downloading cached findutils from https://cache.nix-ci.com
  161. 42.31 s Progress: 0 of 7 built, 73 of 100 downloaded from cache (10 downloading)
  162. 42.32 s Progress: 0 of 7 built, 74 of 100 downloaded from cache (9 downloading)
  163. 42.33 s Progress: 0 of 7 built, 75 of 100 downloaded from cache (8 downloading)
  164. 42.33 s Downloading cached openssl-3.6.0-dev from https://cache.nix-ci.com
  165. 42.33 s Progress: 0 of 7 built, 76 of 100 downloaded from cache (8 downloading)
  166. 42.33 s Downloading cached readline from https://cache.nix-ci.com
  167. 42.36 s Progress: 0 of 7 built, 77 of 100 downloaded from cache (8 downloading)
  168. 42.36 s Progress: 0 of 7 built, 78 of 100 downloaded from cache (7 downloading)
  169. 42.36 s Downloading cached curl from https://cache.nix-ci.com
  170. 42.36 s Progress: 0 of 7 built, 79 of 100 downloaded from cache (7 downloading)
  171. 42.37 s Progress: 0 of 7 built, 80 of 100 downloaded from cache (6 downloading)
  172. 42.37 s Downloading cached bash-interactive from https://cache.nix-ci.com
  173. 42.37 s Downloading cached python3 from https://cache.nix-ci.com
  174. 42.40 s Progress: 0 of 7 built, 81 of 100 downloaded from cache (7 downloading)
  175. 42.42 s Progress: 0 of 7 built, 82 of 100 downloaded from cache (6 downloading)
  176. 42.42 s Downloading cached prefetch-npm-deps from https://cache.nix-ci.com
  177. 42.48 s Progress: 0 of 7 built, 83 of 100 downloaded from cache (6 downloading)
  178. 42.52 s Progress: 0 of 7 built, 84 of 100 downloaded from cache (5 downloading)
  179. 42.52 s Downloading cached binutils-wrapper from https://cache.nix-ci.com
  180. 42.55 s Progress: 0 of 7 built, 85 of 100 downloaded from cache (5 downloading)
  181. 42.59 s Progress: 0 of 7 built, 86 of 100 downloaded from cache (4 downloading)
  182. 42.70 s Progress: 0 of 7 built, 87 of 100 downloaded from cache (3 downloading)
  183. 42.70 s Downloading cached icu4c-76.1-dev from https://cache.nix-ci.com
  184. 42.80 s Progress: 0 of 7 built, 88 of 100 downloaded from cache (3 downloading)
  185. 42.80 s Downloading cached nodejs from https://cache.nix-ci.com
  186. 42.80 s Downloading cached nodejs from https://cache.nix-ci.com
  187. 43.62 s Progress: 0 of 7 built, 89 of 100 downloaded from cache (4 downloading)
  188. 43.75 s Progress: 0 of 6 built, 90 of 100 downloaded from cache (3 downloading)
  189. 43.75 s Downloading cached nodejs-24.11.1-dev from https://cache.nix-ci.com
  190. 43.77 s Progress: 0 of 6 built, 91 of 100 downloaded from cache (3 downloading)
  191. 43.77 s Downloading cached nodejs-22.21.1-dev from https://cache.nix-ci.com
  192. 43.77 s Downloading cached nodejs-install-executables from https://cache.nix-ci.com
  193. 43.79 s Progress: 0 of 6 built, 92 of 100 downloaded from cache (4 downloading)
  194. 43.79 s Downloading cached npm-install-hook from https://cache.nix-ci.com
  195. 43.82 s Progress: 0 of 6 built, 93 of 100 downloaded from cache (4 downloading)
  196. 44.30 s Progress: 0 of 5 built, 94 of 100 downloaded from cache (3 downloading)
  197. 44.34 s Progress: 0 of 4 built, 95 of 100 downloaded from cache (2 downloading)
  198. 44.60 s Progress: 0 of 3 built, 96 of 100 downloaded from cache (1 downloading)
  199. 44.60 s Downloading cached gcc-wrapper from https://cache.nix-ci.com
  200. 44.61 s Progress: 0 of 3 built, 97 of 100 downloaded from cache (1 downloading)
  201. 44.61 s Downloading cached stdenv-linux from https://cache.nix-ci.com
  202. 44.63 s Progress: 0 of 3 built, 98 of 100 downloaded from cache (1 downloading)
  203. 45.68 s Progress: 0 of 2 built, 99 of 100 downloaded from cache
  204. 45.68 s Downloading cached npm-config-hook from https://cache.nix-ci.com
  205. 45.69 s Progress: 0 of 2 built, 100 of 100 downloaded from cache
  206. 45.85 s Building little-moments-e2e
  207. 45.89 s [little-moments-e2e] Phase: unpackPhase
  208. 45.90 s [little-moments-e2e] unpacking source archive /nix/store/x5ki1nqbh2bss8hvwxh2yjacg13v0rmb-source
  209. 45.92 s [little-moments-e2e] source root is source
  210. 45.93 s [little-moments-e2e] Phase: patchPhase
  211. 45.93 s [little-moments-e2e] Executing npmConfigHook
  212. 45.93 s [little-moments-e2e] Configuring npm
  213. 45.93 s [little-moments-e2e] Validating consistency between /build/source/package-lock.json and /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps/package-lock.json
  214. 45.96 s [little-moments-e2e] Setting npm_config_cache to /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps
  215. 45.96 s [little-moments-e2e] Installing dependencies
  216. 46.04 s [little-moments-e2e] npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
  217. 46.04 s [little-moments-e2e] npm warn Unknown env config "platform". This will stop working in the next major version of npm.
  218. 46.04 s [little-moments-e2e] npm warn Unknown env config "arch". This will stop working in the next major version of npm.
  219. 46.69 s [little-moments-e2e]
  220. 46.72 s [little-moments-e2e] added 100 packages, and audited 101 packages in 664ms
  221. 46.72 s [little-moments-e2e]
  222. 46.72 s [little-moments-e2e] 25 packages are looking for funding
  223. 46.72 s [little-moments-e2e] run `npm fund` for details
  224. 46.72 s [little-moments-e2e]
  225. 46.72 s [little-moments-e2e] found 0 vulnerabilities
  226. 46.73 s [little-moments-e2e] patching script interpreter paths in node_modules
  227. 46.74 s [little-moments-e2e] node_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  228. 46.74 s [little-moments-e2e] node_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  229. 46.75 s [little-moments-e2e] node_modules/@playwright/test/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  230. 46.76 s [little-moments-e2e] node_modules/js-yaml/bin/js-yaml.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  231. 46.77 s [little-moments-e2e] node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  232. 46.78 s [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  233. 46.79 s [little-moments-e2e] node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  234. 46.80 s [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  235. 46.80 s [little-moments-e2e] node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  236. 46.81 s [little-moments-e2e] node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  237. 46.82 s [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  238. 46.83 s [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  239. 46.84 s [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  240. 46.85 s [little-moments-e2e] node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  241. 46.86 s [little-moments-e2e] node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  242. 46.86 s [little-moments-e2e] node_modules/playwright-core/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  243. 46.88 s [little-moments-e2e] node_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/sh"
  244. 46.88 s [little-moments-e2e] node_modules/ulid/bin/cli.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  245. 46.89 s [little-moments-e2e] node_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  246. 46.90 s [little-moments-e2e] node_modules/playwright/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  247. 46.97 s [little-moments-e2e] npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
  248. 46.97 s [little-moments-e2e] npm warn Unknown env config "platform". This will stop working in the next major version of npm.
  249. 46.97 s [little-moments-e2e] npm warn Unknown env config "arch". This will stop working in the next major version of npm.
  250. 47.16 s [little-moments-e2e] rebuilt dependencies successfully
  251. 47.17 s [little-moments-e2e] patching script interpreter paths in node_modules
  252. 47.23 s [little-moments-e2e] Finished npmConfigHook
  253. 47.23 s [little-moments-e2e] Phase: updateAutotoolsGnuConfigScriptsPhase
  254. 47.25 s [little-moments-e2e] Phase: configurePhase
  255. 47.27 s [little-moments-e2e] no configure script, doing nothing
  256. 47.27 s [little-moments-e2e] Phase: buildPhase
  257. 47.28 s [little-moments-e2e] no Makefile or custom buildPhase, doing nothing
  258. 47.28 s [little-moments-e2e] Phase: checkPhase
  259. 48.20 s [little-moments-e2e] 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 4ec7957e-6ed0-49f8-9a9a-87d4c735c511-full.avif
  260. 48.23 s [little-moments-e2e] 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:121: copied 4ec7957e-6ed0-49f8-9a9a-87d4c735c511-250px.jpg
  261. 48.26 s [little-moments-e2e] 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:121: copied 4ec7957e-6ed0-49f8-9a9a-87d4c735c511-150px.jpg
  262. 48.26 s [little-moments-e2e] 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied da1a6f06-c8d8-4442-a9d8-98aff80456cb-full.mp4
  263. 48.28 s [little-moments-e2e] 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied da1a6f06-c8d8-4442-a9d8-98aff80456cb-thumb-250px.jpg
  264. 48.29 s [little-moments-e2e] 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied da1a6f06-c8d8-4442-a9d8-98aff80456cb-thumb-150px.jpg
  265. 48.29 s [little-moments-e2e] 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied bc8b5296-ce5c-42e9-a886-0eaf2e30ee1c-full.mp4
  266. 48.31 s [little-moments-e2e] 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied bc8b5296-ce5c-42e9-a886-0eaf2e30ee1c-thumb-250px.jpg
  267. 48.32 s [little-moments-e2e] 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied bc8b5296-ce5c-42e9-a886-0eaf2e30ee1c-thumb-150px.jpg
  268. 48.32 s [little-moments-e2e] 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 28f98c2a-a97e-4a4a-9337-ef7e97777eed-full.jpg
  269. 48.40 s [little-moments-e2e] 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:108: copied 28f98c2a-a97e-4a4a-9337-ef7e97777eed-850px.jpg
  270. 48.43 s [little-moments-e2e] 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 28f98c2a-a97e-4a4a-9337-ef7e97777eed-250px.jpg
  271. 48.46 s [little-moments-e2e] 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 28f98c2a-a97e-4a4a-9337-ef7e97777eed-150px.jpg
  272. 48.46 s [little-moments-e2e] 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 084b64d7-8cb8-40be-a1df-1ce94afebc48-full.jpg
  273. 48.53 s [little-moments-e2e] 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:108: copied 084b64d7-8cb8-40be-a1df-1ce94afebc48-850px.jpg
  274. 48.57 s [little-moments-e2e] 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 084b64d7-8cb8-40be-a1df-1ce94afebc48-250px.jpg
  275. 48.59 s [little-moments-e2e] 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 084b64d7-8cb8-40be-a1df-1ce94afebc48-150px.jpg
  276. 48.59 s [little-moments-e2e] 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/store/sqlite/sqlite.go:18: reading DB from /build/source/test-imported-media/test-store.db
  277. 49.23 s [little-moments-e2e] 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:140: wrote /build/source/test-imported-media/test-store.db
  278. 49.30 s [little-moments-e2e] npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
  279. 49.31 s [little-moments-e2e] npm warn Unknown env config "platform". This will stop working in the next major version of npm.
  280. 49.31 s [little-moments-e2e] npm warn Unknown env config "arch". This will stop working in the next major version of npm.
  281. 50.41 s [little-moments-e2e]
  282. 50.41 s [little-moments-e2e] Running 15 tests using 8 workers
  283. 52.99 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  284. 53.01 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  285. 53.04 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  286. 53.05 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  287. 53.05 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  288. 53.06 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  289. 53.10 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  290. 53.14 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  291. 60.12 s [little-moments-e2e] ·TTTTTTTTSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  292. 60.29 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  293. 60.29 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  294. 60.29 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  295. 60.29 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  296. 60.37 s [little-moments-e2e] Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  297. 64.93 s [little-moments-e2e] TTTTTT
  298. 64.93 s [little-moments-e2e]
  299. 64.93 s [little-moments-e2e] 1) [chromium] › e2e/auth.spec.ts:13:7 › Authentication › logs in and shows the browse page ───────
  300. 64.93 s [little-moments-e2e]
  301. 64.93 s [little-moments-e2e] Test timeout of 5000ms exceeded.
  302. 64.93 s [little-moments-e2e]
  303. 64.93 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  304. 64.93 s [little-moments-e2e]
  305. 64.93 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  306. 64.93 s [little-moments-e2e] Received string: "http://127.0.0.1:39885/login"
  307. 64.93 s [little-moments-e2e]
  308. 64.93 s [little-moments-e2e] Call log:
  309. 64.93 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  310. 64.93 s [little-moments-e2e] 8 × unexpected value "http://127.0.0.1:39885/login"
  311. 64.93 s [little-moments-e2e]
  312. 64.93 s [little-moments-e2e]
  313. 64.93 s [little-moments-e2e] at fixtures.ts:200
  314. 64.93 s [little-moments-e2e]
  315. 64.93 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  316. 64.93 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  317. 64.93 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  318. 64.93 s [little-moments-e2e] | ^
  319. 64.93 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  320. 64.93 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  321. 64.93 s [little-moments-e2e] 203 | }
  322. 64.93 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  323. 64.93 s [little-moments-e2e] at /build/source/e2e/auth.spec.ts:14:5
  324. 64.93 s [little-moments-e2e]
  325. 64.93 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  326. 64.93 s [little-moments-e2e] e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/video.webm
  327. 64.93 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  328. 64.93 s [little-moments-e2e]
  329. 64.93 s [little-moments-e2e] Error Context: e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/error-context.md
  330. 64.93 s [little-moments-e2e]
  331. 64.93 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  332. 64.93 s [little-moments-e2e] e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/trace.zip
  333. 64.93 s [little-moments-e2e] Usage:
  334. 64.93 s [little-moments-e2e]
  335. 64.93 s [little-moments-e2e] npx playwright show-trace e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/trace.zip
  336. 64.93 s [little-moments-e2e]
  337. 64.93 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  338. 64.93 s [little-moments-e2e]
  339. 64.93 s [little-moments-e2e] 2) [chromium] › e2e/auth.spec.ts:20:7 › Authentication › redirects to stored next path after login
  340. 64.93 s [little-moments-e2e]
  341. 64.93 s [little-moments-e2e] Test timeout of 5000ms exceeded.
  342. 64.93 s [little-moments-e2e]
  343. 64.93 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  344. 64.93 s [little-moments-e2e]
  345. 64.93 s [little-moments-e2e] Expected pattern: /\/login\/confirm\?token=[^&]+$/
  346. 64.93 s [little-moments-e2e] Received string: "http://127.0.0.1:46755/login"
  347. 64.93 s [little-moments-e2e]
  348. 64.93 s [little-moments-e2e] Call log:
  349. 64.93 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  350. 64.93 s [little-moments-e2e] 7 × unexpected value "http://127.0.0.1:46755/login"
  351. 64.93 s [little-moments-e2e]
  352. 64.93 s [little-moments-e2e]
  353. 64.93 s [little-moments-e2e] 27 | await page.getByLabel("Email address").fill("homer@example.com");
  354. 64.93 s [little-moments-e2e] 28 | await page.getByRole("button", { name: "Log in" }).click();
  355. 64.93 s [little-moments-e2e] > 29 | await expect(page).toHaveURL(/\/login\/confirm\?token=[^&]+$/);
  356. 64.93 s [little-moments-e2e] | ^
  357. 64.93 s [little-moments-e2e] 30 |
  358. 64.93 s [little-moments-e2e] 31 | await page.getByRole("button", { name: "Log in" }).click();
  359. 64.93 s [little-moments-e2e] 32 |
  360. 64.93 s [little-moments-e2e] at /build/source/e2e/auth.spec.ts:29:24
  361. 64.93 s [little-moments-e2e]
  362. 64.93 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  363. 64.93 s [little-moments-e2e] e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/video.webm
  364. 64.93 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  365. 64.93 s [little-moments-e2e]
  366. 64.93 s [little-moments-e2e] Error Context: e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/error-context.md
  367. 64.93 s [little-moments-e2e]
  368. 64.93 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  369. 64.93 s [little-moments-e2e] e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/trace.zip
  370. 64.93 s [little-moments-e2e] Usage:
  371. 64.93 s [little-moments-e2e]
  372. 64.93 s [little-moments-e2e] npx playwright show-trace e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/trace.zip
  373. 64.93 s [little-moments-e2e]
  374. 64.93 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  375. 64.93 s [little-moments-e2e]
  376. 64.93 s [little-moments-e2e] 3) [chromium] › e2e/auth.spec.ts:39:7 › Authentication › logs out and redirects to the login page
  377. 64.93 s [little-moments-e2e]
  378. 64.93 s [little-moments-e2e] Test timeout of 5000ms exceeded.
  379. 64.93 s [little-moments-e2e]
  380. 64.93 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  381. 64.93 s [little-moments-e2e]
  382. 64.93 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  383. 64.93 s [little-moments-e2e] Received string: "http://127.0.0.1:35981/login"
  384. 64.93 s [little-moments-e2e]
  385. 64.93 s [little-moments-e2e] Call log:
  386. 64.93 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  387. 64.93 s [little-moments-e2e] 8 × unexpected value "http://127.0.0.1:35981/login"
  388. 64.93 s [little-moments-e2e]
  389. 64.93 s [little-moments-e2e]
  390. 64.93 s [little-moments-e2e] at fixtures.ts:200
  391. 64.93 s [little-moments-e2e]
  392. 64.93 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  393. 64.93 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  394. 64.93 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  395. 64.93 s [little-moments-e2e] | ^
  396. 64.93 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  397. 64.93 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  398. 64.93 s [little-moments-e2e] 203 | }
  399. 64.93 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  400. 64.93 s [little-moments-e2e] at /build/source/e2e/auth.spec.ts:40:5
  401. 64.93 s [little-moments-e2e]
  402. 64.93 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  403. 64.93 s [little-moments-e2e] e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/video.webm
  404. 64.93 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  405. 64.93 s [little-moments-e2e]
  406. 64.93 s [little-moments-e2e] Error Context: e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/error-context.md
  407. 64.93 s [little-moments-e2e]
  408. 64.93 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  409. 64.93 s [little-moments-e2e] e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/trace.zip
  410. 64.93 s [little-moments-e2e] Usage:
  411. 64.93 s [little-moments-e2e]
  412. 64.93 s [little-moments-e2e] npx playwright show-trace e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/trace.zip
  413. 64.93 s [little-moments-e2e]
  414. 64.93 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  415. 64.93 s [little-moments-e2e]
  416. 64.93 s [little-moments-e2e] 4) [chromium] › e2e/auth.spec.ts:47:7 › Authentication › cannot access protected routes after logging out
  417. 64.93 s [little-moments-e2e]
  418. 64.93 s [little-moments-e2e] Test timeout of 5000ms exceeded.
  419. 64.93 s [little-moments-e2e]
  420. 64.93 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  421. 64.93 s [little-moments-e2e]
  422. 64.93 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  423. 64.93 s [little-moments-e2e] Received string: "http://127.0.0.1:35715/login"
  424. 64.93 s [little-moments-e2e]
  425. 64.93 s [little-moments-e2e] Call log:
  426. 64.93 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  427. 64.93 s [little-moments-e2e] 7 × unexpected value "http://127.0.0.1:35715/login"
  428. 64.93 s [little-moments-e2e]
  429. 64.93 s [little-moments-e2e]
  430. 64.93 s [little-moments-e2e] at fixtures.ts:200
  431. 64.93 s [little-moments-e2e]
  432. 64.93 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  433. 64.93 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  434. 64.93 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  435. 64.93 s [little-moments-e2e] | ^
  436. 64.93 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  437. 64.93 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  438. 64.93 s [little-moments-e2e] 203 | }
  439. 64.93 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  440. 64.93 s [little-moments-e2e] at /build/source/e2e/auth.spec.ts:48:5
  441. 64.93 s [little-moments-e2e]
  442. 64.93 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  443. 64.93 s [little-moments-e2e] e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/video.webm
  444. 64.93 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  445. 64.93 s [little-moments-e2e]
  446. 64.93 s [little-moments-e2e] Error Context: e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/error-context.md
  447. 64.93 s [little-moments-e2e]
  448. 64.93 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  449. 64.93 s [little-moments-e2e] e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/trace.zip
  450. 64.93 s [little-moments-e2e] Usage:
  451. 64.93 s [little-moments-e2e]
  452. 64.93 s [little-moments-e2e] npx playwright show-trace e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/trace.zip
  453. 64.93 s [little-moments-e2e]
  454. 64.93 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  455. 64.93 s [little-moments-e2e]
  456. 64.93 s [little-moments-e2e] 5) [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page
  457. 64.93 s [little-moments-e2e]
  458. 64.93 s [little-moments-e2e] Test timeout of 5000ms exceeded while running "beforeEach" hook.
  459. 64.93 s [little-moments-e2e]
  460. 64.93 s [little-moments-e2e] 62 | test.describe.configure({ mode: "parallel" });
  461. 64.93 s [little-moments-e2e] 63 |
  462. 64.93 s [little-moments-e2e] > 64 | test.beforeEach(async ({ page }) => {
  463. 64.93 s [little-moments-e2e] | ^
  464. 64.93 s [little-moments-e2e] 65 | await logIn(page);
  465. 64.93 s [little-moments-e2e] 66 | });
  466. 64.93 s [little-moments-e2e] 67 |
  467. 64.93 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:64:8
  468. 64.93 s [little-moments-e2e]
  469. 64.93 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  470. 64.93 s [little-moments-e2e]
  471. 64.93 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  472. 64.93 s [little-moments-e2e] Received string: "http://127.0.0.1:33065/login"
  473. 64.93 s [little-moments-e2e]
  474. 64.93 s [little-moments-e2e] Call log:
  475. 64.93 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  476. 64.93 s [little-moments-e2e] 7 × unexpected value "http://127.0.0.1:33065/login"
  477. 64.93 s [little-moments-e2e]
  478. 64.93 s [little-moments-e2e]
  479. 64.93 s [little-moments-e2e] at fixtures.ts:200
  480. 64.93 s [little-moments-e2e]
  481. 64.93 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  482. 64.93 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  483. 64.93 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  484. 64.93 s [little-moments-e2e] | ^
  485. 64.93 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  486. 64.93 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  487. 64.93 s [little-moments-e2e] 203 | }
  488. 64.93 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  489. 64.93 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:65:5
  490. 64.93 s [little-moments-e2e]
  491. 64.93 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  492. 64.93 s [little-moments-e2e] e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/video.webm
  493. 64.93 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  494. 64.93 s [little-moments-e2e]
  495. 64.93 s [little-moments-e2e] Error Context: e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/error-context.md
  496. 64.93 s [little-moments-e2e]
  497. 64.93 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  498. 64.93 s [little-moments-e2e] e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip
  499. 64.93 s [little-moments-e2e] Usage:
  500. 64.93 s [little-moments-e2e]
  501. 64.93 s [little-moments-e2e] npx playwright show-trace e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip
  502. 64.93 s [little-moments-e2e]
  503. 64.93 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  504. 64.93 s [little-moments-e2e]
  505. 64.93 s [little-moments-e2e] 6) [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest
  506. 64.93 s [little-moments-e2e]
  507. 64.93 s [little-moments-e2e] Test timeout of 5000ms exceeded while running "beforeEach" hook.
  508. 64.93 s [little-moments-e2e]
  509. 64.93 s [little-moments-e2e] 62 | test.describe.configure({ mode: "parallel" });
  510. 64.93 s [little-moments-e2e] 63 |
  511. 64.93 s [little-moments-e2e] > 64 | test.beforeEach(async ({ page }) => {
  512. 64.93 s [little-moments-e2e] | ^
  513. 64.93 s [little-moments-e2e] 65 | await logIn(page);
  514. 64.93 s [little-moments-e2e] 66 | });
  515. 64.93 s [little-moments-e2e] 67 |
  516. 64.93 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:64:8
  517. 64.93 s [little-moments-e2e]
  518. 64.93 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  519. 64.93 s [little-moments-e2e]
  520. 64.93 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  521. 64.93 s [little-moments-e2e] Received string: "http://127.0.0.1:41823/login"
  522. 64.93 s [little-moments-e2e]
  523. 64.93 s [little-moments-e2e] Call log:
  524. 64.93 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  525. 64.93 s [little-moments-e2e] 7 × unexpected value "http://127.0.0.1:41823/login"
  526. 64.93 s [little-moments-e2e]
  527. 64.93 s [little-moments-e2e]
  528. 64.93 s [little-moments-e2e] at fixtures.ts:200
  529. 64.93 s [little-moments-e2e]
  530. 64.93 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  531. 64.93 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  532. 64.93 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  533. 64.93 s [little-moments-e2e] | ^
  534. 64.93 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  535. 64.93 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  536. 64.93 s [little-moments-e2e] 203 | }
  537. 64.93 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  538. 64.93 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:65:5
  539. 64.93 s [little-moments-e2e]
  540. 64.93 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  541. 64.93 s [little-moments-e2e] e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/video.webm
  542. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  543. 64.94 s [little-moments-e2e]
  544. 64.94 s [little-moments-e2e] Error Context: e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/error-context.md
  545. 64.94 s [little-moments-e2e]
  546. 64.94 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  547. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip
  548. 64.94 s [little-moments-e2e] Usage:
  549. 64.94 s [little-moments-e2e]
  550. 64.94 s [little-moments-e2e] npx playwright show-trace e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip
  551. 64.94 s [little-moments-e2e]
  552. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  553. 64.94 s [little-moments-e2e]
  554. 64.94 s [little-moments-e2e] 7) [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only
  555. 64.94 s [little-moments-e2e]
  556. 64.94 s [little-moments-e2e] Test timeout of 5000ms exceeded while running "beforeEach" hook.
  557. 64.94 s [little-moments-e2e]
  558. 64.94 s [little-moments-e2e] 62 | test.describe.configure({ mode: "parallel" });
  559. 64.94 s [little-moments-e2e] 63 |
  560. 64.94 s [little-moments-e2e] > 64 | test.beforeEach(async ({ page }) => {
  561. 64.94 s [little-moments-e2e] | ^
  562. 64.94 s [little-moments-e2e] 65 | await logIn(page);
  563. 64.94 s [little-moments-e2e] 66 | });
  564. 64.94 s [little-moments-e2e] 67 |
  565. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:64:8
  566. 64.94 s [little-moments-e2e]
  567. 64.94 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  568. 64.94 s [little-moments-e2e]
  569. 64.94 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  570. 64.94 s [little-moments-e2e] Received string: "http://127.0.0.1:37117/login"
  571. 64.94 s [little-moments-e2e]
  572. 64.94 s [little-moments-e2e] Call log:
  573. 64.94 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  574. 64.94 s [little-moments-e2e] 7 × unexpected value "http://127.0.0.1:37117/login"
  575. 64.94 s [little-moments-e2e]
  576. 64.94 s [little-moments-e2e]
  577. 64.94 s [little-moments-e2e] at fixtures.ts:200
  578. 64.94 s [little-moments-e2e]
  579. 64.94 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  580. 64.94 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  581. 64.94 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  582. 64.94 s [little-moments-e2e] | ^
  583. 64.94 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  584. 64.94 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  585. 64.94 s [little-moments-e2e] 203 | }
  586. 64.94 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  587. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:65:5
  588. 64.94 s [little-moments-e2e]
  589. 64.94 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  590. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/video.webm
  591. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  592. 64.94 s [little-moments-e2e]
  593. 64.94 s [little-moments-e2e] Error Context: e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/error-context.md
  594. 64.94 s [little-moments-e2e]
  595. 64.94 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  596. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip
  597. 64.94 s [little-moments-e2e] Usage:
  598. 64.94 s [little-moments-e2e]
  599. 64.94 s [little-moments-e2e] npx playwright show-trace e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip
  600. 64.94 s [little-moments-e2e]
  601. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  602. 64.94 s [little-moments-e2e]
  603. 64.94 s [little-moments-e2e] 8) [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details
  604. 64.94 s [little-moments-e2e]
  605. 64.94 s [little-moments-e2e] Test timeout of 5000ms exceeded while running "beforeEach" hook.
  606. 64.94 s [little-moments-e2e]
  607. 64.94 s [little-moments-e2e] 62 | test.describe.configure({ mode: "parallel" });
  608. 64.94 s [little-moments-e2e] 63 |
  609. 64.94 s [little-moments-e2e] > 64 | test.beforeEach(async ({ page }) => {
  610. 64.94 s [little-moments-e2e] | ^
  611. 64.94 s [little-moments-e2e] 65 | await logIn(page);
  612. 64.94 s [little-moments-e2e] 66 | });
  613. 64.94 s [little-moments-e2e] 67 |
  614. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:64:8
  615. 64.94 s [little-moments-e2e]
  616. 64.94 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  617. 64.94 s [little-moments-e2e]
  618. 64.94 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  619. 64.94 s [little-moments-e2e] Received string: "http://127.0.0.1:33535/login"
  620. 64.94 s [little-moments-e2e]
  621. 64.94 s [little-moments-e2e] Call log:
  622. 64.94 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  623. 64.94 s [little-moments-e2e] 8 × unexpected value "http://127.0.0.1:33535/login"
  624. 64.94 s [little-moments-e2e]
  625. 64.94 s [little-moments-e2e]
  626. 64.94 s [little-moments-e2e] at fixtures.ts:200
  627. 64.94 s [little-moments-e2e]
  628. 64.94 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  629. 64.94 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  630. 64.94 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  631. 64.94 s [little-moments-e2e] | ^
  632. 64.94 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  633. 64.94 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  634. 64.94 s [little-moments-e2e] 203 | }
  635. 64.94 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  636. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:65:5
  637. 64.94 s [little-moments-e2e]
  638. 64.94 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  639. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/video.webm
  640. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  641. 64.94 s [little-moments-e2e]
  642. 64.94 s [little-moments-e2e] Error Context: e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/error-context.md
  643. 64.94 s [little-moments-e2e]
  644. 64.94 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  645. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip
  646. 64.94 s [little-moments-e2e] Usage:
  647. 64.94 s [little-moments-e2e]
  648. 64.94 s [little-moments-e2e] npx playwright show-trace e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip
  649. 64.94 s [little-moments-e2e]
  650. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  651. 64.94 s [little-moments-e2e]
  652. 64.94 s [little-moments-e2e] 9) [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links
  653. 64.94 s [little-moments-e2e]
  654. 64.94 s [little-moments-e2e] Test timeout of 5000ms exceeded while running "beforeEach" hook.
  655. 64.94 s [little-moments-e2e]
  656. 64.94 s [little-moments-e2e] 62 | test.describe.configure({ mode: "parallel" });
  657. 64.94 s [little-moments-e2e] 63 |
  658. 64.94 s [little-moments-e2e] > 64 | test.beforeEach(async ({ page }) => {
  659. 64.94 s [little-moments-e2e] | ^
  660. 64.94 s [little-moments-e2e] 65 | await logIn(page);
  661. 64.94 s [little-moments-e2e] 66 | });
  662. 64.94 s [little-moments-e2e] 67 |
  663. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:64:8
  664. 64.94 s [little-moments-e2e]
  665. 64.94 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  666. 64.94 s [little-moments-e2e]
  667. 64.94 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  668. 64.94 s [little-moments-e2e] Received string: "http://127.0.0.1:43309/login"
  669. 64.94 s [little-moments-e2e]
  670. 64.94 s [little-moments-e2e] Call log:
  671. 64.94 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  672. 64.94 s [little-moments-e2e] 8 × unexpected value "http://127.0.0.1:43309/login"
  673. 64.94 s [little-moments-e2e]
  674. 64.94 s [little-moments-e2e]
  675. 64.94 s [little-moments-e2e] at fixtures.ts:200
  676. 64.94 s [little-moments-e2e]
  677. 64.94 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  678. 64.94 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  679. 64.94 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  680. 64.94 s [little-moments-e2e] | ^
  681. 64.94 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  682. 64.94 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  683. 64.94 s [little-moments-e2e] 203 | }
  684. 64.94 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  685. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:65:5
  686. 64.94 s [little-moments-e2e]
  687. 64.94 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  688. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/video.webm
  689. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  690. 64.94 s [little-moments-e2e]
  691. 64.94 s [little-moments-e2e] Error Context: e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/error-context.md
  692. 64.94 s [little-moments-e2e]
  693. 64.94 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  694. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip
  695. 64.94 s [little-moments-e2e] Usage:
  696. 64.94 s [little-moments-e2e]
  697. 64.94 s [little-moments-e2e] npx playwright show-trace e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip
  698. 64.94 s [little-moments-e2e]
  699. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  700. 64.94 s [little-moments-e2e]
  701. 64.94 s [little-moments-e2e] 10) [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys
  702. 64.94 s [little-moments-e2e]
  703. 64.94 s [little-moments-e2e] Test timeout of 5000ms exceeded while running "beforeEach" hook.
  704. 64.94 s [little-moments-e2e]
  705. 64.94 s [little-moments-e2e] 62 | test.describe.configure({ mode: "parallel" });
  706. 64.94 s [little-moments-e2e] 63 |
  707. 64.94 s [little-moments-e2e] > 64 | test.beforeEach(async ({ page }) => {
  708. 64.94 s [little-moments-e2e] | ^
  709. 64.94 s [little-moments-e2e] 65 | await logIn(page);
  710. 64.94 s [little-moments-e2e] 66 | });
  711. 64.94 s [little-moments-e2e] 67 |
  712. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:64:8
  713. 64.94 s [little-moments-e2e]
  714. 64.94 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  715. 64.94 s [little-moments-e2e]
  716. 64.94 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  717. 64.94 s [little-moments-e2e] Received string: "http://127.0.0.1:35333/login"
  718. 64.94 s [little-moments-e2e]
  719. 64.94 s [little-moments-e2e] Call log:
  720. 64.94 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  721. 64.94 s [little-moments-e2e] 8 × unexpected value "http://127.0.0.1:35333/login"
  722. 64.94 s [little-moments-e2e]
  723. 64.94 s [little-moments-e2e]
  724. 64.94 s [little-moments-e2e] at fixtures.ts:200
  725. 64.94 s [little-moments-e2e]
  726. 64.94 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  727. 64.94 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  728. 64.94 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  729. 64.94 s [little-moments-e2e] | ^
  730. 64.94 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  731. 64.94 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  732. 64.94 s [little-moments-e2e] 203 | }
  733. 64.94 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  734. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:65:5
  735. 64.94 s [little-moments-e2e]
  736. 64.94 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  737. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/video.webm
  738. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  739. 64.94 s [little-moments-e2e]
  740. 64.94 s [little-moments-e2e] Error Context: e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/error-context.md
  741. 64.94 s [little-moments-e2e]
  742. 64.94 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  743. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip
  744. 64.94 s [little-moments-e2e] Usage:
  745. 64.94 s [little-moments-e2e]
  746. 64.94 s [little-moments-e2e] npx playwright show-trace e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip
  747. 64.94 s [little-moments-e2e]
  748. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  749. 64.94 s [little-moments-e2e]
  750. 64.94 s [little-moments-e2e] 11) [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile
  751. 64.94 s [little-moments-e2e]
  752. 64.94 s [little-moments-e2e] Test timeout of 5000ms exceeded while running "beforeEach" hook.
  753. 64.94 s [little-moments-e2e]
  754. 64.94 s [little-moments-e2e] 62 | test.describe.configure({ mode: "parallel" });
  755. 64.94 s [little-moments-e2e] 63 |
  756. 64.94 s [little-moments-e2e] > 64 | test.beforeEach(async ({ page }) => {
  757. 64.94 s [little-moments-e2e] | ^
  758. 64.94 s [little-moments-e2e] 65 | await logIn(page);
  759. 64.94 s [little-moments-e2e] 66 | });
  760. 64.94 s [little-moments-e2e] 67 |
  761. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:64:8
  762. 64.94 s [little-moments-e2e]
  763. 64.94 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  764. 64.94 s [little-moments-e2e]
  765. 64.94 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  766. 64.94 s [little-moments-e2e] Received string: "http://127.0.0.1:35747/login"
  767. 64.94 s [little-moments-e2e]
  768. 64.94 s [little-moments-e2e] Call log:
  769. 64.94 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  770. 64.94 s [little-moments-e2e] 8 × unexpected value "http://127.0.0.1:35747/login"
  771. 64.94 s [little-moments-e2e]
  772. 64.94 s [little-moments-e2e]
  773. 64.94 s [little-moments-e2e] at fixtures.ts:200
  774. 64.94 s [little-moments-e2e]
  775. 64.94 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  776. 64.94 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  777. 64.94 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  778. 64.94 s [little-moments-e2e] | ^
  779. 64.94 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  780. 64.94 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  781. 64.94 s [little-moments-e2e] 203 | }
  782. 64.94 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  783. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:65:5
  784. 64.94 s [little-moments-e2e]
  785. 64.94 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  786. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/video.webm
  787. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  788. 64.94 s [little-moments-e2e]
  789. 64.94 s [little-moments-e2e] Error Context: e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/error-context.md
  790. 64.94 s [little-moments-e2e]
  791. 64.94 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  792. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip
  793. 64.94 s [little-moments-e2e] Usage:
  794. 64.94 s [little-moments-e2e]
  795. 64.94 s [little-moments-e2e] npx playwright show-trace e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip
  796. 64.94 s [little-moments-e2e]
  797. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  798. 64.94 s [little-moments-e2e]
  799. 64.94 s [little-moments-e2e] 12) [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list
  800. 64.94 s [little-moments-e2e]
  801. 64.94 s [little-moments-e2e] Test timeout of 5000ms exceeded while running "beforeEach" hook.
  802. 64.94 s [little-moments-e2e]
  803. 64.94 s [little-moments-e2e] 62 | test.describe.configure({ mode: "parallel" });
  804. 64.94 s [little-moments-e2e] 63 |
  805. 64.94 s [little-moments-e2e] > 64 | test.beforeEach(async ({ page }) => {
  806. 64.94 s [little-moments-e2e] | ^
  807. 64.94 s [little-moments-e2e] 65 | await logIn(page);
  808. 64.94 s [little-moments-e2e] 66 | });
  809. 64.94 s [little-moments-e2e] 67 |
  810. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:64:8
  811. 64.94 s [little-moments-e2e]
  812. 64.94 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  813. 64.94 s [little-moments-e2e]
  814. 64.94 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  815. 64.94 s [little-moments-e2e] Received string: "http://127.0.0.1:37135/login"
  816. 64.94 s [little-moments-e2e]
  817. 64.94 s [little-moments-e2e] Call log:
  818. 64.94 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  819. 64.94 s [little-moments-e2e] 8 × unexpected value "http://127.0.0.1:37135/login"
  820. 64.94 s [little-moments-e2e]
  821. 64.94 s [little-moments-e2e]
  822. 64.94 s [little-moments-e2e] at fixtures.ts:200
  823. 64.94 s [little-moments-e2e]
  824. 64.94 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  825. 64.94 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  826. 64.94 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  827. 64.94 s [little-moments-e2e] | ^
  828. 64.94 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  829. 64.94 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  830. 64.94 s [little-moments-e2e] 203 | }
  831. 64.94 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  832. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:65:5
  833. 64.94 s [little-moments-e2e]
  834. 64.94 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  835. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/video.webm
  836. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  837. 64.94 s [little-moments-e2e]
  838. 64.94 s [little-moments-e2e] Error Context: e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/error-context.md
  839. 64.94 s [little-moments-e2e]
  840. 64.94 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  841. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip
  842. 64.94 s [little-moments-e2e] Usage:
  843. 64.94 s [little-moments-e2e]
  844. 64.94 s [little-moments-e2e] npx playwright show-trace e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip
  845. 64.94 s [little-moments-e2e]
  846. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  847. 64.94 s [little-moments-e2e]
  848. 64.94 s [little-moments-e2e] 13) [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media
  849. 64.94 s [little-moments-e2e]
  850. 64.94 s [little-moments-e2e] Test timeout of 5000ms exceeded while running "beforeEach" hook.
  851. 64.94 s [little-moments-e2e]
  852. 64.94 s [little-moments-e2e] 62 | test.describe.configure({ mode: "parallel" });
  853. 64.94 s [little-moments-e2e] 63 |
  854. 64.94 s [little-moments-e2e] > 64 | test.beforeEach(async ({ page }) => {
  855. 64.94 s [little-moments-e2e] | ^
  856. 64.94 s [little-moments-e2e] 65 | await logIn(page);
  857. 64.94 s [little-moments-e2e] 66 | });
  858. 64.94 s [little-moments-e2e] 67 |
  859. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:64:8
  860. 64.94 s [little-moments-e2e]
  861. 64.94 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  862. 64.94 s [little-moments-e2e]
  863. 64.94 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  864. 64.94 s [little-moments-e2e] Received string: "http://127.0.0.1:37193/login"
  865. 64.94 s [little-moments-e2e]
  866. 64.94 s [little-moments-e2e] Call log:
  867. 64.94 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  868. 64.94 s [little-moments-e2e] 8 × unexpected value "http://127.0.0.1:37193/login"
  869. 64.94 s [little-moments-e2e]
  870. 64.94 s [little-moments-e2e]
  871. 64.94 s [little-moments-e2e] at fixtures.ts:200
  872. 64.94 s [little-moments-e2e]
  873. 64.94 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  874. 64.94 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  875. 64.94 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  876. 64.94 s [little-moments-e2e] | ^
  877. 64.94 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  878. 64.94 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  879. 64.94 s [little-moments-e2e] 203 | }
  880. 64.94 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  881. 64.94 s [little-moments-e2e] at /build/source/e2e/browse.spec.ts:65:5
  882. 64.94 s [little-moments-e2e]
  883. 64.94 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  884. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/video.webm
  885. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  886. 64.94 s [little-moments-e2e]
  887. 64.94 s [little-moments-e2e] Error Context: e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/error-context.md
  888. 64.94 s [little-moments-e2e]
  889. 64.94 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  890. 64.94 s [little-moments-e2e] e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip
  891. 64.94 s [little-moments-e2e] Usage:
  892. 64.94 s [little-moments-e2e]
  893. 64.94 s [little-moments-e2e] npx playwright show-trace e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip
  894. 64.94 s [little-moments-e2e]
  895. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  896. 64.94 s [little-moments-e2e]
  897. 64.94 s [little-moments-e2e] 14) [chromium] › e2e/media.spec.ts:10:7 › View media › shows reaction with a tooltip of the exact date
  898. 64.94 s [little-moments-e2e]
  899. 64.94 s [little-moments-e2e] Test timeout of 5000ms exceeded while running "beforeEach" hook.
  900. 64.94 s [little-moments-e2e]
  901. 64.94 s [little-moments-e2e] 4 | test.describe.configure({ mode: "parallel" });
  902. 64.94 s [little-moments-e2e] 5 |
  903. 64.94 s [little-moments-e2e] > 6 | test.beforeEach(async ({ page }) => {
  904. 64.94 s [little-moments-e2e] | ^
  905. 64.94 s [little-moments-e2e] 7 | await logIn(page);
  906. 64.94 s [little-moments-e2e] 8 | });
  907. 64.94 s [little-moments-e2e] 9 |
  908. 64.94 s [little-moments-e2e] at /build/source/e2e/media.spec.ts:6:8
  909. 64.94 s [little-moments-e2e]
  910. 64.94 s [little-moments-e2e] Error: expect(page).toHaveURL(expected) failed
  911. 64.94 s [little-moments-e2e]
  912. 64.94 s [little-moments-e2e] Expected pattern: /\/login\/confirm/
  913. 64.94 s [little-moments-e2e] Received string: "http://127.0.0.1:39043/login"
  914. 64.94 s [little-moments-e2e]
  915. 64.94 s [little-moments-e2e] Call log:
  916. 64.94 s [little-moments-e2e] - Expect "toHaveURL" with timeout 5000ms
  917. 64.94 s [little-moments-e2e] 8 × unexpected value "http://127.0.0.1:39043/login"
  918. 64.94 s [little-moments-e2e]
  919. 64.94 s [little-moments-e2e]
  920. 64.94 s [little-moments-e2e] at fixtures.ts:200
  921. 64.94 s [little-moments-e2e]
  922. 64.94 s [little-moments-e2e] 198 | await page.getByLabel("Email address").fill("homer@example.com");
  923. 64.94 s [little-moments-e2e] 199 | await page.getByRole("button", { name: "Log in" }).click();
  924. 64.94 s [little-moments-e2e] > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  925. 64.94 s [little-moments-e2e] | ^
  926. 64.94 s [little-moments-e2e] 201 | await page.getByRole("button", { name: "Log in" }).click();
  927. 64.94 s [little-moments-e2e] 202 | await expect(page).toHaveURL("/");
  928. 64.94 s [little-moments-e2e] 203 | }
  929. 64.94 s [little-moments-e2e] at logIn (/build/source/e2e/fixtures.ts:200:22)
  930. 64.94 s [little-moments-e2e] at /build/source/e2e/media.spec.ts:7:5
  931. 64.94 s [little-moments-e2e]
  932. 64.94 s [little-moments-e2e] attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  933. 64.94 s [little-moments-e2e] e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/video.webm
  934. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  935. 64.94 s [little-moments-e2e]
  936. 64.94 s [little-moments-e2e] Error Context: e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/error-context.md
  937. 64.94 s [little-moments-e2e]
  938. 64.94 s [little-moments-e2e] attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  939. 64.94 s [little-moments-e2e] e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip
  940. 64.94 s [little-moments-e2e] Usage:
  941. 64.94 s [little-moments-e2e]
  942. 64.94 s [little-moments-e2e] npx playwright show-trace e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip
  943. 64.94 s [little-moments-e2e]
  944. 64.94 s [little-moments-e2e] ────────────────────────────────────────────────────────────────────────────────────────────────
  945. 64.94 s [little-moments-e2e]
  946. 64.94 s [little-moments-e2e] 14 failed
  947. 64.94 s [little-moments-e2e] [chromium] › e2e/auth.spec.ts:13:7 › Authentication › logs in and shows the browse page ────────
  948. 64.94 s [little-moments-e2e] [chromium] › e2e/auth.spec.ts:20:7 › Authentication › redirects to stored next path after login
  949. 64.94 s [little-moments-e2e] [chromium] › e2e/auth.spec.ts:39:7 › Authentication › logs out and redirects to the login page ─
  950. 64.94 s [little-moments-e2e] [chromium] › e2e/auth.spec.ts:47:7 › Authentication › cannot access protected routes after logging out
  951. 64.94 s [little-moments-e2e] [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page
  952. 64.94 s [little-moments-e2e] [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest
  953. 64.94 s [little-moments-e2e] [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only
  954. 64.94 s [little-moments-e2e] [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details
  955. 64.94 s [little-moments-e2e] [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links
  956. 64.94 s [little-moments-e2e] [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys
  957. 64.94 s [little-moments-e2e] [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile
  958. 64.94 s [little-moments-e2e] [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list
  959. 64.94 s [little-moments-e2e] [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media
  960. 64.94 s [little-moments-e2e] [chromium] › e2e/media.spec.ts:10:7 › View media › shows reaction with a tooltip of the exact date
  961. 64.94 s [little-moments-e2e] 1 passed (14.6s)
  962. 65.08 s Progress: 0 of 1 built (1 failed), 100 of 100 downloaded from cache
  963. 65.10 s Cannot build '/nix/store/cs2bbf0n1628bkg8xxkxjg22xwm78vh3-little-moments-e2e-0.0.1.drv'.
  964. 65.10 s Reason: builder failed with exit code 1.
  965. 65.10 s Output paths:
  966. 65.10 s /nix/store/xpa9lv2wl0gi3m1rj96vzsbwhygfbih9-little-moments-e2e-0.0.1
  967. 65.10 s Last 755 log lines:
  968. 65.10 s > Running phase: unpackPhase
  969. 65.10 s > unpacking source archive /nix/store/x5ki1nqbh2bss8hvwxh2yjacg13v0rmb-source
  970. 65.10 s > source root is source
  971. 65.10 s > Running phase: patchPhase
  972. 65.10 s > Executing npmConfigHook
  973. 65.10 s > Configuring npm
  974. 65.10 s > Validating consistency between /build/source/package-lock.json and /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps/package-lock.json
  975. 65.10 s > Setting npm_config_cache to /nix/store/s010d1fi38rq6sq05s7jvvqri9dwn7ci-little-moments-e2e-0.0.1-npm-deps
  976. 65.10 s > Installing dependencies
  977. 65.10 s > npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
  978. 65.10 s > npm warn Unknown env config "platform". This will stop working in the next major version of npm.
  979. 65.10 s > npm warn Unknown env config "arch". This will stop working in the next major version of npm.
  980. 65.10 s >
  981. 65.10 s > added 100 packages, and audited 101 packages in 664ms
  982. 65.10 s >
  983. 65.10 s > 25 packages are looking for funding
  984. 65.10 s > run `npm fund` for details
  985. 65.10 s >
  986. 65.10 s > found 0 vulnerabilities
  987. 65.10 s > patching script interpreter paths in node_modules
  988. 65.10 s > node_modules/prettier/bin/prettier.cjs: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  989. 65.10 s > node_modules/eslint/bin/eslint.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  990. 65.10 s > node_modules/@playwright/test/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  991. 65.10 s > node_modules/js-yaml/bin/js-yaml.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  992. 65.10 s > node_modules/acorn/bin/acorn: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  993. 65.10 s > node_modules/playwright-core/bin/reinstall_msedge_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  994. 65.10 s > node_modules/playwright-core/bin/reinstall_chrome_stable_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  995. 65.10 s > node_modules/playwright-core/bin/reinstall_msedge_dev_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  996. 65.10 s > node_modules/playwright-core/bin/reinstall_chrome_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  997. 65.10 s > node_modules/playwright-core/bin/reinstall_chrome_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  998. 65.10 s > node_modules/playwright-core/bin/reinstall_msedge_beta_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  999. 65.10 s > node_modules/playwright-core/bin/reinstall_msedge_beta_linux.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  1000. 65.10 s > node_modules/playwright-core/bin/reinstall_msedge_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  1001. 65.10 s > node_modules/playwright-core/bin/reinstall_chrome_stable_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  1002. 65.10 s > node_modules/playwright-core/bin/reinstall_msedge_dev_mac.sh: interpreter directive changed from "#!/usr/bin/env bash" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/bash"
  1003. 65.10 s > node_modules/playwright-core/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  1004. 65.10 s > node_modules/playwright-core/lib/utilsBundleImpl/xdg-open: interpreter directive changed from "#!/bin/sh" to "/nix/store/rlq03x4cwf8zn73hxaxnx0zn5q9kifls-bash-5.3p3/bin/sh"
  1005. 65.10 s > node_modules/ulid/bin/cli.js: interpreter directive changed from "#! /usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  1006. 65.10 s > node_modules/which/bin/node-which: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  1007. 65.10 s > node_modules/playwright/cli.js: interpreter directive changed from "#!/usr/bin/env node" to "/nix/store/lgggxsrdzisnbligi7irlh4qmqczs0xk-nodejs-24.11.1/bin/node"
  1008. 65.10 s > npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
  1009. 65.10 s > npm warn Unknown env config "platform". This will stop working in the next major version of npm.
  1010. 65.10 s > npm warn Unknown env config "arch". This will stop working in the next major version of npm.
  1011. 65.10 s > rebuilt dependencies successfully
  1012. 65.10 s > patching script interpreter paths in node_modules
  1013. 65.10 s > Finished npmConfigHook
  1014. 65.10 s > Running phase: updateAutotoolsGnuConfigScriptsPhase
  1015. 65.10 s > Running phase: configurePhase
  1016. 65.10 s > no configure script, doing nothing
  1017. 65.10 s > Running phase: buildPhase
  1018. 65.10 s > no Makefile or custom buildPhase, doing nothing
  1019. 65.10 s > Running phase: checkPhase
  1020. 65.10 s > 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 4ec7957e-6ed0-49f8-9a9a-87d4c735c511-full.avif
  1021. 65.10 s > 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:121: copied 4ec7957e-6ed0-49f8-9a9a-87d4c735c511-250px.jpg
  1022. 65.10 s > 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:121: copied 4ec7957e-6ed0-49f8-9a9a-87d4c735c511-150px.jpg
  1023. 65.10 s > 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied da1a6f06-c8d8-4442-a9d8-98aff80456cb-full.mp4
  1024. 65.10 s > 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied da1a6f06-c8d8-4442-a9d8-98aff80456cb-thumb-250px.jpg
  1025. 65.10 s > 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied da1a6f06-c8d8-4442-a9d8-98aff80456cb-thumb-150px.jpg
  1026. 65.10 s > 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied bc8b5296-ce5c-42e9-a886-0eaf2e30ee1c-full.mp4
  1027. 65.10 s > 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied bc8b5296-ce5c-42e9-a886-0eaf2e30ee1c-thumb-250px.jpg
  1028. 65.10 s > 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:128: copied bc8b5296-ce5c-42e9-a886-0eaf2e30ee1c-thumb-150px.jpg
  1029. 65.10 s > 2026/05/30 20:55:27 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 28f98c2a-a97e-4a4a-9337-ef7e97777eed-full.jpg
  1030. 65.10 s > 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:108: copied 28f98c2a-a97e-4a4a-9337-ef7e97777eed-850px.jpg
  1031. 65.10 s > 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 28f98c2a-a97e-4a4a-9337-ef7e97777eed-250px.jpg
  1032. 65.10 s > 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 28f98c2a-a97e-4a4a-9337-ef7e97777eed-150px.jpg
  1033. 65.10 s > 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:100: copied 084b64d7-8cb8-40be-a1df-1ce94afebc48-full.jpg
  1034. 65.10 s > 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:108: copied 084b64d7-8cb8-40be-a1df-1ce94afebc48-850px.jpg
  1035. 65.10 s > 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 084b64d7-8cb8-40be-a1df-1ce94afebc48-250px.jpg
  1036. 65.10 s > 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:114: copied 084b64d7-8cb8-40be-a1df-1ce94afebc48-150px.jpg
  1037. 65.10 s > 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/store/sqlite/sqlite.go:18: reading DB from /build/source/test-imported-media/test-store.db
  1038. 65.10 s > 2026/05/30 20:55:28 codeberg.org/mtlynch/little-moments/cmd/import-from-tinybeans/main.go:140: wrote /build/source/test-imported-media/test-store.db
  1039. 65.10 s > npm warn Unknown env config "nodedir". This will stop working in the next major version of npm.
  1040. 65.10 s > npm warn Unknown env config "platform". This will stop working in the next major version of npm.
  1041. 65.10 s > npm warn Unknown env config "arch". This will stop working in the next major version of npm.
  1042. 65.10 s >
  1043. 65.10 s > Running 15 tests using 8 workers
  1044. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1045. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1046. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1047. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1048. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1049. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1050. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1051. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1052. 65.10 s > ·TTTTTTTTSkipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1053. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1054. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1055. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1056. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1057. 65.10 s > Skipping host requirements validation logic because `PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS` env variable is set.
  1058. 65.10 s > TTTTTT
  1059. 65.10 s >
  1060. 65.10 s > 1) [chromium] › e2e/auth.spec.ts:13:7 › Authentication › logs in and shows the browse page ───────
  1061. 65.10 s >
  1062. 65.10 s > Test timeout of 5000ms exceeded.
  1063. 65.10 s >
  1064. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1065. 65.10 s >
  1066. 65.10 s > Expected pattern: /\/login\/confirm/
  1067. 65.10 s > Received string: "http://127.0.0.1:39885/login"
  1068. 65.10 s >
  1069. 65.10 s > Call log:
  1070. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1071. 65.10 s > 8 × unexpected value "http://127.0.0.1:39885/login"
  1072. 65.10 s >
  1073. 65.10 s >
  1074. 65.10 s > at fixtures.ts:200
  1075. 65.10 s >
  1076. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1077. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1078. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1079. 65.10 s > | ^
  1080. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1081. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1082. 65.10 s > 203 | }
  1083. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1084. 65.10 s > at /build/source/e2e/auth.spec.ts:14:5
  1085. 65.10 s >
  1086. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1087. 65.10 s > e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/video.webm
  1088. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1089. 65.10 s >
  1090. 65.10 s > Error Context: e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/error-context.md
  1091. 65.10 s >
  1092. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1093. 65.10 s > e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/trace.zip
  1094. 65.10 s > Usage:
  1095. 65.10 s >
  1096. 65.10 s > npx playwright show-trace e2e-results/auth-Authentication-logs-in-and-shows-the-browse-page-chromium/trace.zip
  1097. 65.10 s >
  1098. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1099. 65.10 s >
  1100. 65.10 s > 2) [chromium] › e2e/auth.spec.ts:20:7 › Authentication › redirects to stored next path after login
  1101. 65.10 s >
  1102. 65.10 s > Test timeout of 5000ms exceeded.
  1103. 65.10 s >
  1104. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1105. 65.10 s >
  1106. 65.10 s > Expected pattern: /\/login\/confirm\?token=[^&]+$/
  1107. 65.10 s > Received string: "http://127.0.0.1:46755/login"
  1108. 65.10 s >
  1109. 65.10 s > Call log:
  1110. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1111. 65.10 s > 7 × unexpected value "http://127.0.0.1:46755/login"
  1112. 65.10 s >
  1113. 65.10 s >
  1114. 65.10 s > 27 | await page.getByLabel("Email address").fill("homer@example.com");
  1115. 65.10 s > 28 | await page.getByRole("button", { name: "Log in" }).click();
  1116. 65.10 s > > 29 | await expect(page).toHaveURL(/\/login\/confirm\?token=[^&]+$/);
  1117. 65.10 s > | ^
  1118. 65.10 s > 30 |
  1119. 65.10 s > 31 | await page.getByRole("button", { name: "Log in" }).click();
  1120. 65.10 s > 32 |
  1121. 65.10 s > at /build/source/e2e/auth.spec.ts:29:24
  1122. 65.10 s >
  1123. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1124. 65.10 s > e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/video.webm
  1125. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1126. 65.10 s >
  1127. 65.10 s > Error Context: e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/error-context.md
  1128. 65.10 s >
  1129. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1130. 65.10 s > e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/trace.zip
  1131. 65.10 s > Usage:
  1132. 65.10 s >
  1133. 65.10 s > npx playwright show-trace e2e-results/auth-Authentication-redire-2d7b2-tored-next-path-after-login-chromium/trace.zip
  1134. 65.10 s >
  1135. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1136. 65.10 s >
  1137. 65.10 s > 3) [chromium] › e2e/auth.spec.ts:39:7 › Authentication › logs out and redirects to the login page
  1138. 65.10 s >
  1139. 65.10 s > Test timeout of 5000ms exceeded.
  1140. 65.10 s >
  1141. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1142. 65.10 s >
  1143. 65.10 s > Expected pattern: /\/login\/confirm/
  1144. 65.10 s > Received string: "http://127.0.0.1:35981/login"
  1145. 65.10 s >
  1146. 65.10 s > Call log:
  1147. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1148. 65.10 s > 8 × unexpected value "http://127.0.0.1:35981/login"
  1149. 65.10 s >
  1150. 65.10 s >
  1151. 65.10 s > at fixtures.ts:200
  1152. 65.10 s >
  1153. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1154. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1155. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1156. 65.10 s > | ^
  1157. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1158. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1159. 65.10 s > 203 | }
  1160. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1161. 65.10 s > at /build/source/e2e/auth.spec.ts:40:5
  1162. 65.10 s >
  1163. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1164. 65.10 s > e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/video.webm
  1165. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1166. 65.10 s >
  1167. 65.10 s > Error Context: e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/error-context.md
  1168. 65.10 s >
  1169. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1170. 65.10 s > e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/trace.zip
  1171. 65.10 s > Usage:
  1172. 65.10 s >
  1173. 65.10 s > npx playwright show-trace e2e-results/auth-Authentication-logs-out-and-redirects-to-the-login-page-chromium/trace.zip
  1174. 65.10 s >
  1175. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1176. 65.10 s >
  1177. 65.10 s > 4) [chromium] › e2e/auth.spec.ts:47:7 › Authentication › cannot access protected routes after logging out
  1178. 65.10 s >
  1179. 65.10 s > Test timeout of 5000ms exceeded.
  1180. 65.10 s >
  1181. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1182. 65.10 s >
  1183. 65.10 s > Expected pattern: /\/login\/confirm/
  1184. 65.10 s > Received string: "http://127.0.0.1:35715/login"
  1185. 65.10 s >
  1186. 65.10 s > Call log:
  1187. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1188. 65.10 s > 7 × unexpected value "http://127.0.0.1:35715/login"
  1189. 65.10 s >
  1190. 65.10 s >
  1191. 65.10 s > at fixtures.ts:200
  1192. 65.10 s >
  1193. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1194. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1195. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1196. 65.10 s > | ^
  1197. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1198. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1199. 65.10 s > 203 | }
  1200. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1201. 65.10 s > at /build/source/e2e/auth.spec.ts:48:5
  1202. 65.10 s >
  1203. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1204. 65.10 s > e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/video.webm
  1205. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1206. 65.10 s >
  1207. 65.10 s > Error Context: e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/error-context.md
  1208. 65.10 s >
  1209. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1210. 65.10 s > e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/trace.zip
  1211. 65.10 s > Usage:
  1212. 65.10 s >
  1213. 65.10 s > npx playwright show-trace e2e-results/auth-Authentication-cannot-a27fd-ed-routes-after-logging-out-chromium/trace.zip
  1214. 65.10 s >
  1215. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1216. 65.10 s >
  1217. 65.10 s > 5) [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page
  1218. 65.10 s >
  1219. 65.10 s > Test timeout of 5000ms exceeded while running "beforeEach" hook.
  1220. 65.10 s >
  1221. 65.10 s > 62 | test.describe.configure({ mode: "parallel" });
  1222. 65.10 s > 63 |
  1223. 65.10 s > > 64 | test.beforeEach(async ({ page }) => {
  1224. 65.10 s > | ^
  1225. 65.10 s > 65 | await logIn(page);
  1226. 65.10 s > 66 | });
  1227. 65.10 s > 67 |
  1228. 65.10 s > at /build/source/e2e/browse.spec.ts:64:8
  1229. 65.10 s >
  1230. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1231. 65.10 s >
  1232. 65.10 s > Expected pattern: /\/login\/confirm/
  1233. 65.10 s > Received string: "http://127.0.0.1:33065/login"
  1234. 65.10 s >
  1235. 65.10 s > Call log:
  1236. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1237. 65.10 s > 7 × unexpected value "http://127.0.0.1:33065/login"
  1238. 65.10 s >
  1239. 65.10 s >
  1240. 65.10 s > at fixtures.ts:200
  1241. 65.10 s >
  1242. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1243. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1244. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1245. 65.10 s > | ^
  1246. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1247. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1248. 65.10 s > 203 | }
  1249. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1250. 65.10 s > at /build/source/e2e/browse.spec.ts:65:5
  1251. 65.10 s >
  1252. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1253. 65.10 s > e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/video.webm
  1254. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1255. 65.10 s >
  1256. 65.10 s > Error Context: e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/error-context.md
  1257. 65.10 s >
  1258. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1259. 65.10 s > e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip
  1260. 65.10 s > Usage:
  1261. 65.10 s >
  1262. 65.10 s > npx playwright show-trace e2e-results/browse-Browse-media-shows--02a6e--entries-on-the-browse-page-chromium/trace.zip
  1263. 65.10 s >
  1264. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1265. 65.10 s >
  1266. 65.10 s > 6) [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest
  1267. 65.10 s >
  1268. 65.10 s > Test timeout of 5000ms exceeded while running "beforeEach" hook.
  1269. 65.10 s >
  1270. 65.10 s > 62 | test.describe.configure({ mode: "parallel" });
  1271. 65.10 s > 63 |
  1272. 65.10 s > > 64 | test.beforeEach(async ({ page }) => {
  1273. 65.10 s > | ^
  1274. 65.10 s > 65 | await logIn(page);
  1275. 65.10 s > 66 | });
  1276. 65.10 s > 67 |
  1277. 65.10 s > at /build/source/e2e/browse.spec.ts:64:8
  1278. 65.10 s >
  1279. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1280. 65.10 s >
  1281. 65.10 s > Expected pattern: /\/login\/confirm/
  1282. 65.10 s > Received string: "http://127.0.0.1:41823/login"
  1283. 65.10 s >
  1284. 65.10 s > Call log:
  1285. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1286. 65.10 s > 7 × unexpected value "http://127.0.0.1:41823/login"
  1287. 65.10 s >
  1288. 65.10 s >
  1289. 65.10 s > at fixtures.ts:200
  1290. 65.10 s >
  1291. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1292. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1293. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1294. 65.10 s > | ^
  1295. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1296. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1297. 65.10 s > 203 | }
  1298. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1299. 65.10 s > at /build/source/e2e/browse.spec.ts:65:5
  1300. 65.10 s >
  1301. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1302. 65.10 s > e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/video.webm
  1303. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1304. 65.10 s >
  1305. 65.10 s > Error Context: e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/error-context.md
  1306. 65.10 s >
  1307. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1308. 65.10 s > e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip
  1309. 65.10 s > Usage:
  1310. 65.10 s >
  1311. 65.10 s > npx playwright show-trace e2e-results/browse-Browse-media-shows--19f8f-nails-from-newest-to-oldest-chromium/trace.zip
  1312. 65.10 s >
  1313. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1314. 65.10 s >
  1315. 65.10 s > 7) [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only
  1316. 65.10 s >
  1317. 65.10 s > Test timeout of 5000ms exceeded while running "beforeEach" hook.
  1318. 65.10 s >
  1319. 65.10 s > 62 | test.describe.configure({ mode: "parallel" });
  1320. 65.10 s > 63 |
  1321. 65.10 s > > 64 | test.beforeEach(async ({ page }) => {
  1322. 65.10 s > | ^
  1323. 65.10 s > 65 | await logIn(page);
  1324. 65.10 s > 66 | });
  1325. 65.10 s > 67 |
  1326. 65.10 s > at /build/source/e2e/browse.spec.ts:64:8
  1327. 65.10 s >
  1328. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1329. 65.10 s >
  1330. 65.10 s > Expected pattern: /\/login\/confirm/
  1331. 65.10 s > Received string: "http://127.0.0.1:37117/login"
  1332. 65.10 s >
  1333. 65.10 s > Call log:
  1334. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1335. 65.10 s > 7 × unexpected value "http://127.0.0.1:37117/login"
  1336. 65.10 s >
  1337. 65.10 s >
  1338. 65.10 s > at fixtures.ts:200
  1339. 65.10 s >
  1340. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1341. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1342. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1343. 65.10 s > | ^
  1344. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1345. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1346. 65.10 s > 203 | }
  1347. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1348. 65.10 s > at /build/source/e2e/browse.spec.ts:65:5
  1349. 65.10 s >
  1350. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1351. 65.10 s > e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/video.webm
  1352. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1353. 65.10 s >
  1354. 65.10 s > Error Context: e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/error-context.md
  1355. 65.10 s >
  1356. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1357. 65.10 s > e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip
  1358. 65.10 s > Usage:
  1359. 65.10 s >
  1360. 65.10 s > npx playwright show-trace e2e-results/browse-Browse-media-shows--c7537-or-on-video-thumbnails-only-chromium/trace.zip
  1361. 65.10 s >
  1362. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1363. 65.10 s >
  1364. 65.10 s > 8) [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details
  1365. 65.10 s >
  1366. 65.10 s > Test timeout of 5000ms exceeded while running "beforeEach" hook.
  1367. 65.10 s >
  1368. 65.10 s > 62 | test.describe.configure({ mode: "parallel" });
  1369. 65.10 s > 63 |
  1370. 65.10 s > > 64 | test.beforeEach(async ({ page }) => {
  1371. 65.10 s > | ^
  1372. 65.10 s > 65 | await logIn(page);
  1373. 65.10 s > 66 | });
  1374. 65.10 s > 67 |
  1375. 65.10 s > at /build/source/e2e/browse.spec.ts:64:8
  1376. 65.10 s >
  1377. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1378. 65.10 s >
  1379. 65.10 s > Expected pattern: /\/login\/confirm/
  1380. 65.10 s > Received string: "http://127.0.0.1:33535/login"
  1381. 65.10 s >
  1382. 65.10 s > Call log:
  1383. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1384. 65.10 s > 8 × unexpected value "http://127.0.0.1:33535/login"
  1385. 65.10 s >
  1386. 65.10 s >
  1387. 65.10 s > at fixtures.ts:200
  1388. 65.10 s >
  1389. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1390. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1391. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1392. 65.10 s > | ^
  1393. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1394. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1395. 65.10 s > 203 | }
  1396. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1397. 65.10 s > at /build/source/e2e/browse.spec.ts:65:5
  1398. 65.10 s >
  1399. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1400. 65.10 s > e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/video.webm
  1401. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1402. 65.10 s >
  1403. 65.10 s > Error Context: e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/error-context.md
  1404. 65.10 s >
  1405. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1406. 65.10 s > e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip
  1407. 65.10 s > Usage:
  1408. 65.10 s >
  1409. 65.10 s > npx playwright show-trace e2e-results/browse-Browse-media-opens--542e7--page-and-shows-its-details-chromium/trace.zip
  1410. 65.10 s >
  1411. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1412. 65.10 s >
  1413. 65.10 s > 9) [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links
  1414. 65.10 s >
  1415. 65.10 s > Test timeout of 5000ms exceeded while running "beforeEach" hook.
  1416. 65.10 s >
  1417. 65.10 s > 62 | test.describe.configure({ mode: "parallel" });
  1418. 65.10 s > 63 |
  1419. 65.10 s > > 64 | test.beforeEach(async ({ page }) => {
  1420. 65.10 s > | ^
  1421. 65.10 s > 65 | await logIn(page);
  1422. 65.10 s > 66 | });
  1423. 65.10 s > 67 |
  1424. 65.10 s > at /build/source/e2e/browse.spec.ts:64:8
  1425. 65.10 s >
  1426. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1427. 65.10 s >
  1428. 65.10 s > Expected pattern: /\/login\/confirm/
  1429. 65.10 s > Received string: "http://127.0.0.1:43309/login"
  1430. 65.10 s >
  1431. 65.10 s > Call log:
  1432. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1433. 65.10 s > 8 × unexpected value "http://127.0.0.1:43309/login"
  1434. 65.10 s >
  1435. 65.10 s >
  1436. 65.10 s > at fixtures.ts:200
  1437. 65.10 s >
  1438. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1439. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1440. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1441. 65.10 s > | ^
  1442. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1443. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1444. 65.10 s > 203 | }
  1445. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1446. 65.10 s > at /build/source/e2e/browse.spec.ts:65:5
  1447. 65.10 s >
  1448. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1449. 65.10 s > e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/video.webm
  1450. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1451. 65.10 s >
  1452. 65.10 s > Error Context: e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/error-context.md
  1453. 65.10 s >
  1454. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1455. 65.10 s > e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip
  1456. 65.10 s > Usage:
  1457. 65.10 s >
  1458. 65.10 s > npx playwright show-trace e2e-results/browse-Browse-media-moves--c86ee-ith-Previous-and-Next-links-chromium/trace.zip
  1459. 65.10 s >
  1460. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1461. 65.10 s >
  1462. 65.10 s > 10) [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys
  1463. 65.10 s >
  1464. 65.10 s > Test timeout of 5000ms exceeded while running "beforeEach" hook.
  1465. 65.10 s >
  1466. 65.10 s > 62 | test.describe.configure({ mode: "parallel" });
  1467. 65.10 s > 63 |
  1468. 65.10 s > > 64 | test.beforeEach(async ({ page }) => {
  1469. 65.10 s > | ^
  1470. 65.10 s > 65 | await logIn(page);
  1471. 65.10 s > 66 | });
  1472. 65.10 s > 67 |
  1473. 65.10 s > at /build/source/e2e/browse.spec.ts:64:8
  1474. 65.10 s >
  1475. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1476. 65.10 s >
  1477. 65.10 s > Expected pattern: /\/login\/confirm/
  1478. 65.10 s > Received string: "http://127.0.0.1:35333/login"
  1479. 65.10 s >
  1480. 65.10 s > Call log:
  1481. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1482. 65.10 s > 8 × unexpected value "http://127.0.0.1:35333/login"
  1483. 65.10 s >
  1484. 65.10 s >
  1485. 65.10 s > at fixtures.ts:200
  1486. 65.10 s >
  1487. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1488. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1489. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1490. 65.10 s > | ^
  1491. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1492. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1493. 65.10 s > 203 | }
  1494. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1495. 65.10 s > at /build/source/e2e/browse.spec.ts:65:5
  1496. 65.10 s >
  1497. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1498. 65.10 s > e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/video.webm
  1499. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1500. 65.10 s >
  1501. 65.10 s > Error Context: e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/error-context.md
  1502. 65.10 s >
  1503. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1504. 65.10 s > e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip
  1505. 65.10 s > Usage:
  1506. 65.10 s >
  1507. 65.10 s > npx playwright show-trace e2e-results/browse-Browse-media-moves--d7942-h-left-and-right-arrow-keys-chromium/trace.zip
  1508. 65.10 s >
  1509. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1510. 65.10 s >
  1511. 65.10 s > 11) [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile
  1512. 65.10 s >
  1513. 65.10 s > Test timeout of 5000ms exceeded while running "beforeEach" hook.
  1514. 65.10 s >
  1515. 65.10 s > 62 | test.describe.configure({ mode: "parallel" });
  1516. 65.10 s > 63 |
  1517. 65.10 s > > 64 | test.beforeEach(async ({ page }) => {
  1518. 65.10 s > | ^
  1519. 65.10 s > 65 | await logIn(page);
  1520. 65.10 s > 66 | });
  1521. 65.10 s > 67 |
  1522. 65.10 s > at /build/source/e2e/browse.spec.ts:64:8
  1523. 65.10 s >
  1524. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1525. 65.10 s >
  1526. 65.10 s > Expected pattern: /\/login\/confirm/
  1527. 65.10 s > Received string: "http://127.0.0.1:35747/login"
  1528. 65.10 s >
  1529. 65.10 s > Call log:
  1530. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1531. 65.10 s > 8 × unexpected value "http://127.0.0.1:35747/login"
  1532. 65.10 s >
  1533. 65.10 s >
  1534. 65.10 s > at fixtures.ts:200
  1535. 65.10 s >
  1536. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1537. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1538. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1539. 65.10 s > | ^
  1540. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1541. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1542. 65.10 s > 203 | }
  1543. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1544. 65.10 s > at /build/source/e2e/browse.spec.ts:65:5
  1545. 65.10 s >
  1546. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1547. 65.10 s > e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/video.webm
  1548. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1549. 65.10 s >
  1550. 65.10 s > Error Context: e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/error-context.md
  1551. 65.10 s >
  1552. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1553. 65.10 s > e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip
  1554. 65.10 s > Usage:
  1555. 65.10 s >
  1556. 65.10 s > npx playwright show-trace e2e-results/browse-Browse-media-moves--23055-th-swipe-gestures-on-mobile-chromium/trace.zip
  1557. 65.10 s >
  1558. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1559. 65.10 s >
  1560. 65.10 s > 12) [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list
  1561. 65.10 s >
  1562. 65.10 s > Test timeout of 5000ms exceeded while running "beforeEach" hook.
  1563. 65.10 s >
  1564. 65.10 s > 62 | test.describe.configure({ mode: "parallel" });
  1565. 65.10 s > 63 |
  1566. 65.10 s > > 64 | test.beforeEach(async ({ page }) => {
  1567. 65.10 s > | ^
  1568. 65.10 s > 65 | await logIn(page);
  1569. 65.10 s > 66 | });
  1570. 65.10 s > 67 |
  1571. 65.10 s > at /build/source/e2e/browse.spec.ts:64:8
  1572. 65.10 s >
  1573. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1574. 65.10 s >
  1575. 65.10 s > Expected pattern: /\/login\/confirm/
  1576. 65.10 s > Received string: "http://127.0.0.1:37135/login"
  1577. 65.10 s >
  1578. 65.10 s > Call log:
  1579. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1580. 65.10 s > 8 × unexpected value "http://127.0.0.1:37135/login"
  1581. 65.10 s >
  1582. 65.10 s >
  1583. 65.10 s > at fixtures.ts:200
  1584. 65.10 s >
  1585. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1586. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1587. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1588. 65.10 s > | ^
  1589. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1590. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1591. 65.10 s > 203 | }
  1592. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1593. 65.10 s > at /build/source/e2e/browse.spec.ts:65:5
  1594. 65.10 s >
  1595. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1596. 65.10 s > e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/video.webm
  1597. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1598. 65.10 s >
  1599. 65.10 s > Error Context: e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/error-context.md
  1600. 65.10 s >
  1601. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1602. 65.10 s > e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip
  1603. 65.10 s > Usage:
  1604. 65.10 s >
  1605. 65.10 s > npx playwright show-trace e2e-results/browse-Browse-media-shows--fa2ac-sition-within-the-full-list-chromium/trace.zip
  1606. 65.10 s >
  1607. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1608. 65.10 s >
  1609. 65.10 s > 13) [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media
  1610. 65.10 s >
  1611. 65.10 s > Test timeout of 5000ms exceeded while running "beforeEach" hook.
  1612. 65.10 s >
  1613. 65.10 s > 62 | test.describe.configure({ mode: "parallel" });
  1614. 65.10 s > 63 |
  1615. 65.10 s > > 64 | test.beforeEach(async ({ page }) => {
  1616. 65.10 s > | ^
  1617. 65.10 s > 65 | await logIn(page);
  1618. 65.10 s > 66 | });
  1619. 65.10 s > 67 |
  1620. 65.10 s > at /build/source/e2e/browse.spec.ts:64:8
  1621. 65.10 s >
  1622. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1623. 65.10 s >
  1624. 65.10 s > Expected pattern: /\/login\/confirm/
  1625. 65.10 s > Received string: "http://127.0.0.1:37193/login"
  1626. 65.10 s >
  1627. 65.10 s > Call log:
  1628. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1629. 65.10 s > 8 × unexpected value "http://127.0.0.1:37193/login"
  1630. 65.10 s >
  1631. 65.10 s >
  1632. 65.10 s > at fixtures.ts:200
  1633. 65.10 s >
  1634. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1635. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1636. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1637. 65.10 s > | ^
  1638. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1639. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1640. 65.10 s > 203 | }
  1641. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1642. 65.10 s > at /build/source/e2e/browse.spec.ts:65:5
  1643. 65.10 s >
  1644. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1645. 65.10 s > e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/video.webm
  1646. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1647. 65.10 s >
  1648. 65.10 s > Error Context: e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/error-context.md
  1649. 65.10 s >
  1650. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1651. 65.10 s > e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip
  1652. 65.10 s > Usage:
  1653. 65.10 s >
  1654. 65.10 s > npx playwright show-trace e2e-results/browse-Browse-media-opens--bb8a3--and-shows-the-oldest-media-chromium/trace.zip
  1655. 65.10 s >
  1656. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1657. 65.10 s >
  1658. 65.10 s > 14) [chromium] › e2e/media.spec.ts:10:7 › View media › shows reaction with a tooltip of the exact date
  1659. 65.10 s >
  1660. 65.10 s > Test timeout of 5000ms exceeded while running "beforeEach" hook.
  1661. 65.10 s >
  1662. 65.10 s > 4 | test.describe.configure({ mode: "parallel" });
  1663. 65.10 s > 5 |
  1664. 65.10 s > > 6 | test.beforeEach(async ({ page }) => {
  1665. 65.10 s > | ^
  1666. 65.10 s > 7 | await logIn(page);
  1667. 65.10 s > 8 | });
  1668. 65.10 s > 9 |
  1669. 65.10 s > at /build/source/e2e/media.spec.ts:6:8
  1670. 65.10 s >
  1671. 65.10 s > Error: expect(page).toHaveURL(expected) failed
  1672. 65.10 s >
  1673. 65.10 s > Expected pattern: /\/login\/confirm/
  1674. 65.10 s > Received string: "http://127.0.0.1:39043/login"
  1675. 65.10 s >
  1676. 65.10 s > Call log:
  1677. 65.10 s > - Expect "toHaveURL" with timeout 5000ms
  1678. 65.10 s > 8 × unexpected value "http://127.0.0.1:39043/login"
  1679. 65.10 s >
  1680. 65.10 s >
  1681. 65.10 s > at fixtures.ts:200
  1682. 65.10 s >
  1683. 65.10 s > 198 | await page.getByLabel("Email address").fill("homer@example.com");
  1684. 65.10 s > 199 | await page.getByRole("button", { name: "Log in" }).click();
  1685. 65.10 s > > 200 | await expect(page).toHaveURL(/\/login\/confirm/);
  1686. 65.10 s > | ^
  1687. 65.10 s > 201 | await page.getByRole("button", { name: "Log in" }).click();
  1688. 65.10 s > 202 | await expect(page).toHaveURL("/");
  1689. 65.10 s > 203 | }
  1690. 65.10 s > at logIn (/build/source/e2e/fixtures.ts:200:22)
  1691. 65.10 s > at /build/source/e2e/media.spec.ts:7:5
  1692. 65.10 s >
  1693. 65.10 s > attachment #1: video (video/webm) ──────────────────────────────────────────────────────────────
  1694. 65.10 s > e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/video.webm
  1695. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1696. 65.10 s >
  1697. 65.10 s > Error Context: e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/error-context.md
  1698. 65.10 s >
  1699. 65.10 s > attachment #3: trace (application/zip) ─────────────────────────────────────────────────────────
  1700. 65.10 s > e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip
  1701. 65.10 s > Usage:
  1702. 65.10 s >
  1703. 65.10 s > npx playwright show-trace e2e-results/media-View-media-shows-rea-844de-a-tooltip-of-the-exact-date-chromium/trace.zip
  1704. 65.10 s >
  1705. 65.10 s > ────────────────────────────────────────────────────────────────────────────────────────────────
  1706. 65.10 s >
  1707. 65.10 s > 14 failed
  1708. 65.10 s > [chromium] › e2e/auth.spec.ts:13:7 › Authentication › logs in and shows the browse page ────────
  1709. 65.10 s > [chromium] › e2e/auth.spec.ts:20:7 › Authentication › redirects to stored next path after login
  1710. 65.10 s > [chromium] › e2e/auth.spec.ts:39:7 › Authentication › logs out and redirects to the login page ─
  1711. 65.10 s > [chromium] › e2e/auth.spec.ts:47:7 › Authentication › cannot access protected routes after logging out
  1712. 65.10 s > [chromium] › e2e/browse.spec.ts:68:7 › Browse media › shows the imported media entries on the browse page
  1713. 65.10 s > [chromium] › e2e/browse.spec.ts:81:7 › Browse media › shows media thumbnails from newest to oldest
  1714. 65.10 s > [chromium] › e2e/browse.spec.ts:92:7 › Browse media › shows a video indicator on video thumbnails only
  1715. 65.10 s > [chromium] › e2e/browse.spec.ts:113:7 › Browse media › opens the first entry from the browse page and shows its details
  1716. 65.10 s > [chromium] › e2e/browse.spec.ts:135:7 › Browse media › moves through adjacent entries with Previous and Next links
  1717. 65.10 s > [chromium] › e2e/browse.spec.ts:166:7 › Browse media › moves through adjacent entries with left and right arrow keys
  1718. 65.10 s > [chromium] › e2e/browse.spec.ts:187:7 › Browse media › moves through adjacent entries with swipe gestures on mobile
  1719. 65.10 s > [chromium] › e2e/browse.spec.ts:215:7 › Browse media › shows the current media position within the full list
  1720. 65.10 s > [chromium] › e2e/browse.spec.ts:232:7 › Browse media › opens the last entry from the browse page and shows the oldest media
  1721. 65.10 s > [chromium] › e2e/media.spec.ts:10:7 › View media › shows reaction with a tooltip of the exact date
  1722. 65.10 s > 1 passed (14.6s)
  1723. 65.10 s For full logs, run:
  1724. 65.10 s nix log /nix/store/cs2bbf0n1628bkg8xxkxjg22xwm78vh3-little-moments-e2e-0.0.1.drv