(for PR #29563)
2026-03-20 10:16.21: New job: test server-reason-react.0.4.1 with ppxlib.0.38.0, using opam dev
from https://github.com/ocaml/opam-repository.git#refs/pull/29563/head (6185871ccd68c72dd8f6902c863f0554508a6764)
on debian-13-ocaml-5.4/amd64
To reproduce locally:
cd $(mktemp -d)
git clone --recursive "https://github.com/ocaml/opam-repository.git" && cd "opam-repository" && git fetch origin "refs/pull/29563/head" && git reset --hard 6185871c
git fetch origin master
git merge --no-edit 9f189ca4f94fbb5f0045820bf3c4ffafb21145ef
cat > ../Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam:debian-13-ocaml-5.4@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6
USER 1000:1000
WORKDIR /home/opam
RUN sudo ln -f /usr/bin/opam-dev /usr/bin/opam
RUN opam init --reinit -ni
RUN opam option solver=builtin-0install && opam config report
ENV OPAMDOWNLOADJOBS="1"
ENV OPAMERRLOGLEN="0"
ENV OPAMPRECISETRACKING="1"
ENV CI="true"
ENV OPAM_REPO_CI="true"
RUN rm -rf opam-repository/
COPY --chown=1000:1000 . opam-repository/
RUN opam repository set-url --strict default opam-repository/
RUN opam update --depexts || true
RUN opam pin add -k version -yn ppxlib.0.38.0 0.38.0
RUN opam reinstall ppxlib.0.38.0; \
res=$?; \
test "$res" != 31 && exit "$res"; \
export OPAMCLI=2.0; \
build_dir=$(opam var prefix)/.opam-switch/build; \
failed=$(ls "$build_dir"); \
partial_fails=""; \
for pkg in $failed; do \
if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'ppxlib.0.38.0' && partial_fails="$partial_fails $pkg"; \
done; \
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
exit 1
RUN opam reinstall server-reason-react.0.4.1; \
res=$?; \
test "$res" != 31 && exit "$res"; \
export OPAMCLI=2.0; \
build_dir=$(opam var prefix)/.opam-switch/build; \
failed=$(ls "$build_dir"); \
partial_fails=""; \
for pkg in $failed; do \
if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'server-reason-react.0.4.1' && partial_fails="$partial_fails $pkg"; \
done; \
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
exit 1
RUN (opam reinstall --with-test server-reason-react.0.4.1) || true
RUN opam reinstall --with-test --verbose server-reason-react.0.4.1; \
res=$?; \
test "$res" != 31 && exit "$res"; \
export OPAMCLI=2.0; \
build_dir=$(opam var prefix)/.opam-switch/build; \
failed=$(ls "$build_dir"); \
partial_fails=""; \
for pkg in $failed; do \
if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then \
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field."; \
fi; \
test "$pkg" != 'server-reason-react.0.4.1' && partial_fails="$partial_fails $pkg"; \
done; \
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}"; \
exit 1
END-OF-DOCKERFILE
docker build -f ../Dockerfile .
2026-03-20 10:16.21: Using cache hint "ocaml/opam:debian-13-ocaml-5.4@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6-ppxlib.0.38.0-server-reason-react.0.4.1-6185871ccd68c72dd8f6902c863f0554508a6764"
2026-03-20 10:16.21: Using OBuilder spec:
((from ocaml/opam:debian-13-ocaml-5.4@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6)
(user (uid 1000) (gid 1000))
(workdir /home/opam)
(run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
(run (network host)
(shell "opam init --reinit --config .opamrc-sandbox -ni"))
(run (shell "opam option solver=builtin-0install && opam config report"))
(env OPAMDOWNLOADJOBS 1)
(env OPAMERRLOGLEN 0)
(env OPAMPRECISETRACKING 1)
(env CI true)
(env OPAM_REPO_CI true)
(run (shell "rm -rf opam-repository/"))
(copy (src .) (dst opam-repository/))
(run (shell "opam repository set-url --strict default opam-repository/"))
(run (network host)
(shell "opam update --depexts || true"))
(run (shell "opam pin add -k version -yn ppxlib.0.38.0 0.38.0"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall ppxlib.0.38.0;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'ppxlib.0.38.0' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
(run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall server-reason-react.0.4.1;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'server-reason-react.0.4.1' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
(run (network host)
(shell "(opam reinstall --with-test server-reason-react.0.4.1) || true"))
(run (shell "opam reinstall --with-test --verbose server-reason-react.0.4.1;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'server-reason-react.0.4.1' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
)
2026-03-20 10:16.21: Waiting for resource in pool OCluster
2026-03-20 10:19.10: Waiting for worker…
2026-03-20 10:21.39: Got resource from pool OCluster
Building on phoebe
All commits already cached
Updating files: 86% (16072/18507)
Updating files: 87% (16102/18507)
Updating files: 88% (16287/18507)
Updating files: 89% (16472/18507)
Updating files: 90% (16657/18507)
Updating files: 91% (16842/18507)
Updating files: 92% (17027/18507)
Updating files: 93% (17212/18507)
Updating files: 94% (17397/18507)
Updating files: 95% (17582/18507)
Updating files: 96% (17767/18507)
Updating files: 97% (17952/18507)
Updating files: 98% (18137/18507)
Updating files: 99% (18322/18507)
Updating files: 100% (18507/18507)
Updating files: 100% (18507/18507), done.
HEAD is now at 9f189ca4f9 Merge pull request #29562 from shonfeder/release-dune-3.22.0
Updating 9f189ca4f9..6185871ccd
Fast-forward
packages/ppxlib-tools/ppxlib-tools.0.38.0/opam | 47 +++++++++++++++++++
packages/ppxlib/ppxlib.0.38.0/opam | 64 ++++++++++++++++++++++++++
2 files changed, 111 insertions(+)
create mode 100644 packages/ppxlib-tools/ppxlib-tools.0.38.0/opam
create mode 100644 packages/ppxlib/ppxlib.0.38.0/opam
(from ocaml/opam:debian-13-ocaml-5.4@sha256:bd342cbd7766c453282fdafbc2e565ae3361320ec344722cf4372b782e4a97f6)
2026-03-20 10:21.57 ---> using "41eea30e3f639c18d8cf57c309ec76919ec7b2398036f7e41744cbce59a133d3" from cache
/: (user (uid 1000) (gid 1000))
/: (workdir /home/opam)
/home/opam: (run (shell "sudo ln -f /usr/bin/opam-dev /usr/bin/opam"))
2026-03-20 10:21.57 ---> using "4ad7f430d684c40cedc651267e0edf890c044fe4e624255de377c471b4526bac" from cache
/home/opam: (run (network host)
(shell "opam init --reinit --config .opamrc-sandbox -ni"))
Configuring from /home/opam/.opamrc-sandbox, then /home/opam/.opamrc, and finally from built-in defaults.
Checking for available remotes: rsync and local, git.
- you won't be able to use mercurial repositories unless you install the hg command on your system.
- you won't be able to use darcs repositories unless you install the darcs command on your system.
This version of opam requires an update to the layout of /home/opam/.opam from version 2.0 to version 2.2, which can't be reverted.
You may want to back it up before going further.
Continue? [Y/n] y
Format upgrade done.
<><> Updating repositories ><><><><><><><><><><><><><><><><><><><><><><><><><><>
[default] Initialised
2026-03-20 10:21.57 ---> using "71fa58e52457bf6a7eac317c6a6ef1e2bdf53e533a1e4fd04b90c9349347e038" from cache
/home/opam: (run (shell "opam option solver=builtin-0install && opam config report"))
Set to 'builtin-0install' the field solver in global configuration
# opam config report
# opam-version 2.5.0
# self-upgrade no
# system arch=x86_64 os=linux os-distribution=debian os-version=13
# solver builtin-0install
# install-criteria -changed,-count[avoid-version,solution]
# upgrade-criteria -count[avoid-version,solution]
# jobs 71
# repositories 1 (version-controlled)
# pinned 1 (version)
# current-switch 5.4
# invariant ["ocaml-base-compiler" {= "5.4.0"}]
# compiler-packages ocaml-base-compiler.5.4.0, ocaml-compiler.5.4.0, ocaml-options-vanilla.1
# ocaml:native true
# ocaml:native-tools true
# ocaml:native-dynlink true
# ocaml:stubsdir /home/opam/.opam/5.4/lib/ocaml/stublibs:/home/opam/.opam/5.4/lib/ocaml
# ocaml:preinstalled false
# ocaml:compiler 5.4.0
2026-03-20 10:21.57 ---> using "ed86081cb38ca125a920162bfe6a4bb7b1c27c6973c917551687c83cf44dbfdf" from cache
/home/opam: (env OPAMDOWNLOADJOBS 1)
/home/opam: (env OPAMERRLOGLEN 0)
/home/opam: (env OPAMPRECISETRACKING 1)
/home/opam: (env CI true)
/home/opam: (env OPAM_REPO_CI true)
/home/opam: (run (shell "rm -rf opam-repository/"))
2026-03-20 10:21.57 ---> using "04a48515eea40c32b96da0c71328b4bba0edb66eed83d4f78554b39097cf1f25" from cache
/home/opam: (copy (src .) (dst opam-repository/))
2026-03-20 10:21.59 ---> using "b9bfc01bc62f278eafaeecd4cba248359fbe1b80633e4dfcfdb8b1397899d446" from cache
/home/opam: (run (shell "opam repository set-url --strict default opam-repository/"))
[default] Initialised
2026-03-20 10:21.59 ---> using "c2f12173229ec5c0464d19e3d01c733329e6e921188609c50aa19b931151ea3b" from cache
/home/opam: (run (network host)
(shell "opam update --depexts || true"))
+ /usr/bin/sudo "apt-get" "update"
- Get:1 http://deb.debian.org/debian trixie InRelease [140 kB]
- Get:2 http://deb.debian.org/debian trixie-updates InRelease [47.3 kB]
- Get:3 http://deb.debian.org/debian-security trixie-security InRelease [43.4 kB]
- Get:4 http://deb.debian.org/debian trixie/main amd64 Packages [9671 kB]
- Get:5 http://deb.debian.org/debian-security trixie-security/main amd64 Packages [116 kB]
- Fetched 10.0 MB in 1s (6922 kB/s)
- Reading package lists...
-
2026-03-20 10:21.59 ---> using "1ca9e50729c16835fde90653123b35731a095f0cd27899846d554dded091ece2" from cache
/home/opam: (run (shell "opam pin add -k version -yn ppxlib.0.38.0 0.38.0"))
ppxlib is now pinned to version 0.38.0
2026-03-20 10:21.59 ---> using "a7d81f2b18a884b8610282e584d445f91905f76979db91435db3eff3db093b60" from cache
/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall ppxlib.0.38.0;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'ppxlib.0.38.0' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
ppxlib.0.38.0 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 6 packages
- install dune 3.22.0 [required by ppxlib]
- install ocaml-compiler-libs v0.17.0 [required by ppxlib]
- install ppx_derivers 1.2.1 [required by ppxlib]
- install ppxlib 0.38.0 (pinned)
- install sexplib0 v0.17.0 [required by ppxlib]
- install stdlib-shims 0.3.0 [required by ppxlib]
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved dune.3.22.0 (cached)
-> retrieved ocaml-compiler-libs.v0.17.0 (cached)
-> retrieved ppx_derivers.1.2.1 (cached)
-> retrieved ppxlib.0.38.0 (cached)
-> retrieved sexplib0.v0.17.0 (cached)
-> retrieved stdlib-shims.0.3.0 (cached)
-> installed dune.3.22.0
-> installed ppx_derivers.1.2.1
-> installed stdlib-shims.0.3.0
-> installed sexplib0.v0.17.0
-> installed ocaml-compiler-libs.v0.17.0
-> installed ppxlib.0.38.0
Done.
# To update the current shell environment, run: eval $(opam env)
2026-03-20 10:21.59 ---> using "d3b908d2aea2b5be4153c81511debffe40fb194226c5ab54b10dc20db93d3a50" from cache
/home/opam: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
(network host)
(shell "opam reinstall server-reason-react.0.4.1;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'server-reason-react.0.4.1' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
server-reason-react.0.4.1 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 42 packages
- install angstrom 0.16.1 [required by uri]
- install base-bytes base [required by ocplib-endian]
- install bigstringaf 0.10.0 [required by angstrom]
- install cmdliner 2.1.0 [required by uucp, melange, uutf]
- install conf-gmp 5 [required by zarith]
- install conf-pkg-config 4 [required by zarith]
- install cppo 1.8.0 [required by lwt, melange]
- install csexp 1.5.2 [required by dune-configurator]
- install ctypes 0.24.0 [required by quickjs]
- install dune-build-info 3.22.0 [required by melange]
- install dune-configurator 3.22.0 [required by lwt]
- install fix 20250919 [required by reason]
- install integers 0.7.0 [required by server-reason-react]
- install lwt 6.1.1 [required by server-reason-react]
- install lwt_ppx 6.1.0 [required by server-reason-react]
- install melange 6.0.1-54 [required by server-reason-react]
- install melange-fetch 0.2.0 [required by server-reason-react]
- install melange-json 2.0.0 [required by server-reason-react]
- install melange-json-native 2.0.0 [required by server-reason-react]
- install melange-webapi 0.22.0 [required by server-reason-react]
- install menhir 20260209 [required by melange]
- install menhirCST 20260209 [required by menhir]
- install menhirGLR 20260209 [required by menhir]
- install menhirLib 20260209 [required by menhir]
- install menhirSdk 20260209 [required by menhir]
- install merlin-extend 0.6.2 [required by reason]
- install ocaml-syntax-shims 1.0.0 [required by angstrom]
- install ocamlbuild 0.16.1 [required by uucp, uutf]
- install ocamlfind 1.9.8 [required by uutf, uucp, zarith]
- install ocplib-endian 1.2 [required by lwt]
- install quickjs 0.4.2 [required by server-reason-react]
- install reason 3.17.3 [required by server-reason-react]
- install reason-react 0.17.0 [required by server-reason-react]
- install reason-react-ppx 0.17.0 [required by reason-react]
- install server-reason-react 0.4.1
- install stringext 1.6.0 [required by uri]
- install topkg 1.1.1 [required by uucp, uutf]
- install uri 4.4.0 [required by server-reason-react]
- install uucp 17.0.0 [required by server-reason-react]
- install uutf 1.0.4 [required by server-reason-react]
- install yojson 3.0.0 [required by server-reason-react]
- install zarith 1.14 [required by server-reason-react]
The following system packages will first need to be installed:
libgmp-dev pkg-config
<><> Handling external dependencies <><><><><><><><><><><><><><><><><><><><><><>
opam believes some required external dependencies are missing. opam can:
> 1. Run apt-get to install them (may need root/sudo access)
2. Display the recommended apt-get command and wait while you run it manually (e.g. in another terminal)
3. Continue anyway, and, upon success, permanently register that this external dependency is present, but not detectable
4. Abort the installation
[1/2/3/4] 1
+ /usr/bin/sudo "apt-get" "install" "-qq" "-yy" "libgmp-dev" "pkg-config"
- Selecting previously unselected package libgmpxx4ldbl:amd64.
- (Reading database ...
(Reading database ... 5%
(Reading database ... 10%
(Reading database ... 15%
(Reading database ... 20%
(Reading database ... 25%
(Reading database ... 30%
(Reading database ... 35%
(Reading database ... 40%
(Reading database ... 45%
(Reading database ... 50%
(Reading database ... 55%
(Reading database ... 60%
(Reading database ... 65%
(Reading database ... 70%
(Reading database ... 75%
(Reading database ... 80%
(Reading database ... 85%
(Reading database ... 90%
(Reading database ... 95%
(Reading database ... 100%
(Reading database ... 20654 files and directories currently installed.)
- Preparing to unpack .../0-libgmpxx4ldbl_2%3a6.3.0+dfsg-3_amd64.deb ...
- Unpacking libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ...
- Selecting previously unselected package libgmp-dev:amd64.
- Preparing to unpack .../1-libgmp-dev_2%3a6.3.0+dfsg-3_amd64.deb ...
- Unpacking libgmp-dev:amd64 (2:6.3.0+dfsg-3) ...
- Selecting previously unselected package libpkgconf3:amd64.
- Preparing to unpack .../2-libpkgconf3_1.8.1-4_amd64.deb ...
- Unpacking libpkgconf3:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkgconf-bin.
- Preparing to unpack .../3-pkgconf-bin_1.8.1-4_amd64.deb ...
- Unpacking pkgconf-bin (1.8.1-4) ...
- Selecting previously unselected package pkgconf:amd64.
- Preparing to unpack .../4-pkgconf_1.8.1-4_amd64.deb ...
- Unpacking pkgconf:amd64 (1.8.1-4) ...
- Selecting previously unselected package pkg-config:amd64.
- Preparing to unpack .../5-pkg-config_1.8.1-4_amd64.deb ...
- Unpacking pkg-config:amd64 (1.8.1-4) ...
- Setting up libpkgconf3:amd64 (1.8.1-4) ...
- Setting up libgmpxx4ldbl:amd64 (2:6.3.0+dfsg-3) ...
- Setting up pkgconf-bin (1.8.1-4) ...
- Setting up libgmp-dev:amd64 (2:6.3.0+dfsg-3) ...
- Setting up pkgconf:amd64 (1.8.1-4) ...
- Setting up pkg-config:amd64 (1.8.1-4) ...
- Processing triggers for libc-bin (2.41-12+deb13u1) ...
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved angstrom.0.16.1 (cached)
-> retrieved bigstringaf.0.10.0 (cached)
-> retrieved cmdliner.2.1.0 (cached)
-> retrieved conf-gmp.5 (cached)
-> retrieved cppo.1.8.0 (cached)
-> retrieved csexp.1.5.2 (cached)
-> installed conf-gmp.5
-> installed conf-pkg-config.4
-> retrieved ctypes.0.24.0 (cached)
-> installed csexp.1.5.2
-> retrieved dune-build-info.3.22.0, dune-configurator.3.22.0 (cached)
-> retrieved fix.20250919 (cached)
-> retrieved integers.0.7.0 (cached)
-> retrieved lwt.6.1.1 (cached)
-> retrieved lwt_ppx.6.1.0 (cached)
-> installed cmdliner.2.1.0
-> installed cppo.1.8.0
-> installed dune-build-info.3.22.0
-> installed fix.20250919
-> installed integers.0.7.0
-> installed dune-configurator.3.22.0
-> retrieved melange.6.0.1-54 (cached)
-> retrieved melange-fetch.0.2.0 (cached)
-> retrieved melange-json.2.0.0, melange-json-native.2.0.0 (cached)
-> installed bigstringaf.0.10.0
-> retrieved melange-webapi.0.22.0 (cached)
-> retrieved menhir.20260209, menhirCST.20260209, menhirGLR.20260209, menhirLib.20260209, menhirSdk.20260209 (cached)
-> retrieved merlin-extend.0.6.2 (cached)
-> retrieved ocaml-syntax-shims.1.0.0 (cached)
-> retrieved ocamlbuild.0.16.1 (cached)
-> installed menhirCST.20260209
-> retrieved ocamlfind.1.9.8 (cached)
-> retrieved ocplib-endian.1.2 (cached)
-> retrieved quickjs.0.4.2 (cached)
-> installed menhirGLR.20260209
-> installed merlin-extend.0.6.2
-> installed menhirLib.20260209
-> retrieved reason.3.17.3 (cached)
-> installed menhirSdk.20260209
-> retrieved reason-react.0.17.0, reason-react-ppx.0.17.0 (cached)
-> retrieved server-reason-react.0.4.1 (cached)
-> retrieved stringext.1.6.0 (cached)
-> retrieved topkg.1.1.1 (cached)
-> installed ocaml-syntax-shims.1.0.0
-> retrieved uri.4.4.0 (cached)
-> installed stringext.1.6.0
-> retrieved uucp.17.0.0 (cached)
-> retrieved uutf.1.0.4 (cached)
-> retrieved yojson.3.0.0 (cached)
-> retrieved zarith.1.14 (cached)
-> installed angstrom.0.16.1
-> installed ctypes.0.24.0
-> installed yojson.3.0.0
-> installed ocamlfind.1.9.8
-> installed base-bytes.base
-> installed uri.4.4.0
-> installed ocplib-endian.1.2
-> installed quickjs.0.4.2
-> installed melange-json-native.2.0.0
-> installed ocamlbuild.0.16.1
-> installed zarith.1.14
-> installed lwt.6.1.1
-> installed menhir.20260209
-> installed lwt_ppx.6.1.0
-> installed topkg.1.1.1
-> installed uutf.1.0.4
-> installed reason.3.17.3
-> installed reason-react-ppx.0.17.0
-> installed uucp.17.0.0
-> installed melange.6.0.1-54
-> installed melange-fetch.0.2.0
-> installed melange-json.2.0.0
-> installed reason-react.0.17.0
-> installed melange-webapi.0.22.0
-> installed server-reason-react.0.4.1
Done.
# To update the current shell environment, run: eval $(opam env)
2026-03-20 10:25.46 ---> saved as "ac1f388cafaa828b1f365139a99d34bdc9ffdccf31383017fedb3851ed0b6725"
/home/opam: (run (network host)
(shell "(opam reinstall --with-test server-reason-react.0.4.1) || true"))
The following actions will be performed:
=== recompile 1 package
- recompile server-reason-react 0.4.1
=== install 21 packages
- install alcotest 1.9.1 [required by server-reason-react]
- install alcotest-lwt 1.9.1 [required by server-reason-react]
- install astring 0.8.5 [required by alcotest]
- install base v0.17.3 [required by ocamlformat-lib]
- install camlp-streams 5.0.1 [required by ocamlformat-lib]
- install dot-merlin-reader 5.6.1-504 [required by merlin]
- install either 1.0.0 [required by ocamlformat-lib]
- install fmt 0.11.0 [required by server-reason-react]
- install fpath 0.7.3 [required by ocamlformat-lib]
- install logs 0.10.0 [required by alcotest-lwt]
- install merlin 5.6.1-504 [required by server-reason-react]
- install merlin-lib 5.6.1-504 [required by merlin]
- install ocaml-index 5.6.1-504
- install ocaml-version 4.0.3 [required by ocamlformat-lib]
- install ocaml_intrinsics_kernel v0.17.1 [required by base]
- install ocamlformat 0.28.1 [required by server-reason-react]
- install ocamlformat-lib 0.28.1 [required by ocamlformat]
- install ocp-indent 1.9.0 [required by ocamlformat-lib]
- install re 1.14.0 [required by alcotest, ocamlformat]
- install stdio v0.17.0 [required by ocamlformat-lib]
- install uuseg 17.0.0 [required by ocamlformat-lib]
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved alcotest.1.9.1, alcotest-lwt.1.9.1 (https://opam.ocaml.org/cache)
-> retrieved astring.0.8.5 (https://opam.ocaml.org/cache)
-> retrieved base.v0.17.3 (https://opam.ocaml.org/cache)
-> retrieved camlp-streams.5.0.1 (https://opam.ocaml.org/cache)
-> installed camlp-streams.5.0.1
-> installed astring.0.8.5
-> retrieved dot-merlin-reader.5.6.1-504, merlin.5.6.1-504, merlin-lib.5.6.1-504, ocaml-index.5.6.1-504 (https://opam.ocaml.org/cache)
-> retrieved either.1.0.0 (https://opam.ocaml.org/cache)
-> retrieved fmt.0.11.0 (https://opam.ocaml.org/cache)
-> retrieved fpath.0.7.3 (https://opam.ocaml.org/cache)
-> retrieved logs.0.10.0 (https://opam.ocaml.org/cache)
-> installed either.1.0.0
-> retrieved ocaml-version.4.0.3 (https://opam.ocaml.org/cache)
-> retrieved ocaml_intrinsics_kernel.v0.17.1 (https://opam.ocaml.org/cache)
-> installed ocaml-version.4.0.3
-> installed ocaml_intrinsics_kernel.v0.17.1
-> retrieved ocamlformat.0.28.1, ocamlformat-lib.0.28.1 (https://opam.ocaml.org/cache)
-> installed fmt.0.11.0
-> installed fpath.0.7.3
-> retrieved ocp-indent.1.9.0 (https://opam.ocaml.org/cache)
-> retrieved re.1.14.0 (https://opam.ocaml.org/cache)
-> retrieved server-reason-react.0.4.1 (https://opam.ocaml.org/cache)
-> retrieved stdio.v0.17.0 (https://opam.ocaml.org/cache)
-> retrieved uuseg.17.0.0 (https://opam.ocaml.org/cache)
-> installed logs.0.10.0
-> installed ocp-indent.1.9.0
-> installed re.1.14.0
-> installed uuseg.17.0.0
-> installed alcotest.1.9.1
-> installed alcotest-lwt.1.9.1
-> installed base.v0.17.3
-> installed stdio.v0.17.0
-> removed server-reason-react.0.4.1
-> installed merlin-lib.5.6.1-504
-> installed dot-merlin-reader.5.6.1-504
-> installed ocaml-index.5.6.1-504
-> installed merlin.5.6.1-504
-> installed ocamlformat-lib.0.28.1
-> installed ocamlformat.0.28.1
[ERROR] The compilation of server-reason-react.0.4.1 failed at "dune build -p server-reason-react -j 71 @install @runtest".
#=== ERROR while compiling server-reason-react.0.4.1 ==========================#
# context 2.5.0 | linux/x86_64 | ocaml-base-compiler.5.4.0 | file:///home/opam/opam-repository
# path ~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1
# command ~/.opam/opam-init/hooks/sandbox.sh build dune build -p server-reason-react -j 71 @install @runtest
# exit-code 1
# env-file ~/.opam/log/server-reason-react-7-66b32d.env
# output-file ~/.opam/log/server-reason-react-7-66b32d.out
### output ###
# (cd _build/default/packages/melange.ppx/xxhash && ./test_xxh64.exe)
# Testing `XXH64'.
# This run has ID `U8T520A9'.
#
# [OK] hash 0 "".
# [OK] hash 1 "a".
# [OK] hash 2 "as".
# [OK] hash 3 "asd".
# [OK] hash 4 "asdf".
# [OK] hash 5 "abc".
# [OK] hash 6 "abc".
# [OK] hash 7 "abcd".
# [OK] hash 8 "abcde".
# [OK] hash 9 "abcdef".
# [OK] hash 10 "abcdefg".
# [OK] hash 11 "abcdefgh".
# [OK] hash 12 "abcdefghi".
# [OK] hash 13 "abcdefghij".
# [OK] hash 14 "abcdefghijklmnopqrstuvwxyz012345".
# [OK] hash 15 "abcdefghijklmnopqrstuvwxyz0123456...
# [OK] hash 16 "Call me Ishmael. Some years ago--...
# [OK] hash 17 "Lorem ipsum dolor sit amet, conse...
# [OK] hash · to_hex 0 "I want an unsigned 64-bit seed!".
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/melange.ppx/xxhash/_build/_tests/XXH64'.
# Test Successful in 0.002s. 19 tests run.
# (cd _build/default/packages/url/test && ./test_native.exe)
# Testing `URL'.
# This run has ID `9UQXTZF2'.
#
# [OK] URL 0 make.
# [OK] URL 1 makeWith.
# [OK] URL 2 makeWith and relative base.
# [OK] URL 3 host.
# [OK] URL 4 hostname.
# [OK] URL 5 setHostname.
# [OK] URL 6 pathname.
# [OK] URL 7 origin.
# [OK] URL 8 href.
# [OK] URL 9 port.
# [OK] URL 10 hash.
# [OK] URL 11 setHash.
# [OK] URL 12 search.
# [OK] URL 13 protocol.
# [OK] URL 14 setProtocol.
# [OK] URL 15 username.
# [OK] URL 16 setUsername.
# [OK] URL 17 password.
# [OK] URL 18 setPassword.
# [OK] URL 19 searchParams.
# [OK] URL.SearchParams 0 has.
# [OK] URL.SearchParams 1 get.
# [OK] URL.SearchParams 2 getAll.
# [OK] URL.SearchParams 3 keys.
# [OK] URL.SearchParams 4 values.
# [OK] URL.SearchParams 5 entries.
# [OK] URL.SearchParams 6 toString.
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/url/test/_build/_tests/URL'.
# Test Successful in 0.005s. 27 tests run.
# (cd _build/default/packages/Belt/test && ./test.exe)
# Testing `Belt'.
# This run has ID `304YHYI1'.
#
# [OK] Records 0 eq.
# [OK] Array 0 truncateToLengthUnsafe.
# [OK] Array 1 makeUninitializedUnsafe.
# [OK] Array 2 length.
# [OK] List 0 eq.
# [OK] List 1 map.
# [OK] List 2 mapU.
# [OK] List 3 mapWithIndex.
# [OK] List 4 concat.
# [OK] Int 0 fromString.
# [OK] Int 1 toString.
# [OK] Option 0 keep_1.
# [OK] Option 1 keep_2.
# [OK] Option 2 keep_3.
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/Belt/test/_build/_tests/Belt'.
# Test Successful in 0.002s. 14 tests run.
# (cd _build/default/packages/expand-styles-attribute/test && ./test.exe)
# Testing `expand_styles_attribute'.
# This run has ID `YWK9AGQM'.
#
# [OK] expand_styles_prop_on_attributes 0
# [OK] expand_styles_with_previous_className 0
# [OK] expand_styles_with_previous_style 0
# [OK] expand_styles_optional 0
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/expand-styles-attribute/test/_build/_tests/expand_styles_attribute'.
# Test Successful in 0.001s. 4 tests run.
# File "packages/browser-ppx/tests/at_browser_only.t", line 1, characters 0-0:
# /usr/bin/git --no-pager diff --no-index --color=always -u _build/default/packages/browser-ppx/tests/at_browser_only.t _build/default/packages/browser-ppx/tests/at_browser_only.t.corrected
# diff --git a/_build/default/packages/browser-ppx/tests/at_browser_only.t b/_build/default/packages/browser-ppx/tests/at_browser_only.t.corrected
# index 3fb8d6e..1af9596 100644
# --- a/_build/default/packages/browser-ppx/tests/at_browser_only.t
# +++ b/_build/default/packages/browser-ppx/tests/at_browser_only.t.corrected
# @@ -230,7 +230,6 @@ Ppat_constraint
# let foo ~on:((on [@browser_only]) : unit -> string)
# ?opt:((opt [@browser_only]) = 42) =
# 0
# -
# $ ./standalone.exe -impl input_constr.ml | ocamlformat - --enable-outside-detected-project --impl
# let foo ~on:_ ?opt:(_ = 42) = 0
#
# (cd _build/default/packages/Js/test && ./test.exe)
# Testing `Js'.
# This run has ID `MYCZDRH3'.
#
# [OK] Js.Global 0 decodeURI - ascii and spaces.
# [OK] Js.Global 1 decodeURI - reserved charac...
# [OK] Js.Global 2 decodeURI - alphabets.
# [OK] Js.Global 3 decodeURI - unicode charact...
# [OK] Js.Global 4 decodeURI - mixed percent e...
# [OK] Js.Global 5 decodeURI - complete URLs.
# [OK] Js.Global 6 decodeURI - overencoded seq...
# [OK] Js.Global 7 decodeURI - special charact...
# [OK] Js.Global 8 decodeURI - beyond U+10FFFF.
# [OK] Js.Global 9 decodeURI - partial sequences.
# [OK] Js.Global 10 encodeURI - ascii and spaces.
# [OK] Js.Global 11 encodeURI - reserved charac...
# [OK] Js.Global 12 encodeURI - alphabets.
# [OK] Js.Global 13 encodeURI - unicode charact...
# [OK] Js.Global 14 encodeURI - complete URLs.
# [OK] Js.Global 15 encodeURI - special charact...
# [OK] Js.Global 16 encodeURI - combining chara...
# [OK] Js.Global 17 encodeURI - Surrogate pairs.
# [OK] Js.Global 18 encodeURIComponent.
# [OK] Js.Promise 0 resolve.
# [OK] Js.Promise 1 all.
# [OK] Js.Promise 2 all_async.
# [OK] Js.Promise 3 race_async.
# [OK] Js.Float 0 string_of_float.
# [OK] Js.Float 1 toString.
# [OK] Js.Float 2 fromString.
# [OK] Js.Float 3 toFixed.
# [OK] Js.String 0 make.
# [OK] Js.String 1 length.
# [OK] Js.String 2 get.
# [OK] Js.String 3 fromCharCode.
# [OK] Js.String 4 fromCharCodeMany.
# [OK] Js.String 5 fromCodePoint.
# [OK] Js.String 6 fromCodePointMany.
# [OK] Js.String 7 charAt.
# [OK] Js.String 8 charCodeAt.
# [OK] Js.String 9 codePointAt.
# [OK] Js.String 10 concat.
# [OK] Js.String 11 concatMany.
# [OK] Js.String 12 endsWith.
# [OK] Js.String 13 includes.
# [OK] Js.String 14 indexOf.
# [OK] Js.String 15 lastIndexOf.
# [OK] Js.String 16 match.
# [OK] Js.String 17 match 0.
# [OK] Js.String 18 repeat.
# [OK] Js.String 19 replace.
# [OK] Js.String 20 replaceByRe.
# [OK] Js.String 21 replaceByRe with references...
# [OK] Js.String 22 replaceByRe with $1 capturi...
# [OK] Js.String 23 replaceByRe with multiple c...
# [OK] Js.String 24 replaceByRe with $&.
# [OK] Js.String 25 replaceByRe with $$.
# [OK] Js.String 26 replaceByRe with global.
# [OK] Js.String 27 unsafeReplaceBy0.
# [OK] Js.String 28 unsafeReplaceBy1.
# [OK] Js.String 29 unsafeReplaceBy2.
# [OK] Js.String 30 search.
# [OK] Js.String 31 slice.
# [OK] Js.String 32 split.
# [OK] Js.String 33 splitAtMost.
# [OK] Js.String 34 splitByRe.
# [OK] Js.String 35 startsWith.
# [OK] Js.String 36 substr.
# [OK] Js.String 37 substrAtMost.
# [OK] Js.String 38 substring.
# [OK] Js.String 39 toLowerCase.
# [OK] Js.String 40 toUpperCase.
# [OK] Js.String 41 trim.
# [OK] Js.String 42 anchor.
# [OK] Js.String 43 link.
# [OK] Js.Re 0 captures.
# [OK] Js.Re 1 exec.
# [OK] Js.Re 2 exec with global.
# [OK] Js.Re 3 modifier: end ($).
# [OK] Js.Re 4 modifier: more than one (+).
# [OK] Js.Re 5 global (g) and caseless (i).
# [OK] Js.Re 6 modifier: or ([]).
# [OK] Js.Re 7 backreferencing.
# [OK] Js.Re 8 http|s example.
# [OK] Js.Re 9 index.
# [OK] Js.Re 10 lastIndex.
# [OK] Js.Re 11 input.
# [OK] Js.Dict 0 empty.
# [OK] Js.Dict 1 get.
# [OK] Js.Dict 2 get from missing property.
# [OK] Js.Dict 3 unsafe_get.
# [OK] Js.Dict 4 set.
# [OK] Js.Dict 5 keys.
# [OK] Js.Dict 6 keys duplicated.
# [OK] Js.Dict 7 entries.
# [OK] Js.Dict 8 values.
# [OK] Js.Dict 9 values duplicated.
# [OK] Js.Dict 10 fromList - [].
# [OK] Js.Dict 11 fromList.
# [OK] Js.Dict 12 fromArray - [].
# [OK] Js.Dict 13 fromArray.
# [OK] Js.Dict 14 map.
# [OK] BigInt.Arithmetic 0 add: positive + positive.
# [OK] BigInt.Arithmetic 1 add: negative + negative.
# [OK] BigInt.Arithmetic 2 add: positive + negative.
# [OK] BigInt.Arithmetic 3 add: with zero.
# [OK] BigInt.Arithmetic 4 add: large numbers.
# [OK] BigInt.Arithmetic 5 sub: positive result.
# [OK] BigInt.Arithmetic 6 sub: negative result.
# [OK] BigInt.Arithmetic 7 sub: with zero.
# [OK] BigInt.Arithmetic 8 sub: self.
# [OK] BigInt.Arithmetic 9 mul: positive * positive.
# [OK] BigInt.Arithmetic 10 mul: negative * positive.
# [OK] BigInt.Arithmetic 11 mul: negative * negative.
# [OK] BigInt.Arithmetic 12 mul: with zero.
# [OK] BigInt.Arithmetic 13 mul: with one.
# [OK] BigInt.Arithmetic 14 mul: 3^100.
# [OK] BigInt.Arithmetic 15 div: exact division.
# [OK] BigInt.Arithmetic 16 div: truncate positive.
# [OK] BigInt.Arithmetic 17 div: truncate negative (tow...
# [OK] BigInt.Arithmetic 18 div: negative divisor.
# [OK] BigInt.Arithmetic 19 div: both negative.
# [OK] BigInt.Arithmetic 20 div: large numbers.
# [OK] BigInt.Arithmetic 21 div: large negative.
# [OK] BigInt.Arithmetic 22 div: by zero throws.
# [OK] BigInt.Arithmetic 23 rem: positive % positive.
# [OK] BigInt.Arithmetic 24 rem: negative dividend.
# [OK] BigInt.Arithmetic 25 rem: negative divisor.
# [OK] BigInt.Arithmetic 26 rem: both negative.
# [OK] BigInt.Arithmetic 27 rem: large numbers.
# [OK] BigInt.Arithmetic 28 rem: large positive.
# [OK] BigInt.Arithmetic 29 rem: by zero throws.
# [OK] BigInt.Arithmetic 30 pow: exponent zero.
# [OK] BigInt.Arithmetic 31 pow: exponent one.
# [OK] BigInt.Arithmetic 32 pow: 2^10.
# [OK] BigInt.Arithmetic 33 pow: (-2)^127.
# [OK] BigInt.Arithmetic 34 pow: 2^127.
# [OK] BigInt.Arithmetic 35 pow: negative exponent throws.
# [OK] BigInt.Arithmetic 36 pow: (-256)^11.
# [OK] BigInt.Arithmetic 37 pow: 7^20.
# [OK] BigInt.Arithmetic 38 neg: positive.
# [OK] BigInt.Arithmetic 39 neg: negative.
# [OK] BigInt.Arithmetic 40 neg: zero.
# [OK] BigInt.Arithmetic 41 abs: positive.
# [OK] BigInt.Arithmetic 42 abs: negative.
# [OK] BigInt.Arithmetic 43 abs: zero.
# [OK] BigInt.Bitwise 0 and: basic.
# [OK] BigInt.Bitwise 1 and: with zero.
# [OK] BigInt.Bitwise 2 and: with all ones.
# [OK] BigInt.Bitwise 3 and: negative (two's comple...
# [OK] BigInt.Bitwise 4 or: basic.
# [OK] BigInt.Bitwise 5 or: with zero.
# [OK] BigInt.Bitwise 6 or: disjoint bits.
# [OK] BigInt.Bitwise 7 xor: basic.
# [OK] BigInt.Bitwise 8 xor: same value.
# [OK] BigInt.Bitwise 9 xor: with zero.
# [OK] BigInt.Bitwise 10 not: basic.
# [OK] BigInt.Bitwise 11 not: zero.
# [OK] BigInt.Bitwise 12 not: -1.
# [OK] BigInt.Bitwise 13 not: positive.
# [OK] BigInt.Bitwise 14 not: negative.
# [OK] BigInt.Bitwise 15 shift_left: basic.
# [OK] BigInt.Bitwise 16 shift_left: 1 << 31.
# [OK] BigInt.Bitwise 17 shift_left: 1 << 32.
# [OK] BigInt.Bitwise 18 shift_left: 1 << 100.
# [OK] BigInt.Bitwise 19 shift_left: large number.
# [OK] BigInt.Bitwise 20 shift_left: negative number.
# [OK] BigInt.Bitwise 21 shift_left: by zero.
# [OK] BigInt.Bitwise 22 shift_right: basic.
# [OK] BigInt.Bitwise 23 shift_right: large number.
# [OK] BigInt.Bitwise 24 shift_right: negative (arit...
# [OK] BigInt.Bitwise 25 shift_right: by zero.
# [OK] BigInt.Bitwise 26 shift_right: small negative.
# [OK] BigInt.Comparison 0 equal: same value.
# [OK] BigInt.Comparison 1 equal: different values.
# [OK] BigInt.Comparison 2 equal: negative values.
# [OK] BigInt.Comparison 3 equal: opposite signs.
# [OK] BigInt.Comparison 4 equal: zeros.
# [OK] BigInt.Comparison 5 equal: large same.
# [OK] BigInt.Comparison 6 equal: large different.
# [OK] BigInt.Comparison 7 compare: less.
# [OK] BigInt.Comparison 8 compare: greater.
# [OK] BigInt.Comparison 9 compare: equal.
# [OK] BigInt.Comparison 10 compare: negative.
# [OK] BigInt.Comparison 11 compare: mixed sign.
# [OK] BigInt.Comparison 12 lt: true.
# [OK] BigInt.Comparison 13 lt: false (greater).
# [OK] BigInt.Comparison 14 lt: false (equal).
# [OK] BigInt.Comparison 15 lt: negative.
# [OK] BigInt.Comparison 16 le: true (less).
# [OK] BigInt.Comparison 17 le: true (equal).
# [OK] BigInt.Comparison 18 le: false.
# [OK] BigInt.Comparison 19 gt: true.
# [OK] BigInt.Comparison 20 gt: false (less).
# [OK] BigInt.Comparison 21 gt: false (equal).
# [OK] BigInt.Comparison 22 ge: true (greater).
# [OK] BigInt.Comparison 23 ge: true (equal).
# [OK] BigInt.Comparison 24 ge: false.
# [OK] BigInt.Constructor 0 from_string: empty string r...
# [OK] BigInt.Constructor 1 from_string: zero.
# [OK] BigInt.Constructor 2 from_string: positive decimal.
# [OK] BigInt.Constructor 3 from_string: negative decimal.
# [OK] BigInt.Constructor 4 from_string: positive sign.
# [OK] BigInt.Constructor 5 from_string: large number.
# [OK] BigInt.Constructor 6 from_string: very large num...
# [OK] BigInt.Constructor 7 from_string: leading whites...
# [OK] BigInt.Constructor 8 from_string: trailing white...
# [OK] BigInt.Constructor 9 from_string: both whitespace.
# [OK] BigInt.Constructor 10 from_string: tabs.
# [OK] BigInt.Constructor 11 from_string: newlines.
# [OK] BigInt.Constructor 12 from_string: hex lowercase.
# [OK] BigInt.Constructor 13 from_string: hex uppercase.
# [OK] BigInt.Constructor 14 from_string: hex large.
# [OK] BigInt.Constructor 15 from_string: hex negative.
# [OK] BigInt.Constructor 16 from_string: binary lowercase.
# [OK] BigInt.Constructor 17 from_string: binary uppercase.
# [OK] BigInt.Constructor 18 from_string: octal lowercase.
# [OK] BigInt.Constructor 19 from_string: octal uppercase.
# [OK] BigInt.Constructor 20 from_string: sign only throws.
# [OK] BigInt.Constructor 21 from_string: trailing chars...
# [OK] BigInt.Constructor 22 from_string: null char throws.
# [OK] BigInt.Constructor 23 from_string: decimal point ...
# [OK] BigInt.Constructor 24 from_string: float notation...
# [OK] BigInt.Constructor 25 from_int: zero.
# [OK] BigInt.Constructor 26 from_int: positive.
# [OK] BigInt.Constructor 27 from_int: negative.
# [OK] BigInt.Constructor 28 from_int: max_int.
# [OK] BigInt.Constructor 29 from_int: min_int.
# [OK] BigInt.Constructor 30 from_int64: large positive.
# [OK] BigInt.Constructor 31 from_int64: large negative.
# [OK] BigInt.Conversion 0 toString: zero.
# [OK] BigInt.Conversion 1 toString: positive.
# [OK] BigInt.Conversion 2 toString: negative.
# [OK] BigInt.Conversion 3 toString: large (1 << 100).
# [OK] BigInt.Conversion 4 toString: radix 2.
# [OK] BigInt.Conversion 5 toString: radix 8.
# [OK] BigInt.Conversion 6 toString: radix 16.
# [OK] BigInt.Conversion 7 toString: radix 36.
# [OK] BigInt.Conversion 8 toString: radix 16 large.
# [OK] BigInt.Conversion 9 toFloat: small.
# [OK] BigInt.Conversion 10 toFloat: negative.
# [OK] BigInt.Conversion 11 toFloat: zero.
# [OK] BigInt.Conversion 12 toFloat: MAX_SAFE_INTEGER.
# [OK] BigInt.Conversion 13 toFloat: large (0xfffffffff...
# [OK] BigInt.Conversion 14 toFloat: large negative.
# [OK] BigInt.Conversion 15 asIntN: positive fits.
# [OK] BigInt.Conversion 16 asIntN: positive wraps.
# [OK] BigInt.Conversion 17 asIntN: 255 -> -1.
# [OK] BigInt.Conversion 18 asIntN: negative fits.
# [OK] BigInt.Conversion 19 asIntN: negative wraps.
# [OK] BigInt.Conversion 20 asIntN: 64 bits.
# [OK] BigInt.Conversion 21 asUintN: fits.
# [OK] BigInt.Conversion 22 asUintN: wraps to 0.
# [OK] BigInt.Conversion 23 asUintN: wraps to 1.
# [OK] BigInt.Conversion 24 asUintN: negative wraps.
# [OK] BigInt.Conversion 25 asUintN: 64 bits.
# [OK] BigInt.AsIntN 0 asIntN 0 bits.
# [OK] BigInt.AsIntN 1 asIntN 1 bit.
# [OK] BigInt.AsIntN 2 asIntN 8 bit.
# [OK] BigInt.AsIntN 3 asIntN 16 bit.
# [OK] BigInt.AsIntN 4 asIntN 32 bit.
# [OK] BigInt.AsIntN 5 asIntN 64 bit.
# [OK] BigInt.AsIntN 6 asIntN preserves small posi...
# [OK] BigInt.AsIntN 7 asIntN preserves small nega...
# [OK] BigInt.AsIntN 8 asIntN wrapping.
# [OK] BigInt.AsIntN 9 asIntN large bits.
# [OK] BigInt.AsIntN 10 asIntN negative input.
# [OK] BigInt.AsIntN 11 asIntN 2-bit boundary.
# [OK] BigInt.AsIntN 12 asIntN 3-bit boundary.
# [OK] BigInt.AsIntN 13 asIntN 4-bit boundary.
# [OK] BigInt.AsIntN 14 asIntN identity for zero.
# [OK] BigInt.AsIntN 15 asIntN minus one.
# [OK] BigInt.AsUintN 0 asUintN 0 bits.
# [OK] BigInt.AsUintN 1 asUintN 1 bit.
# [OK] BigInt.AsUintN 2 asUintN 8 bit.
# [OK] BigInt.AsUintN 3 asUintN 16 bit.
# [OK] BigInt.AsUintN 4 asUintN 32 bit.
# [OK] BigInt.AsUintN 5 asUintN 64 bit.
# [OK] BigInt.AsUintN 6 asUintN preserves small val...
# [OK] BigInt.AsUintN 7 asUintN wrapping.
# [OK] BigInt.AsUintN 8 asUintN large bits.
# [OK] BigInt.AsUintN 9 asUintN negative becomes po...
# [OK] BigInt.AsUintN 10 asUintN 2-bit boundary.
# [OK] BigInt.AsUintN 11 asUintN 3-bit boundary.
# [OK] BigInt.AsUintN 12 asUintN 4-bit boundary.
# [OK] BigInt.AsUintN 13 asUintN identity for zero.
# [OK] BigInt.AsUintN 14 asUintN one.
# [OK] BigInt.AsUintN 15 asUintN power of two.
# [OK] BigInt.AsUintN 16 asUintN power of two minus ...
# [OK] BigInt.Prototype 0 toString default radix.
# [OK] BigInt.Prototype 1 toString radix 2 (binary).
# [OK] BigInt.Prototype 2 toString radix 8 (octal).
# [OK] BigInt.Prototype 3 toString radix 10 (decimal).
# [OK] BigInt.Prototype 4 toString radix 16 (hex).
# [OK] BigInt.Prototype 5 toString radix 36 (max).
# [OK] BigInt.Prototype 6 toString various radixes.
# [OK] BigInt.Prototype 7 toString large numbers.
# [OK] BigInt.Prototype 8 toString negative large.
# [OK] BigInt.Prototype 9 toString zero all radixes.
# [OK] BigInt.Prototype 10 to_float small.
# [OK] BigInt.Prototype 11 to_float large.
# [OK] BigInt.Prototype 12 to_float very large.
# [OK] BigInt.Prototype 13 of_string edge cases.
# [OK] BigInt.Prototype 14 of_string hex.
# [OK] BigInt.Prototype 15 of_string binary.
# [OK] BigInt.Prototype 16 of_string octal.
# [OK] BigInt.Prototype 17 compare equal.
# [OK] BigInt.Prototype 18 compare less.
# [OK] BigInt.Prototype 19 compare greater.
# [OK] BigInt.Prototype 20 compare negative.
# [OK] BigInt.Prototype 21 compare large.
# [OK] Date.Getters 0 getTime returns epoch ms.
# [OK] Date.Getters 1 getTime NaN for invalid date.
# [OK] Date.Getters 2 getUTCFullYear.
# [OK] Date.Getters 3 getUTCMonth.
# [OK] Date.Getters 4 getUTCDate.
# [OK] Date.Getters 5 getUTCDay.
# [OK] Date.Getters 6 getUTCHours.
# [OK] Date.Getters 7 getUTCMinutes.
# [OK] Date.Getters 8 getUTCSeconds.
# [OK] Date.Getters 9 getUTCMilliseconds.
# [OK] Date.Getters 10 UTC getters at epoch.
# [OK] Date.Getters 11 UTC getters before epoch.
# [OK] Date.Getters 12 UTC getters at Y2K.
# [OK] Date.Getters 13 UTC getters on leap day.
# [OK] Date.Getters 14 getUTCFullYear NaN.
# [OK] Date.Getters 15 getUTCMonth NaN.
# [OK] Date.Getters 16 getUTCDate NaN.
# [OK] Date.Getters 17 getUTCDay NaN.
# [OK] Date.Getters 18 getUTCHours NaN.
# [OK] Date.Getters 19 getUTCMinutes NaN.
# [OK] Date.Getters 20 getUTCSeconds NaN.
# [OK] Date.Getters 21 getUTCMilliseconds NaN.
# [OK] Date.Getters 22 new year transition.
# [OK] Date.Getters 23 month lengths.
# [OK] Date.LocalGetters 0 getTime basic.
# [OK] Date.LocalGetters 1 getTime epoch.
# [OK] Date.LocalGetters 2 getTime negative.
# [OK] Date.LocalGetters 3 getTime NaN.
# [OK] Date.LocalGetters 4 valueOf basic.
# [OK] Date.LocalGetters 5 valueOf epoch.
# [OK] Date.LocalGetters 6 valueOf NaN.
# [OK] Date.LocalGetters 7 valueOf equals getTime.
# [OK] Date.LocalGetters 8 getUTCFullYear 2017.
# [OK] Date.LocalGetters 9 getUTCFullYear 1970 (epoch).
# [OK] Date.LocalGetters 10 getUTCFullYear 1969.
# [OK] Date.LocalGetters 11 getUTCFullYear NaN.
# [OK] Date.LocalGetters 12 getUTCFullYear Y2K.
# [OK] Date.LocalGetters 13 getUTCFullYear leap year.
# [OK] Date.LocalGetters 14 getUTCMonth January (0).
# [OK] Date.LocalGetters 15 getUTCMonth December (11).
# [OK] Date.LocalGetters 16 getUTCMonth NaN.
# [OK] Date.LocalGetters 17 getUTCMonth epoch.
# [OK] Date.LocalGetters 18 getUTCDate first.
# [OK] Date.LocalGetters 19 getUTCDate 31st.
# [OK] Date.LocalGetters 20 getUTCDate NaN.
# [OK] Date.LocalGetters 21 getUTCDate epoch.
# [OK] Date.LocalGetters 22 getUTCDay Thursday (epoch).
# [OK] Date.LocalGetters 23 getUTCDay Sunday.
# [OK] Date.LocalGetters 24 getUTCDay Saturday.
# [OK] Date.LocalGetters 25 getUTCDay NaN.
# [OK] Date.LocalGetters 26 getUTCHours zero.
# [OK] Date.LocalGetters 27 getUTCHours 23.
# [OK] Date.LocalGetters 28 getUTCHours NaN.
# [OK] Date.LocalGetters 29 getUTCHours epoch.
# [OK] Date.LocalGetters 30 getUTCMinutes zero.
# [OK] Date.LocalGetters 31 getUTCMinutes 59.
# [OK] Date.LocalGetters 32 getUTCMinutes NaN.
# [OK] Date.LocalGetters 33 getUTCSeconds zero.
# [OK] Date.LocalGetters 34 getUTCSeconds 59.
# [OK] Date.LocalGetters 35 getUTCSeconds NaN.
# [OK] Date.LocalGetters 36 getUTCMilliseconds zero.
# [OK] Date.LocalGetters 37 getUTCMilliseconds 999.
# [OK] Date.LocalGetters 38 getUTCMilliseconds NaN.
# [OK] Date.LocalGetters 39 getUTCMilliseconds middle.
# [OK] Date.LocalGetters 40 getTimezoneOffset returns n...
# [OK] Date.LocalGetters 41 getTimezoneOffset NaN.
# [OK] Date.LocalGetters 42 getTimezoneOffset in valid ...
# [OK] Date.LocalGetters 43 local getters consistent.
# [OK] Date.LocalGetters 44 local getters NaN.
# [OK] Date.LocalGetters 45 getDay range 0-6.
# [OK] Date.LocalGetters 46 getters large positive date.
# [OK] Date.LocalGetters 47 getters large negative date.
# [OK] Date.LocalGetters 48 getters boundary milliseconds.
# [OK] Date.Setters 0 setTime basic.
# [OK] Date.Setters 1 setTime epoch.
# [OK] Date.Setters 2 setTime negative.
# [OK] Date.Setters 3 setTime NaN value.
# [OK] Date.Setters 4 setTime on NaN date.
# [OK] Date.Setters 5 setUTCMilliseconds basic.
# [OK] Date.Setters 6 setUTCMilliseconds overflow.
# [OK] Date.Setters 7 setUTCMilliseconds negative.
# [OK] Date.Setters 8 setUTCMilliseconds NaN.
# [OK] Date.Setters 9 setUTCSeconds basic.
# [OK] Date.Setters 10 setUTCSeconds overflow.
# [OK] Date.Setters 11 setUTCSeconds with ms.
# [OK] Date.Setters 12 setUTCSeconds NaN.
# [OK] Date.Setters 13 setUTCMinutes basic.
# [OK] Date.Setters 14 setUTCMinutes overflow.
# [OK] Date.Setters 15 setUTCMinutes with seconds.
# [OK] Date.Setters 16 setUTCMinutes with seconds ...
# [OK] Date.Setters 17 setUTCMinutes NaN.
# [OK] Date.Setters 18 setUTCHours basic.
# [OK] Date.Setters 19 setUTCHours overflow.
# [OK] Date.Setters 20 setUTCHours with minutes.
# [OK] Date.Setters 21 setUTCHours with minutes an...
# [OK] Date.Setters 22 setUTCHours all components.
# [OK] Date.Setters 23 setUTCHours NaN.
# [OK] Date.Setters 24 setUTCDate basic.
# [OK] Date.Setters 25 setUTCDate overflow.
# [OK] Date.Setters 26 setUTCDate zero.
# [OK] Date.Setters 27 setUTCDate negative.
# [OK] Date.Setters 28 setUTCDate NaN.
# [OK] Date.Setters 29 setUTCMonth basic.
# [OK] Date.Setters 30 setUTCMonth overflow.
# [OK] Date.Setters 31 setUTCMonth negative.
# [OK] Date.Setters 32 setUTCMonth with date.
# [OK] Date.Setters 33 setUTCMonth NaN.
# [OK] Date.Setters 34 setUTCFullYear basic.
# [OK] Date.Setters 35 setUTCFullYear with month.
# [OK] Date.Setters 36 setUTCFullYear with month a...
# [OK] Date.Setters 37 setUTCFullYear leap to non-...
# [OK] Date.Setters 38 setUTCFullYear NaN.
# [OK] Date.Setters 39 setMilliseconds basic.
# [OK] Date.Setters 40 setSeconds basic.
# [OK] Date.Setters 41 setMinutes basic.
# [OK] Date.Setters 42 setHours basic.
# [OK] Date.Setters 43 setDate basic.
# [OK] Date.Setters 44 setMonth basic.
# [OK] Date.Setters 45 setFullYear basic.
# [OK] Date.Setters 46 setSeconds with ms.
# [OK] Date.Setters 47 setMinutes with seconds.
# [OK] Date.Setters 48 setMinutes with seconds and...
# [OK] Date.Setters 49 setHours with minutes.
# [OK] Date.Setters 50 setHours with minutes and s...
# [OK] Date.Setters 51 setHours all components.
# [OK] Date.Setters 52 setMonth with date.
# [OK] Date.Setters 53 setFullYear with month.
# [OK] Date.Setters 54 setFullYear with month and ...
# [OK] Date.Setters 55 setMilliseconds NaN.
# [OK] Date.Setters 56 setSeconds NaN.
# [OK] Date.Setters 57 setMinutes NaN.
# [OK] Date.Setters 58 setHours NaN.
# [OK] Date.Setters 59 setDate NaN.
# [OK] Date.Setters 60 setMonth NaN.
# [OK] Date.Setters 61 setFullYear NaN.
# [OK] Date.ToString 0 toUTCString basic.
# [OK] Date.ToString 1 toUTCString epoch.
# [OK] Date.ToString 2 toUTCString format.
# [OK] Date.ToString 3 toUTCString NaN.
# [OK] Date.ToString 4 toUTCString negative year.
# [OK] Date.ToString 5 toUTCString all months.
# [OK] Date.ToString 6 toUTCString day names.
# [OK] Date.ToString 7 toDateString basic.
# [OK] Date.ToString 8 toDateString epoch.
# [OK] Date.ToString 9 toDateString NaN.
# [OK] Date.ToString 10 toDateString no time.
# [OK] Date.ToString 11 toTimeString basic.
# [OK] Date.ToString 12 toTimeString epoch.
# [OK] Date.ToString 13 toTimeString NaN.
# [OK] Date.ToString 14 toTimeString contains time.
# [OK] Date.ToString 15 toString basic.
# [OK] Date.ToString 16 toString epoch.
# [OK] Date.ToString 17 toString NaN.
# [OK] Date.ToString 18 toString contains date and ...
# [OK] Date.ToString 19 toString contains year.
# [OK] Date.ToString 20 toJSON basic.
# [OK] Date.ToString 21 toJSON NaN.
# [OK] Date.ToString 22 toJSONUnsafe basic.
# [OK] Date.ToString 23 toLocaleString basic.
# [OK] Date.ToString 24 toLocaleString NaN.
# [OK] Date.ToString 25 toLocaleDateString basic.
# [OK] Date.ToString 26 toLocaleDateString NaN.
# [OK] Date.ToString 27 toLocaleTimeString basic.
# [OK] Date.ToString 28 toLocaleTimeString NaN.
# [OK] Date.ToString 29 toString large year.
# [OK] Date.ToString 30 toString negative year.
# [OK] Date.ToString 31 toUTCString Y2K.
# [OK] Date.Now 0 now returns finite number.
# [OK] Date.Now 1 now returns positive.
# [OK] Date.Now 2 now is recent (after 2020).
# [OK] Date.Now 3 now is monotonic.
# [OK] Date.Now 4 now returns integer ms.
# [OK] Date.Parse 0 empty string returns NaN.
# [OK] Date.Parse 1 year only: 2000.
# [OK] Date.Parse 2 year-month: 2000-01.
# [OK] Date.Parse 3 full date: 2000-01-01.
# [OK] Date.Parse 4 date with time UTC: 2000-01...
# [OK] Date.Parse 5 date with seconds: 2000-01-...
# [OK] Date.Parse 6 milliseconds .1Z = 100ms.
# [OK] Date.Parse 7 milliseconds .10Z = 100ms.
# [OK] Date.Parse 8 milliseconds .100Z = 100ms.
# [OK] Date.Parse 9 milliseconds .1000Z = 100ms.
# [OK] Date.Parse 10 timezone offset +00:00.
# [OK] Date.Parse 11 known ISO timestamp.
# [OK] Date.Parse 12 roundtrip parsing.
# [OK] Date.Parse 13 millis: single digit .1.
# [OK] Date.Parse 14 millis: two digits .12.
# [OK] Date.Parse 15 millis: four digits .1234 t...
# [OK] Date.Parse 16 millis: many digits .9999 t...
# [OK] Date.Parse 17 expanded year +002000.
# [OK] Date.Parse 18 expanded year -000001.
# [OK] Date.Parse 19 expanded year -000000 is in...
# [OK] Date.Parse 20 month name format: Jan 1 2000.
# [OK] Date.Parse 21 with weekday: Sat Jan 1 2000.
# [OK] Date.Parse 22 timezone GMT+0100.
# [OK] Date.Parse 23 timezone GMT+0200.
# [OK] Date.Parse 24 invalid: gibberish.
# [OK] Date.Parse 25 invalid: partial 2000-.
# [OK] Date.Parse 26 invalid: month 13.
# [OK] Date.Parse 27 invalid: day 32.
# [OK] Date.Parse 28 invalid: hour 25.
# [OK] Date.Parse 29 invalid: minute 60.
# [OK] Date.Parse 30 invalid: second 60.
# [OK] Date.ToISOString 0 known timestamp.
# [OK] Date.ToISOString 1 epoch.
# [OK] Date.ToISOString 2 Y2K.
# [OK] Date.ToISOString 3 with milliseconds.
# [OK] Date.ToISOString 4 millis: 000.
# [OK] Date.ToISOString 5 millis: 001.
# [OK] Date.ToISOString 6 millis: 010.
# [OK] Date.ToISOString 7 millis: 100.
# [OK] Date.ToISOString 8 millis: 999.
# [OK] Date.ToISOString 9 single digit month padded.
# [OK] Date.ToISOString 10 single digit day padded.
# [OK] Date.ToISOString 11 single digit hour padded.
# [OK] Date.ToISOString 12 before epoch -1ms.
# [OK] Date.ToISOString 13 1969 Jan.
# [OK] Date.ToISOString 14 year 0.
# [OK] Date.ToISOString 15 negative year.
# [OK] Date.ToISOString 16 year 10000.
# [OK] Date.ToISOString 17 roundtrip known timestamp.
# [OK] Date.ToISOString 18 roundtrip epoch.
# [OK] Date.ToISOString 19 roundtrip before epoch.
# [OK] Date.ToISOString 20 QJS: 2020-01-01T01:01:01.123Z.
# [OK] Date.ToISOString 21 QJS: .1Z -> .100Z.
# [OK] Date.ToISOString 22 QJS: .12Z -> .120Z.
# [OK] Date.UTC 0 UTC year only.
# [OK] Date.UTC 1 UTC year and month.
# [OK] Date.UTC 2 UTC year, month, day.
# [OK] Date.UTC 3 UTC with hours.
# [OK] Date.UTC 4 UTC with minutes.
# [OK] Date.UTC 5 UTC with seconds.
# [OK] Date.UTC 6 UTC with milliseconds.
# [OK] Date.UTC 7 UTC NaN year.
# [OK] Date.UTC 8 UTC NaN month.
# [OK] Date.UTC 9 UTC NaN day.
# [OK] Date.UTC 10 UTC NaN hours.
# [OK] Date.UTC 11 UTC NaN minutes.
# [OK] Date.UTC 12 UTC NaN seconds.
# [OK] Date.UTC 13 UTC NaN ms.
# [OK] Date.UTC 14 UTC Unix epoch.
# [OK] Date.UTC 15 UTC before epoch.
# [OK] Date.UTC 16 UTC Y2K.
# [OK] Date.UTC 17 UTC year 0 -> 1900.
# [OK] Date.UTC 18 UTC year 99 -> 1999.
# [OK] Date.UTC 19 UTC year 100 stays 100.
# [OK] Date.UTC 20 UTC month 12 = January next...
# [OK] Date.UTC 21 UTC month -1 = December pre...
# [OK] Date.UTC 22 UTC day 32 Jan = Feb 1.
# [OK] Date.UTC 23 UTC day 0 = last day prev m...
# [OK] Date.UTC 24 UTC day -1 = second-to-last...
# [OK] Date.UTC 25 UTC leap year Feb 29 valid.
# [OK] Date.UTC 26 UTC non-leap Feb 29 = Mar 1.
# [OK] Date.UTC 27 UTC 2000 is leap year.
# [OK] Date.UTC 28 UTC 1900 is NOT leap year.
# [OK] Date.UTC 29 UTC large day offset.
# [OK] Date.UTC 30 UTC large minute offset.
# [OK] Date.UTC 31 UTC large second offset.
# [OK] Date.UTC 32 UTC large ms offset.
# [OK] Number.IsFinite 0 infinity: positive Infinity...
# [OK] Number.IsFinite 1 negative_infinity: negative...
# [OK] Number.IsFinite 2 nan: NaN returns false.
# [OK] Number.IsFinite 3 nan_from_operations: NaN fr...
# [OK] Number.IsFinite 4 finite_numbers: zeros.
# [OK] Number.IsFinite 5 finite_numbers: positive in...
# [OK] Number.IsFinite 6 finite_numbers: negative in...
# [OK] Number.IsFinite 7 finite_numbers: decimals.
# [OK] Number.IsFinite 8 finite_numbers: MAX/MIN_VALUE.
# [OK] Number.IsFinite 9 finite_numbers: safe intege...
# [OK] Number.IsFinite 10 finite_numbers: epsilon.
# [OK] Number.IsFinite 11 finite_numbers: very small.
# [OK] Number.IsFinite 12 finite_numbers: very large.
# [OK] Number.IsInteger 0 integers: zeros.
# [OK] Number.IsInteger 1 integers: positive.
# [OK] Number.IsInteger 2 integers: negative.
# [OK] Number.IsInteger 3 integers: large.
# [OK] Number.IsInteger 4 integers: decimal zero frac...
# [OK] Number.IsInteger 5 non_integers: decimals.
# [OK] Number.IsInteger 6 non_integers: small fractions.
# [OK] Number.IsInteger 7 special: NaN.
# [OK] Number.IsInteger 8 special: Infinity.
# [OK] Number.IsInteger 9 edge: MAX_VALUE is integer.
# [OK] Number.IsInteger 10 edge: MIN_VALUE is not inte...
# [OK] Number.IsInteger 11 edge: epsilon is not integer.
# [OK] Number.IsInteger 12 edge: powers of two.
# [OK] Number.IsInteger 13 edge: scientific notation.
# [OK] Number.IsNaN 0 nan_value: NaN returns true.
# [OK] Number.IsNaN 1 nan_from_operation: NaN fro...
# [OK] Number.IsNaN 2 nan_from_parseInt: NaN from...
# [OK] Number.IsNaN 3 nan_from_parseFloat: NaN fr...
# [OK] Number.IsNaN 4 finite_numbers: finite numb...
# [OK] Number.IsNaN 5 zero_values: zeros return f...
# [OK] Number.IsNaN 6 infinity_values: Infinity r...
# [OK] Number.IsNaN 7 max_min_values: extreme val...
# [OK] Number.IsNaN 8 epsilon_value: epsilon retu...
# [OK] Number.ParseFloat 0 S15.1.2.3_A1_T1: empty stri...
# [OK] Number.ParseFloat 1 S15.1.2.3_A1_T2: simple int...
# [OK] Number.ParseFloat 2 S15.1.2.3_A1_T3: non-numeri...
# [OK] Number.ParseFloat 3 S15.1.2.3_A1_T4: decimal nu...
# [OK] Number.ParseFloat 4 S15.1.2.3_A1_T5: stops at i...
# [OK] Number.ParseFloat 5 S15.1.2.3_A1_T6: whitespace...
# [OK] Number.ParseFloat 6 S15.1.2.3_A1_T7: invalid st...
# [OK] Number.ParseFloat 7 S15.1.2.3_A2_T1: leading sp...
# [OK] Number.ParseFloat 8 S15.1.2.3_A2_T2: leading tabs.
# [OK] Number.ParseFloat 9 S15.1.2.3_A2_T3: leading ne...
# [OK] Number.ParseFloat 10 S15.1.2.3_A2_T4: leading ca...
# [OK] Number.ParseFloat 11 S15.1.2.3_A2_T5: leading fo...
# [OK] Number.ParseFloat 12 S15.1.2.3_A2_T6: leading ve...
# [OK] Number.ParseFloat 13 S15.1.2.3_A2_T7: mixed whit...
# [OK] Number.ParseFloat 14 S15.1.2.3_A2_T8: non-breaki...
# [OK] Number.ParseFloat 15 S15.1.2.3_A2_T9: trailing c...
# [OK] Number.ParseFloat 16 S15.1.2.3_A2_T10: whitespac...
# [OK] Number.ParseFloat 17 S15.1.2.3_A3_T1: positive s...
# [OK] Number.ParseFloat 18 S15.1.2.3_A3_T2: negative s...
# [OK] Number.ParseFloat 19 S15.1.2.3_A3_T3: sign with ...
# [OK] Number.ParseFloat 20 S15.1.2.3_A4_T1: basic expo...
# [OK] Number.ParseFloat 21 S15.1.2.3_A4_T2: uppercase E.
# [OK] Number.ParseFloat 22 S15.1.2.3_A4_T3: negative e...
# [OK] Number.ParseFloat 23 S15.1.2.3_A4_T4: positive e...
# [OK] Number.ParseFloat 24 S15.1.2.3_A4_T5: decimal wi...
# [OK] Number.ParseFloat 25 S15.1.2.3_A4_T6: incomplete...
# [OK] Number.ParseFloat 26 S15.1.2.3_A4_T7: very large...
# [OK] Number.ParseFloat 27 S15.1.2.3_A5_T1: Infinity s...
# [OK] Number.ParseFloat 28 S15.1.2.3_A5_T2: signed Inf...
# [OK] Number.ParseFloat 29 S15.1.2.3_A5_T3: Infinity w...
# [OK] Number.ParseFloat 30 S15.1.2.3_A5_T4: Infinity w...
# [OK] Number.ParseFloat 31 S15.1.2.3_A6: multiple deci...
# [OK] Number.ParseFloat 32 S15.1.2.3_A7.5: leading dec...
# [OK] Number.ParseFloat 33 S15.1.2.3_A7.6: trailing de...
# [OK] Number.ParseFloat 34 S15.1.2.3_A7.7: decimal wit...
# [OK] Number.ParseFloat 35 misc_t1: hex not supported.
# [OK] Number.ParseFloat 36 misc_t2: binary/octal not s...
# [OK] Number.ParseFloat 37 misc_t3: leading zeros.
# [OK] Number.ParseFloat 38 misc_t4: NaN string.
# [OK] Number.ParseFloat 39 misc_t5: sign edge cases.
# [OK] Number.ParseFloat 40 misc_t6: very small numbers.
# [OK] Number.ParseFloat 41 misc_t7: negative zero.
# [OK] Number.ParseFloat 42 misc_t8: precision loss.
# [OK] Number.ParseFloat 43 misc_t9: exponent without m...
# [OK] Number.ParseFloat 44 misc_t10: comprehensive whi...
# [OK] Number.ParseFloat 45 misc_t11: Infinity case sen...
# [OK] Number.ParseFloat 46 misc_t12: sign with decimal...
# [OK] Number.ParseFloat 47 misc_t13: multiple e.
# [OK] Number.ParseFloat 48 misc_t14: exponent with dec...
# [OK] Number.ParseInt 0 S15.1.2.2_A1_T1: empty stri...
# [OK] Number.ParseInt 1 S15.1.2.2_A1_T2: whitespace...
# [OK] Number.ParseInt 2 S15.1.2.2_A1_T3: non-numeri...
# [OK] Number.ParseInt 3 S15.1.2.2_A1_T4: invalid st...
# [OK] Number.ParseInt 4 S15.1.2.2_A1_T5: sign only ...
# [OK] Number.ParseInt 5 S15.1.2.2_A1_T6: stops at i...
# [OK] Number.ParseInt 6 S15.1.2.2_A1_T7: NaN/Infini...
# [OK] Number.ParseInt 7 S15.1.2.2_A2_T1: leading sp...
# [OK] Number.ParseInt 8 S15.1.2.2_A2_T2: leading tabs.
# [OK] Number.ParseInt 9 S15.1.2.2_A2_T3: leading ne...
# [OK] Number.ParseInt 10 S15.1.2.2_A2_T4: leading ca...
# [OK] Number.ParseInt 11 S15.1.2.2_A2_T5: leading fo...
# [OK] Number.ParseInt 12 S15.1.2.2_A2_T6: leading ve...
# [OK] Number.ParseInt 13 S15.1.2.2_A2_T7: mixed whit...
# [OK] Number.ParseInt 14 S15.1.2.2_A2_T8: non-breaki...
# [OK] Number.ParseInt 15 S15.1.2.2_A2_T9: trailing w...
# [OK] Number.ParseInt 16 S15.1.2.2_A2_T10: whitespac...
# [OK] Number.ParseInt 17 S15.1.2.2_A3.1_T1: positive...
# [OK] Number.ParseInt 18 S15.1.2.2_A3.1_T2: negative...
# [OK] Number.ParseInt 19 S15.1.2.2_A3.1_T3: sign wit...
# [OK] Number.ParseInt 20 S15.1.2.2_A3.1_T4: multiple...
# [OK] Number.ParseInt 21 S15.1.2.2_A3.1_T5: sign wit...
# [OK] Number.ParseInt 22 S15.1.2.2_A3.1_T6: sign wit...
# [OK] Number.ParseInt 23 S15.1.2.2_A3.1_T7: sign alone.
# [OK] Number.ParseInt 24 S15.1.2.2_A3.2_T1: negative...
# [OK] Number.ParseInt 25 S15.1.2.2_A3.2_T2: negative...
# [OK] Number.ParseInt 26 S15.1.2.2_A3.2_T3: negative...
# [OK] Number.ParseInt 27 S15.1.2.2_A4.1_T1: radix 2.
# [OK] Number.ParseInt 28 S15.1.2.2_A4.1_T2: radix 8.
# [OK] Number.ParseInt 29 S15.1.2.2_A4.2_T1: radix 16.
# [OK] Number.ParseInt 30 S15.1.2.2_A4.2_T2: radix 36.
# [OK] Number.ParseInt 31 S15.1.2.2_A5.1_T1: 0x prefi...
# [OK] Number.ParseInt 32 S15.1.2.2_A5.2_T1: 0x with ...
# [OK] Number.ParseInt 33 S15.1.2.2_A5.2_T2: 0x with ...
# [OK] Number.ParseInt 34 S15.1.2.2_A6.1_T1: radix 0 ...
# [OK] Number.ParseInt 35 S15.1.2.2_A6.1_T2: radix 1 ...
# [OK] Number.ParseInt 36 S15.1.2.2_A6.1_T3: radix 37...
# [OK] Number.ParseInt 37 S15.1.2.2_A6.1_T4: large ra...
# [OK] Number.ParseInt 38 S15.1.2.2_A6.1_T5: negative...
# [OK] Number.ParseInt 39 S15.1.2.2_A6.1_T6: boundary...
# [OK] Number.ParseInt 40 S15.1.2.2_A7.1_T1: digits b...
# [OK] Number.ParseInt 41 S15.1.2.2_A7.1_T2: all digi...
# [OK] Number.ParseInt 42 S15.1.2.2_A7.2_T1: large nu...
# [OK] Number.ParseInt 43 S15.1.2.2_A7.2_T2: large he...
# [OK] Number.ParseInt 44 S15.1.2.2_A7.2_T3: many dig...
# [OK] Number.ParseInt 45 S15.1.2.2_A7.3_T1: leading ...
# [OK] Number.ParseInt 46 S15.1.2.2_A7.3_T2: leading ...
# [OK] Number.ParseInt 47 S15.1.2.2_A7.3_T3: only zeros.
# [OK] Number.ParseInt 48 S15.1.2.2_A8: decimal point.
# [OK] Number.ParseInt 49 misc_t1: scientific notatio...
# [OK] Number.ParseInt 50 misc_t2: unicode digits not...
# [OK] Number.ParseInt 51 misc_t3: 0o octal prefix no...
# [OK] Number.ParseInt 52 misc_t4: 0b binary prefix n...
# [OK] Number.ParseInt 53 misc_t5: single digits.
# [OK] Number.ParseInt 54 misc_t6: radix boundaries.
# [OK] Number.ParseInt 55 misc_t7: case insensitivity.
# [OK] Number.ParseInt 56 misc_t8: comprehensive whit...
# [OK] Number.ToString 0 basic: integers.
# [OK] Number.ToString 1 basic: decimals.
# [OK] Number.ToString 2 basic: special values.
# [OK] Number.ToString 3 basic: scientific notation.
# [OK] Number.ToString 4 basic: negative zero.
# [OK] Number.ToString 5 radix 2: binary.
# [OK] Number.ToString 6 radix 8: octal.
# [OK] Number.ToString 7 radix 16: hex.
# [OK] Number.ToString 8 radix 36: max.
# [OK] Number.ToString 9 radix 10: explicit.
# [OK] Number.ToString 10 negative with radix.
# [OK] Number.ToString 11 special values with radix.
# [OK] Number.ToString 12 large numbers.
# [OK] Number.ToExponential 0 basic: no digits.
# [OK] Number.ToExponential 1 digits: 0.
# [OK] Number.ToExponential 2 digits: 1.
# [OK] Number.ToExponential 3 digits: multiple.
# [OK] Number.ToExponential 4 digits: large.
# [OK] Number.ToExponential 5 special values.
# [OK] Number.ToExponential 6 special values with digits.
# [OK] Number.ToExponential 7 negative numbers.
# [OK] Number.ToExponential 8 rounding.
# [OK] Number.ToExponential 9 very small numbers.
# [OK] Number.ToExponential 10 very large numbers.
# [OK] Number.ToExponential 11 negative zero.
# [OK] Number.ToPrecision 0 basic: no precision.
# [OK] Number.ToPrecision 1 precision: 1.
# [OK] Number.ToPrecision 2 precision: 2.
# [OK] Number.ToPrecision 3 precision: multiple.
# [OK] Number.ToPrecision 4 precision: large.
# [OK] Number.ToPrecision 5 special values.
# [OK] Number.ToPrecision 6 special values with precision.
# [OK] Number.ToPrecision 7 negative numbers.
# [OK] Number.ToPrecision 8 rounding.
# [OK] Number.ToPrecision 9 zero handling.
# [OK] Number.ToPrecision 10 negative zero.
# [OK] Number.ToPrecision 11 very small numbers.
# [OK] Number.ToPrecision 12 very large numbers.
# [OK] String.Normalize 0 default form (NFC).
# [OK] String.Normalize 1 empty string.
# [OK] String.Normalize 2 ASCII unchanged.
# [OK] String.Normalize 3 NFC: basic.
# [OK] String.Normalize 4 NFC: multiple accents.
# [OK] String.Normalize 5 NFD: basic.
# [OK] String.Normalize 6 NFD: already decomposed.
# [OK] String.Normalize 7 NFKC: ligature.
# [OK] String.Normalize 8 NFKC: superscript.
# [OK] String.Normalize 9 NFKD: ligature.
# [OK] String.Normalize 10 NFKD: with accents.
# [OK] String.Normalize 11 Hangul syllable.
# [OK] String.Normalize 12 combining sequences.
# [OK] String.Search 0 basic: match.
# [OK] String.Search 1 basic: no match.
# [OK] String.Search 2 basic: match at start.
# [OK] String.Search 3 basic: match at end.
# [OK] String.Search 4 basic: empty string.
# [OK] String.Search 5 basic: empty pattern.
# [OK] String.Search 6 case: sensitive.
# [OK] String.Search 7 case: insensitive.
# [OK] String.Search 8 pattern: digit class.
# [OK] String.Search 9 pattern: word boundary.
# [OK] String.Search 10 pattern: any character.
# [OK] String.Search 11 pattern: alternation.
# [OK] String.Search 12 pattern: optional.
# [OK] String.Search 13 multiple: finds first.
# [OK] String.Search 14 multiple: global flag ignored.
# [OK] String.Search 15 unicode: characters.
# [OK] String.Search 16 unicode: emoji.
# [OK] String.Search 17 edge: special regex chars.
# [OK] String.Search 18 edge: newline.
# [OK] RegExp.NamedGroups 0 basic: date pattern.
# [OK] RegExp.NamedGroups 1 basic: single group.
# [OK] RegExp.NamedGroups 2 basic: multiple groups.
# [OK] RegExp.NamedGroups 3 access: by name.
# [OK] RegExp.NamedGroups 4 access: nonexistent.
# [OK] RegExp.NamedGroups 5 access: all groups list.
# [OK] RegExp.NamedGroups 6 pattern: with quantifiers.
# [OK] RegExp.NamedGroups 7 pattern: with alternation.
# [OK] RegExp.NamedGroups 8 edge: no named groups.
# [OK] RegExp.NamedGroups 9 edge: mixed named and unnamed.
# [OK] RegExp.DotAll 0 basic: dot without flag.
# [OK] RegExp.DotAll 1 basic: dot with flag.
# [OK] RegExp.DotAll 2 basic: flag accessor.
# [OK] RegExp.DotAll 3 line: matches LF.
# [OK] RegExp.DotAll 4 line: matches CR.
# [OK] RegExp.DotAll 5 line: matches CRLF.
# [OK] RegExp.DotAll 6 flags: with global.
# [OK] RegExp.DotAll 7 flags: with ignorecase.
# [OK] RegExp.DotAll 8 flags: with multiline.
# [OK] RegExp.DotAll 9 accessor: includes s.
# [OK] RegExp.DotAll 10 accessor: order.
# [OK] RegExp.DotAll 11 practical: multiline content.
# [OK] RegExp.DotAll 12 practical: without flag fails.
# [OK] RegExp.Unicode 0 flag: accessor.
# [OK] RegExp.Unicode 1 flag: in flags string.
# [OK] RegExp.Unicode 2 match: basic unicode.
# [OK] RegExp.Unicode 3 match: emoji.
# [OK] RegExp.Unicode 4 match: no match.
# [OK] RegExp.Unicode 5 combined: with global.
# [OK] RegExp.Unicode 6 combined: with ignorecase.
# [OK] RegExp.Unicode 7 combined: with multiline.
# [OK] RegExp.Unicode 8 property: letter category.
# [OK] RegExp.Unicode 9 astral: basic.
# [OK] RegExp.Unicode 10 astral: surrogate pairs.
# [OK] RegExp.Unicode 11 practical: international.
# [OK] RegExp.Unicode 12 practical: mixed scripts.
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/Js/test/_build/_tests/Js'.
# Test Successful in 0.909s. 814 tests run.
# (cd _build/default/packages/react/test && ./test.exe)
# Testing `React'.
# This run has ID `2C4Y5RNQ'.
#
# [OK] cloneElement 0 empty component.
# [OK] cloneElement 1 attributes component.
# [OK] cloneElement 2 ordered attributes component.
# [OK] React 0 useState.
# [OK] React 1 useSyncExternalStoreWithServer.
# [OK] React 2 useEffect.
# [OK] React 3 Children.map.
# [OK] React 4 Children.map.
# [OK] React 5 useRef.
# [OK] React 6 invalid_children.
# [OK] React 7 invalid_dangerouslySetInnerHtml.
# [OK] React 8 raw_element.
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/react/test/_build/_tests/React'.
# Test Successful in 0.002s. 12 tests run.
# (cd _build/default/packages/reactDom/test && ./test.exe)
# Testing `ReactDOM'.
# This run has ID `NQF0EHRI'.
#
# [OK] ReactServerDOM.render_html / client_with_element_props 0 ...
# [OK] ReactServerDOM.render_html / null_element 0 ...
# [OK] ReactServerDOM.render_html / element_with_dangerously_set_inner_html 0 ...
# [OK] ReactServerDOM.render_html / inner_html_element 0 ...
# [OK] ReactServerDOM.render_html / input_element_with_value 0 ...
# [OK] ReactServerDOM.render_html / upper_case_component 0 ...
# [OK] ReactServerDOM.render_html / async_component_without_promise 0 ...
# [OK] ReactServerDOM.render_html / suspense_without_promise 0 ...
# [OK] ReactServerDOM.render_html / with_sleepy_promise 0 ...
# [OK] ReactServerDOM.render_html / client_with_promise_props 0 ...
# [OK] ReactServerDOM.render_html / client_component_with_async_component 0 ...
# [OK] ReactServerDOM.render_html / async_component_with_promise 0 ...
# [OK] ReactServerDOM.render_html / suspense_with_error 0 ...
# [OK] ReactServerDOM.render_html / suspense_with_error_in_async 0 ...
# [OK] ReactServerDOM.render_html / suspense_with_error_under_lowercase 0 ...
# [OK] ReactServerDOM.render_html / error_without_suspense 0 ...
# [OK] ReactServerDOM.render_html / error_in_toplevel_in_async 0 ...
# [OK] ReactServerDOM.render_html / suspense_in_a_list_with_error 0 ...
# [OK] ReactServerDOM.render_html / server_function_as_action 0 ...
# [OK] ReactServerDOM.render_html / nested_context 0 ...
# [OK] ReactServerDOM.render_html / doctype 0 ...
# [OK] ReactServerDOM.render_html / just_an_html_node 0 ...
# [OK] ReactServerDOM.render_html / no_head_no_body_nothing_just_an_html_node 0 ...
# [OK] ReactServerDOM.render_html / html_with_no_srr_html_body 0 ...
# [OK] ReactServerDOM.render_html / html_with_a_node 0 ...
# [OK] ReactServerDOM.render_html / html_inside_a_div 0 ...
# [OK] ReactServerDOM.render_html / html_inside_a_fragment 0 ...
# [OK] ReactServerDOM.render_html / head_with_content 0 ...
# [OK] ReactServerDOM.render_html / html_with_only_a_body 0 ...
# [OK] ReactServerDOM.render_html / html_with_head_like_elements_not_in_head 0 ...
# [OK] ReactServerDOM.render_html / html_without_body_and_bootstrap_scripts 0 ...
# [OK] ReactServerDOM.render_html / html_with_body_and_bootstrap_scripts 0 ...
# [OK] ReactServerDOM.render_html / input_and_bootstrap_scripts 0 ...
# [OK] ReactServerDOM.render_html / title_and_meta_populates_to_the_head 0 ...
# [OK] ReactServerDOM.render_html / async_scripts_to_head 0 ...
# [OK] ReactServerDOM.render_html / no_async_scripts_to_remain 0 ...
# [OK] ReactServerDOM.render_html / async_scripts_gets_deduplicated 0 ...
# [OK] ReactServerDOM.render_html / async_scripts_gets_deduplicated_2 0 ...
# [OK] ReactServerDOM.render_html / link_with_rel_and_precedence 0 ...
# [OK] ReactServerDOM.render_html / links_gets_pushed_to_the_head 0 ...
# [OK] ReactServerDOM.render_html / self_closing_with_dangerously 0 ...
# [OK] ReactServerDOM.render_html / self_closing_with_dangerously_in_head 0 ...
# [OK] ReactServerDOM.render_html / upper_case_component_with_resources 0 ...
# [OK] ReactServerDOM.render_html / hoisted_elements_order_issue 0 ...
# [OK] ReactServerDOM.render_html / head_preserves_children_order 0 ...
# [OK] ReactServerDOM.render_html / html_attributes_are_preserved 0 ...
# [OK] ReactDOM.renderToStream / silly_stream 0 ...
# [OK] ReactDOM.renderToStream / render_inner_html 0 ...
# [OK] ReactDOM.renderToStream / react_use_without_suspense 0 ...
# [OK] ReactDOM.renderToStream / uppercase_component_always_throwing 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_react_use 0 ...
# [OK] ReactDOM.renderToStream / async component 0 ...
# [OK] ReactDOM.renderToStream / async_component_without_suspense 0 ...
# [OK] ReactDOM.renderToStream / suspense_without_promise 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_async_component 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_always_throwing 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_nested_suspense 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_nested_suspenses 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_nested_suspense_with_error 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_multiple_children 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_multiple_children_reordered 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_concurrent_suspenses 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_comments 0 ...
# [OK] ReactDOM.renderToStaticMarkup / html_doctype 0 ...
# [OK] ReactDOM.renderToStaticMarkup / single_empty_tag 0 ...
# [OK] ReactDOM.renderToStaticMarkup / empty_string_attribute 0 ...
# [OK] ReactDOM.renderToStaticMarkup / bool_attributes 0 ...
# [OK] ReactDOM.renderToStaticMarkup / truthy_attributes 0 ...
# [OK] ReactDOM.renderToStaticMarkup / ignore_nulls 0 ...
# [OK] ReactDOM.renderToStaticMarkup / string_attributes 0 ...
# [OK] ReactDOM.renderToStaticMarkup / self_closing_tag 0 ...
# [OK] ReactDOM.renderToStaticMarkup / dom_element_innerHtml 0 ...
# [OK] ReactDOM.renderToStaticMarkup / children 0 ...
# [OK] ReactDOM.renderToStaticMarkup / className 0 ...
# [OK] ReactDOM.renderToStaticMarkup / className_2 0 ...
# [OK] ReactDOM.renderToStaticMarkup / className_3 0 ...
# [OK] ReactDOM.renderToStaticMarkup / fragment 0 ...
# [OK] ReactDOM.renderToStaticMarkup / fragments_and_texts 0 ...
# [OK] ReactDOM.renderToStaticMarkup / ignored_attributes_on_jsx 0 ...
# [OK] ReactDOM.renderToStaticMarkup / inline_styles 0 ...
# [OK] ReactDOM.renderToStaticMarkup / encode_attributes 0 ...
# [OK] ReactDOM.renderToStaticMarkup / dom_props_should_work 0 ...
# [OK] ReactDOM.renderToStaticMarkup / dangerouslySetInnerHtml 0 ...
# [OK] ReactDOM.renderToStaticMarkup / context 0 ...
# [OK] ReactDOM.renderToStaticMarkup / use_state 0 ...
# [OK] ReactDOM.renderToStaticMarkup / use_memo 0 ...
# [OK] ReactDOM.renderToStaticMarkup / use_callback 0 ...
# [OK] ReactDOM.renderToStaticMarkup / inner_html 0 ...
# [OK] ReactDOM.renderToStaticMarkup / event 0 ...
# [OK] ReactDOM.renderToStaticMarkup / render_with_doc_type 0 ...
# [OK] ReactDOM.renderToStaticMarkup / render_svg 0 ...
# [OK] ReactDOM.renderToStaticMarkup / ref_as_prop_works 0 ...
# [OK] ReactDOM.renderToStaticMarkup / ref_as_callback_prop_works 0 ...
# [OK] ReactDOM.renderToStaticMarkup / async 0 ...
# [OK] ReactDOM.renderToStaticMarkup / lists_and_arrays 0 ...
# [OK] ReactDOM.renderToString / react_root_one_element 0 ...
# [OK] ReactDOM.renderToString / react_root_two_elements 0 ...
# [OK] ReactDOM.renderToString / text_single_node should not add <!-- --> 0 ...
# [OK] ReactDOM.renderToString / consecutives_text_nodes should add <!-- --> 0 ...
# [OK] ReactDOM.renderToString / separated_text_nodes_by_other_parents 0 ...
# [OK] ReactDOM.Style.make / generate empty style 0 ...
# [OK] ReactDOM.Style.make / generate one style 0 ...
# [OK] ReactDOM.Style.make / generate more than one style 0 ...
# [OK] ReactDOM.Style.make / unsafeAddProp should be kebab-case 0 ...
# [OK] ReactDOM.Style.make / order matters 0 ...
# [OK] ReactDOM.Style.make / order matters II 0 ...
# [OK] ReactServerDOM.render_model / null_element 0 ...
# [OK] ReactServerDOM.render_model / string_element 0 ...
# [OK] ReactServerDOM.render_model / key_renders_outside_of_props 0 ...
# [OK] ReactServerDOM.render_model / style_as_json 0 ...
# [OK] ReactServerDOM.render_model / lower_case_component 0 ...
# [OK] ReactServerDOM.render_model / lower_case_component_nested 0 ...
# [OK] ReactServerDOM.render_model / lower_case_with_children 0 ...
# [OK] ReactServerDOM.render_model / dangerouslySetInnerHtml 0 ...
# [OK] ReactServerDOM.render_model / upper_case_component 0 ...
# [OK] ReactServerDOM.render_model / upper_case_with_list 0 ...
# [OK] ReactServerDOM.render_model / upper_case_with_children 0 ...
# [OK] ReactServerDOM.render_model / suspense_without_promise 0 ...
# [OK] ReactServerDOM.render_model / suspense_with_promise 0 ...
# [OK] ReactServerDOM.render_model / suspense_with_error 0 ...
# [OK] ReactServerDOM.render_model / suspense_with_error_in_async 0 ...
# [OK] ReactServerDOM.render_model / suspense_with_immediate_promise 0 ...
# [OK] ReactServerDOM.render_model / suspense 0 ...
# [OK] ReactServerDOM.render_model / async_component_without_suspense 0 ...
# [OK] ReactServerDOM.render_model / suspense_in_a_list 0 ...
# [OK] ReactServerDOM.render_model / client_with_promise_props 0 ...
# [OK] ReactServerDOM.render_model / async_component_without_suspense_immediate 0 ...
# [OK] ReactServerDOM.render_model / mixed_server_and_client 0 ...
# [OK] ReactServerDOM.render_model / client_with_json_props 0 ...
# [OK] ReactServerDOM.render_model / client_without_props 0 ...
# [OK] ReactServerDOM.render_model / client_with_element_props 0 ...
# [OK] ReactServerDOM.render_model / client_with_server_children 0 ...
# [OK] ReactServerDOM.render_model / client_component_with_async_component 0 ...
# [OK] ReactServerDOM.render_model / act_with_simple_response 0 ...
# [OK] ReactServerDOM.render_model / env_development_adds_debug_info 0 ...
# [OK] ReactServerDOM.render_model / act_with_error 0 ...
# [OK] ReactServerDOM.render_model / error_without_suspense 0 ...
# [OK] ReactServerDOM.render_model / error_in_toplevel 0 ...
# [OK] ReactServerDOM.render_model / error_in_toplevel_in_async 0 ...
# [OK] ReactServerDOM.render_model / suspense_in_a_list_with_error 0 ...
# [OK] ReactServerDOM.render_model / suspense_with_error_under_lowercase 0 ...
# [OK] ReactServerDOM.render_model / client_component_with_resources_metadata 0 ...
# [OK] ReactServerDOM.render_model / page_with_hoisted_resources 0 ...
# [OK] ReactServerDOM.render_model / nested_context 0 ...
# [OK] ReactServerDOM.render_model / model_list_value 0 ...
# [OK] ReactServerDOM.render_model / model_value_assoc 0 ...
# [OK] Decoders / decodeReply 0 ...
# [OK] Decoders / decodeFormDataReply 0 ...
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/reactDom/test/_build/_tests/ReactDOM'.
# Test Successful in 0.751s. 148 tests run.
# (cd _build/default/packages/server-reason-react-ppx/test && ./test.exe)
# Testing `server-reason-react.ppx'.
# This run has ID `LERN1EWG'.
#
# [OK] tag 0 ...
# [OK] empty_attribute 0 ...
# [OK] bool_attribute 0 ...
# [OK] bool_attributes 0 ...
# [OK] innerhtml 0 ...
# [OK] int_attribute 0 ...
# [OK] svg_1 0 ...
# [OK] svg_2 0 ...
# [OK] booleanish_props_with_ppx 0 ...
# [OK] booleanish_props_without_ppx 0 ...
# [OK] style_attribute 0 ...
# [OK] ref_attribute 0 ...
# [OK] link_as_attribute 0 ...
# [OK] inner_html_attribute 0 ...
# [OK] inner_html_attribute_complex 0 ...
# [OK] int_opt_attr_some 0 ...
# [OK] int_opt_attribute_none 0 ...
# [OK] string_opt_attribute_some 0 ...
# [OK] string_opt_attribute_none 0 ...
# [OK] bool_opt_attribute_some 0 ...
# [OK] bool_opt_attribute_none 0 ...
# [OK] style_opt_attribute_some 0 ...
# [OK] style_opt_attribute_none 0 ...
# [OK] ref_opt_attribute_some 0 ...
# [OK] ref_opt_attribute_none 0 ...
# [OK] fragment 0 ...
# [OK] fragment_with_key 0 ...
# [OK] children_uppercase 0 ...
# [OK] children_lowercase 0 ...
# [OK] event_onClick 0 ...
# [OK] children_one_element 0 ...
# [OK] children_multiple_elements 0 ...
# [OK] create_element_variadic 0 ...
# [OK] aria_props 0 ...
# [OK] optional_prop 0 ...
# [OK] context 0 ...
# [OK] context_2 0 ...
# [OK] multiple_contexts 0 ...
# [OK] styles_attribute 0 ...
# [OK] styles_attribute_optional 0 ...
# [OK] styles_attribute_optional_some 0 ...
# [OK] styles_attribute_optional_some_with_class 0 ...
# [OK] styles_attribute_optional_some_with_style 0 ...
# [OK] styles_attribute_optional_some_with_class_and_style 0 ...
# [OK] server_function 0 ...
# [OK] server_function_reference 0 ...
# [OK] server_function_reference_args_error 0 ...
# [OK] server_function_reference_form_data 0 ...
# [OK] server_function_reference_form_data_and_args 0 ...
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/server-reason-react-ppx/test/_build/_tests/server-reason-react.ppx'.
# Test Successful in 0.008s. 49 tests run.
<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build server-reason-react 0.4.1
+-
+- The following changes have been performed
| - remove server-reason-react 0.4.1
| - install alcotest 1.9.1
| - install alcotest-lwt 1.9.1
| - install astring 0.8.5
| - install base v0.17.3
| - install camlp-streams 5.0.1
| - install dot-merlin-reader 5.6.1-504
| - install either 1.0.0
| - install fmt 0.11.0
| - install fpath 0.7.3
| - install logs 0.10.0
| - install merlin 5.6.1-504
| - install merlin-lib 5.6.1-504
| - install ocaml-index 5.6.1-504
| - install ocaml-version 4.0.3
| - install ocaml_intrinsics_kernel v0.17.1
| - install ocamlformat 0.28.1
| - install ocamlformat-lib 0.28.1
| - install ocp-indent 1.9.0
| - install re 1.14.0
| - install stdio v0.17.0
| - install uuseg 17.0.0
+-
<><> ocp-indent.1.9.0 installed successfully ><><><><><><><><><><><><><><><><><>
=> This package requires additional configuration for use in editors. Install package 'user-setup', or manually:
* for Emacs, add these lines to ~/.emacs:
(add-to-list 'load-path "/home/opam/.opam/5.4/share/emacs/site-lisp")
(require 'ocp-indent)
* for Vim, add this line to ~/.vimrc:
set rtp^="/home/opam/.opam/5.4/share/ocp-indent/vim"
<><> merlin.5.6.1-504 installed successfully ><><><><><><><><><><><><><><><><><>
=> merlin installed.
Quick setup for VIM
-------------------
Append this to your .vimrc to add merlin to vim's runtime-path:
let g:opamshare = substitute(system('opam var share'),'\n$','','''')
execute "set rtp+=" . g:opamshare . "/merlin/vim"
Also run the following line in vim to index the documentation:
:execute "helptags " . g:opamshare . "/merlin/vim/doc"
Quick setup for EMACS
-------------------
Add opam emacs directory to your load-path by appending this to your .emacs:
(let ((opam-share (ignore-errors (car (process-lines "opam" "var" "share")))))
(when (and opam-share (file-directory-p opam-share))
;; Register Merlin
(add-to-list 'load-path (expand-file-name "emacs/site-lisp" opam-share))
(autoload 'merlin-mode "merlin" nil t nil)
;; Automatically start it in OCaml buffers
(add-hook 'tuareg-mode-hook 'merlin-mode t)
(add-hook 'caml-mode-hook 'merlin-mode t)
;; Use opam switch to lookup ocamlmerlin binary
(setq merlin-command 'opam)
;; To easily change opam switches within a given Emacs session, you can
;; install the minor mode https://github.com/ProofGeneral/opam-switch-mode
;; and use one of its "OPSW" menus.
))
Take a look at https://github.com/ocaml/merlin for more information
Quick setup with opam-user-setup
--------------------------------
Opam-user-setup support Merlin.
$ opam user-setup install
should take care of basic setup.
See https://github.com/OCamlPro/opam-user-setup
# To update the current shell environment, run: eval $(opam env)
The former state can be restored with:
/usr/bin/opam switch import "/home/opam/.opam/5.4/.opam-switch/backup/state-20260320102547.export"
Or you can retry to install your package selection with:
/usr/bin/opam install --restore
2026-03-20 10:27.23 ---> saved as "a5a05daf005c9008d3f8922e9f6df72225e431531bc4651052978946210d28fe"
/home/opam: (run (shell "opam reinstall --with-test --verbose server-reason-react.0.4.1;\
\n res=$?;\
\n test \"$res\" != 31 && exit \"$res\";\
\n export OPAMCLI=2.0;\
\n build_dir=$(opam var prefix)/.opam-switch/build;\
\n failed=$(ls \"$build_dir\");\
\n partial_fails=\"\";\
\n for pkg in $failed; do\
\n if opam show -f x-ci-accept-failures: \"$pkg\" | grep -qF \"\\\"debian-13\\\"\"; then\
\n echo \"A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.\";\
\n fi;\
\n test \"$pkg\" != 'server-reason-react.0.4.1' && partial_fails=\"$partial_fails $pkg\";\
\n done;\
\n test \"${partial_fails}\" != \"\" && echo \"opam-repo-ci detected dependencies failing: ${partial_fails}\";\
\n exit 1"))
server-reason-react.0.4.1 is not installed. Install it? [Y/n] y
The following actions will be performed:
=== install 1 package
- install server-reason-react 0.4.1
<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
Processing 1/3: [server-reason-react.0.4.1: extract]
-> retrieved server-reason-react.0.4.1 (cached)
Processing 2/3: [server-reason-react: dune build]
+ /home/opam/.opam/opam-init/hooks/sandbox.sh "build" "dune" "build" "-p" "server-reason-react" "-j" "71" "@install" "@runtest" (CWD=/home/opam/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1)
- (cd _build/default/packages/melange.ppx/xxhash && ./test_xxh64.exe)
- Testing `XXH64'.
- This run has ID `LHLRP45B'.
-
- [OK] hash 0 "".
- [OK] hash 1 "a".
- [OK] hash 2 "as".
- [OK] hash 3 "asd".
- [OK] hash 4 "asdf".
- [OK] hash 5 "abc".
- [OK] hash 6 "abc".
- [OK] hash 7 "abcd".
- [OK] hash 8 "abcde".
- [OK] hash 9 "abcdef".
- [OK] hash 10 "abcdefg".
- [OK] hash 11 "abcdefgh".
- [OK] hash 12 "abcdefghi".
- [OK] hash 13 "abcdefghij".
- [OK] hash 14 "abcdefghijklmnopqrstuvwxyz012345".
- [OK] hash 15 "abcdefghijklmnopqrstuvwxyz0123456...
- [OK] hash 16 "Call me Ishmael. Some years ago--...
- [OK] hash 17 "Lorem ipsum dolor sit amet, conse...
- [OK] hash · to_hex 0 "I want an unsigned 64-bit seed!".
-
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/melange.ppx/xxhash/_build/_tests/XXH64'.
- Test Successful in 0.003s. 19 tests run.
- (cd _build/default/packages/url/test && ./test_native.exe)
- Testing `URL'.
- This run has ID `7GOX32GR'.
-
- [OK] URL 0 make.
- [OK] URL 1 makeWith.
- [OK] URL 2 makeWith and relative base.
- [OK] URL 3 host.
- [OK] URL 4 hostname.
- [OK] URL 5 setHostname.
- [OK] URL 6 pathname.
- [OK] URL 7 origin.
- [OK] URL 8 href.
- [OK] URL 9 port.
- [OK] URL 10 hash.
- [OK] URL 11 setHash.
- [OK] URL 12 search.
- [OK] URL 13 protocol.
- [OK] URL 14 setProtocol.
- [OK] URL 15 username.
- [OK] URL 16 setUsername.
- [OK] URL 17 password.
- [OK] URL 18 setPassword.
- [OK] URL 19 searchParams.
- [OK] URL.SearchParams 0 has.
- [OK] URL.SearchParams 1 get.
- [OK] URL.SearchParams 2 getAll.
- [OK] URL.SearchParams 3 keys.
- [OK] URL.SearchParams 4 values.
- [OK] URL.SearchParams 5 entries.
- [OK] URL.SearchParams 6 toString.
-
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/url/test/_build/_tests/URL'.
- Test Successful in 0.014s. 27 tests run.
- (cd _build/default/packages/Belt/test && ./test.exe)
- Testing `Belt'.
- This run has ID `DFK9I3MU'.
-
- [OK] Records 0 eq.
- [OK] Array 0 truncateToLengthUnsafe.
- [OK] Array 1 makeUninitializedUnsafe.
- [OK] Array 2 length.
- [OK] List 0 eq.
- [OK] List 1 map.
- [OK] List 2 mapU.
- [OK] List 3 mapWithIndex.
- [OK] List 4 concat.
- [OK] Int 0 fromString.
- [OK] Int 1 toString.
- [OK] Option 0 keep_1.
- [OK] Option 1 keep_2.
- [OK] Option 2 keep_3.
-
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/Belt/test/_build/_tests/Belt'.
- Test Successful in 0.002s. 14 tests run.
- (cd _build/default/packages/expand-styles-attribute/test && ./test.exe)
- Testing `expand_styles_attribute'.
- This run has ID `6DC7K672'.
-
- [OK] expand_styles_prop_on_attributes 0
- [OK] expand_styles_with_previous_className 0
- [OK] expand_styles_with_previous_style 0
- [OK] expand_styles_optional 0
-
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/expand-styles-attribute/test/_build/_tests/expand_styles_attribute'.
- Test Successful in 0.001s. 4 tests run.
- File "packages/browser-ppx/tests/at_browser_only.t", line 1, characters 0-0:
- /usr/bin/git --no-pager diff --no-index --color=always -u _build/default/packages/browser-ppx/tests/at_browser_only.t _build/default/packages/browser-ppx/tests/at_browser_only.t.corrected
- diff --git a/_build/default/packages/browser-ppx/tests/at_browser_only.t b/_build/default/packages/browser-ppx/tests/at_browser_only.t.corrected
- index 3fb8d6e..1af9596 100644
- --- a/_build/default/packages/browser-ppx/tests/at_browser_only.t
- +++ b/_build/default/packages/browser-ppx/tests/at_browser_only.t.corrected
- @@ -230,7 +230,6 @@ Ppat_constraint
- let foo ~on:((on [@browser_only]) : unit -> string)
- ?opt:((opt [@browser_only]) = 42) =
- 0
- -
- $ ./standalone.exe -impl input_constr.ml | ocamlformat - --enable-outside-detected-project --impl
- let foo ~on:_ ?opt:(_ = 42) = 0
-
- (cd _build/default/packages/Js/test && ./test.exe)
- Testing `Js'.
- This run has ID `65S12KDR'.
-
- [OK] Js.Global 0 decodeURI - ascii and spaces.
- [OK] Js.Global 1 decodeURI - reserved charac...
- [OK] Js.Global 2 decodeURI - alphabets.
- [OK] Js.Global 3 decodeURI - unicode charact...
- [OK] Js.Global 4 decodeURI - mixed percent e...
- [OK] Js.Global 5 decodeURI - complete URLs.
- [OK] Js.Global 6 decodeURI - overencoded seq...
- [OK] Js.Global 7 decodeURI - special charact...
- [OK] Js.Global 8 decodeURI - beyond U+10FFFF.
- [OK] Js.Global 9 decodeURI - partial sequences.
- [OK] Js.Global 10 encodeURI - ascii and spaces.
- [OK] Js.Global 11 encodeURI - reserved charac...
- [OK] Js.Global 12 encodeURI - alphabets.
- [OK] Js.Global 13 encodeURI - unicode charact...
- [OK] Js.Global 14 encodeURI - complete URLs.
- [OK] Js.Global 15 encodeURI - special charact...
- [OK] Js.Global 16 encodeURI - combining chara...
- [OK] Js.Global 17 encodeURI - Surrogate pairs.
- [OK] Js.Global 18 encodeURIComponent.
- [OK] Js.Promise 0 resolve.
- [OK] Js.Promise 1 all.
- [OK] Js.Promise 2 all_async.
- [OK] Js.Promise 3 race_async.
- [OK] Js.Float 0 string_of_float.
- [OK] Js.Float 1 toString.
- [OK] Js.Float 2 fromString.
- [OK] Js.Float 3 toFixed.
- [OK] Js.String 0 make.
- [OK] Js.String 1 length.
- [OK] Js.String 2 get.
- [OK] Js.String 3 fromCharCode.
- [OK] Js.String 4 fromCharCodeMany.
- [OK] Js.String 5 fromCodePoint.
- [OK] Js.String 6 fromCodePointMany.
- [OK] Js.String 7 charAt.
- [OK] Js.String 8 charCodeAt.
- [OK] Js.String 9 codePointAt.
- [OK] Js.String 10 concat.
- [OK] Js.String 11 concatMany.
- [OK] Js.String 12 endsWith.
- [OK] Js.String 13 includes.
- [OK] Js.String 14 indexOf.
- [OK] Js.String 15 lastIndexOf.
- [OK] Js.String 16 match.
- [OK] Js.String 17 match 0.
- [OK] Js.String 18 repeat.
- [OK] Js.String 19 replace.
- [OK] Js.String 20 replaceByRe.
- [OK] Js.String 21 replaceByRe with references...
- [OK] Js.String 22 replaceByRe with $1 capturi...
- [OK] Js.String 23 replaceByRe with multiple c...
- [OK] Js.String 24 replaceByRe with $&.
- [OK] Js.String 25 replaceByRe with $$.
- [OK] Js.String 26 replaceByRe with global.
- [OK] Js.String 27 unsafeReplaceBy0.
- [OK] Js.String 28 unsafeReplaceBy1.
- [OK] Js.String 29 unsafeReplaceBy2.
- [OK] Js.String 30 search.
- [OK] Js.String 31 slice.
- [OK] Js.String 32 split.
- [OK] Js.String 33 splitAtMost.
- [OK] Js.String 34 splitByRe.
- [OK] Js.String 35 startsWith.
- [OK] Js.String 36 substr.
- [OK] Js.String 37 substrAtMost.
- [OK] Js.String 38 substring.
- [OK] Js.String 39 toLowerCase.
- [OK] Js.String 40 toUpperCase.
- [OK] Js.String 41 trim.
- [OK] Js.String 42 anchor.
- [OK] Js.String 43 link.
- [OK] Js.Re 0 captures.
- [OK] Js.Re 1 exec.
- [OK] Js.Re 2 exec with global.
- [OK] Js.Re 3 modifier: end ($).
- [OK] Js.Re 4 modifier: more than one (+).
- [OK] Js.Re 5 global (g) and caseless (i).
- [OK] Js.Re 6 modifier: or ([]).
- [OK] Js.Re 7 backreferencing.
- [OK] Js.Re 8 http|s example.
- [OK] Js.Re 9 index.
- [OK] Js.Re 10 lastIndex.
- [OK] Js.Re 11 input.
- [OK] Js.Dict 0 empty.
- [OK] Js.Dict 1 get.
- [OK] Js.Dict 2 get from missing property.
- [OK] Js.Dict 3 unsafe_get.
- [OK] Js.Dict 4 set.
- [OK] Js.Dict 5 keys.
- [OK] Js.Dict 6 keys duplicated.
- [OK] Js.Dict 7 entries.
- [OK] Js.Dict 8 values.
- [OK] Js.Dict 9 values duplicated.
- [OK] Js.Dict 10 fromList - [].
- [OK] Js.Dict 11 fromList.
- [OK] Js.Dict 12 fromArray - [].
- [OK] Js.Dict 13 fromArray.
- [OK] Js.Dict 14 map.
- [OK] BigInt.Arithmetic 0 add: positive + positive.
- [OK] BigInt.Arithmetic 1 add: negative + negative.
- [OK] BigInt.Arithmetic 2 add: positive + negative.
- [OK] BigInt.Arithmetic 3 add: with zero.
- [OK] BigInt.Arithmetic 4 add: large numbers.
- [OK] BigInt.Arithmetic 5 sub: positive result.
- [OK] BigInt.Arithmetic 6 sub: negative result.
- [OK] BigInt.Arithmetic 7 sub: with zero.
- [OK] BigInt.Arithmetic 8 sub: self.
- [OK] BigInt.Arithmetic 9 mul: positive * positive.
- [OK] BigInt.Arithmetic 10 mul: negative * positive.
- [OK] BigInt.Arithmetic 11 mul: negative * negative.
- [OK] BigInt.Arithmetic 12 mul: with zero.
- [OK] BigInt.Arithmetic 13 mul: with one.
- [OK] BigInt.Arithmetic 14 mul: 3^100.
- [OK] BigInt.Arithmetic 15 div: exact division.
- [OK] BigInt.Arithmetic 16 div: truncate positive.
- [OK] BigInt.Arithmetic 17 div: truncate negative (tow...
- [OK] BigInt.Arithmetic 18 div: negative divisor.
- [OK] BigInt.Arithmetic 19 div: both negative.
- [OK] BigInt.Arithmetic 20 div: large numbers.
- [OK] BigInt.Arithmetic 21 div: large negative.
- [OK] BigInt.Arithmetic 22 div: by zero throws.
- [OK] BigInt.Arithmetic 23 rem: positive % positive.
- [OK] BigInt.Arithmetic 24 rem: negative dividend.
- [OK] BigInt.Arithmetic 25 rem: negative divisor.
- [OK] BigInt.Arithmetic 26 rem: both negative.
- [OK] BigInt.Arithmetic 27 rem: large numbers.
- [OK] BigInt.Arithmetic 28 rem: large positive.
- [OK] BigInt.Arithmetic 29 rem: by zero throws.
- [OK] BigInt.Arithmetic 30 pow: exponent zero.
- [OK] BigInt.Arithmetic 31 pow: exponent one.
- [OK] BigInt.Arithmetic 32 pow: 2^10.
- [OK] BigInt.Arithmetic 33 pow: (-2)^127.
- [OK] BigInt.Arithmetic 34 pow: 2^127.
- [OK] BigInt.Arithmetic 35 pow: negative exponent throws.
- [OK] BigInt.Arithmetic 36 pow: (-256)^11.
- [OK] BigInt.Arithmetic 37 pow: 7^20.
- [OK] BigInt.Arithmetic 38 neg: positive.
- [OK] BigInt.Arithmetic 39 neg: negative.
- [OK] BigInt.Arithmetic 40 neg: zero.
- [OK] BigInt.Arithmetic 41 abs: positive.
- [OK] BigInt.Arithmetic 42 abs: negative.
- [OK] BigInt.Arithmetic 43 abs: zero.
- [OK] BigInt.Bitwise 0 and: basic.
- [OK] BigInt.Bitwise 1 and: with zero.
- [OK] BigInt.Bitwise 2 and: with all ones.
- [OK] BigInt.Bitwise 3 and: negative (two's comple...
- [OK] BigInt.Bitwise 4 or: basic.
- [OK] BigInt.Bitwise 5 or: with zero.
- [OK] BigInt.Bitwise 6 or: disjoint bits.
- [OK] BigInt.Bitwise 7 xor: basic.
- [OK] BigInt.Bitwise 8 xor: same value.
- [OK] BigInt.Bitwise 9 xor: with zero.
- [OK] BigInt.Bitwise 10 not: basic.
- [OK] BigInt.Bitwise 11 not: zero.
- [OK] BigInt.Bitwise 12 not: -1.
- [OK] BigInt.Bitwise 13 not: positive.
- [OK] BigInt.Bitwise 14 not: negative.
- [OK] BigInt.Bitwise 15 shift_left: basic.
- [OK] BigInt.Bitwise 16 shift_left: 1 << 31.
- [OK] BigInt.Bitwise 17 shift_left: 1 << 32.
- [OK] BigInt.Bitwise 18 shift_left: 1 << 100.
- [OK] BigInt.Bitwise 19 shift_left: large number.
- [OK] BigInt.Bitwise 20 shift_left: negative number.
- [OK] BigInt.Bitwise 21 shift_left: by zero.
- [OK] BigInt.Bitwise 22 shift_right: basic.
- [OK] BigInt.Bitwise 23 shift_right: large number.
- [OK] BigInt.Bitwise 24 shift_right: negative (arit...
- [OK] BigInt.Bitwise 25 shift_right: by zero.
- [OK] BigInt.Bitwise 26 shift_right: small negative.
- [OK] BigInt.Comparison 0 equal: same value.
- [OK] BigInt.Comparison 1 equal: different values.
- [OK] BigInt.Comparison 2 equal: negative values.
- [OK] BigInt.Comparison 3 equal: opposite signs.
- [OK] BigInt.Comparison 4 equal: zeros.
- [OK] BigInt.Comparison 5 equal: large same.
- [OK] BigInt.Comparison 6 equal: large different.
- [OK] BigInt.Comparison 7 compare: less.
- [OK] BigInt.Comparison 8 compare: greater.
- [OK] BigInt.Comparison 9 compare: equal.
- [OK] BigInt.Comparison 10 compare: negative.
- [OK] BigInt.Comparison 11 compare: mixed sign.
- [OK] BigInt.Comparison 12 lt: true.
- [OK] BigInt.Comparison 13 lt: false (greater).
- [OK] BigInt.Comparison 14 lt: false (equal).
- [OK] BigInt.Comparison 15 lt: negative.
- [OK] BigInt.Comparison 16 le: true (less).
- [OK] BigInt.Comparison 17 le: true (equal).
- [OK] BigInt.Comparison 18 le: false.
- [OK] BigInt.Comparison 19 gt: true.
- [OK] BigInt.Comparison 20 gt: false (less).
- [OK] BigInt.Comparison 21 gt: false (equal).
- [OK] BigInt.Comparison 22 ge: true (greater).
- [OK] BigInt.Comparison 23 ge: true (equal).
- [OK] BigInt.Comparison 24 ge: false.
- [OK] BigInt.Constructor 0 from_string: empty string r...
- [OK] BigInt.Constructor 1 from_string: zero.
- [OK] BigInt.Constructor 2 from_string: positive decimal.
- [OK] BigInt.Constructor 3 from_string: negative decimal.
- [OK] BigInt.Constructor 4 from_string: positive sign.
- [OK] BigInt.Constructor 5 from_string: large number.
- [OK] BigInt.Constructor 6 from_string: very large num...
- [OK] BigInt.Constructor 7 from_string: leading whites...
- [OK] BigInt.Constructor 8 from_string: trailing white...
- [OK] BigInt.Constructor 9 from_string: both whitespace.
- [OK] BigInt.Constructor 10 from_string: tabs.
- [OK] BigInt.Constructor 11 from_string: newlines.
- [OK] BigInt.Constructor 12 from_string: hex lowercase.
- [OK] BigInt.Constructor 13 from_string: hex uppercase.
- [OK] BigInt.Constructor 14 from_string: hex large.
- [OK] BigInt.Constructor 15 from_string: hex negative.
- [OK] BigInt.Constructor 16 from_string: binary lowercase.
- [OK] BigInt.Constructor 17 from_string: binary uppercase.
- [OK] BigInt.Constructor 18 from_string: octal lowercase.
- [OK] BigInt.Constructor 19 from_string: octal uppercase.
- [OK] BigInt.Constructor 20 from_string: sign only throws.
- [OK] BigInt.Constructor 21 from_string: trailing chars...
- [OK] BigInt.Constructor 22 from_string: null char throws.
- [OK] BigInt.Constructor 23 from_string: decimal point ...
- [OK] BigInt.Constructor 24 from_string: float notation...
- [OK] BigInt.Constructor 25 from_int: zero.
- [OK] BigInt.Constructor 26 from_int: positive.
- [OK] BigInt.Constructor 27 from_int: negative.
- [OK] BigInt.Constructor 28 from_int: max_int.
- [OK] BigInt.Constructor 29 from_int: min_int.
- [OK] BigInt.Constructor 30 from_int64: large positive.
- [OK] BigInt.Constructor 31 from_int64: large negative.
- [OK] BigInt.Conversion 0 toString: zero.
- [OK] BigInt.Conversion 1 toString: positive.
- [OK] BigInt.Conversion 2 toString: negative.
- [OK] BigInt.Conversion 3 toString: large (1 << 100).
- [OK] BigInt.Conversion 4 toString: radix 2.
- [OK] BigInt.Conversion 5 toString: radix 8.
- [OK] BigInt.Conversion 6 toString: radix 16.
- [OK] BigInt.Conversion 7 toString: radix 36.
- [OK] BigInt.Conversion 8 toString: radix 16 large.
- [OK] BigInt.Conversion 9 toFloat: small.
- [OK] BigInt.Conversion 10 toFloat: negative.
- [OK] BigInt.Conversion 11 toFloat: zero.
- [OK] BigInt.Conversion 12 toFloat: MAX_SAFE_INTEGER.
- [OK] BigInt.Conversion 13 toFloat: large (0xfffffffff...
- [OK] BigInt.Conversion 14 toFloat: large negative.
- [OK] BigInt.Conversion 15 asIntN: positive fits.
- [OK] BigInt.Conversion 16 asIntN: positive wraps.
- [OK] BigInt.Conversion 17 asIntN: 255 -> -1.
- [OK] BigInt.Conversion 18 asIntN: negative fits.
- [OK] BigInt.Conversion 19 asIntN: negative wraps.
- [OK] BigInt.Conversion 20 asIntN: 64 bits.
- [OK] BigInt.Conversion 21 asUintN: fits.
- [OK] BigInt.Conversion 22 asUintN: wraps to 0.
- [OK] BigInt.Conversion 23 asUintN: wraps to 1.
- [OK] BigInt.Conversion 24 asUintN: negative wraps.
- [OK] BigInt.Conversion 25 asUintN: 64 bits.
- [OK] BigInt.AsIntN 0 asIntN 0 bits.
- [OK] BigInt.AsIntN 1 asIntN 1 bit.
- [OK] BigInt.AsIntN 2 asIntN 8 bit.
- [OK] BigInt.AsIntN 3 asIntN 16 bit.
- [OK] BigInt.AsIntN 4 asIntN 32 bit.
- [OK] BigInt.AsIntN 5 asIntN 64 bit.
- [OK] BigInt.AsIntN 6 asIntN preserves small posi...
- [OK] BigInt.AsIntN 7 asIntN preserves small nega...
- [OK] BigInt.AsIntN 8 asIntN wrapping.
- [OK] BigInt.AsIntN 9 asIntN large bits.
- [OK] BigInt.AsIntN 10 asIntN negative input.
- [OK] BigInt.AsIntN 11 asIntN 2-bit boundary.
- [OK] BigInt.AsIntN 12 asIntN 3-bit boundary.
- [OK] BigInt.AsIntN 13 asIntN 4-bit boundary.
- [OK] BigInt.AsIntN 14 asIntN identity for zero.
- [OK] BigInt.AsIntN 15 asIntN minus one.
- [OK] BigInt.AsUintN 0 asUintN 0 bits.
- [OK] BigInt.AsUintN 1 asUintN 1 bit.
- [OK] BigInt.AsUintN 2 asUintN 8 bit.
- [OK] BigInt.AsUintN 3 asUintN 16 bit.
- [OK] BigInt.AsUintN 4 asUintN 32 bit.
- [OK] BigInt.AsUintN 5 asUintN 64 bit.
- [OK] BigInt.AsUintN 6 asUintN preserves small val...
- [OK] BigInt.AsUintN 7 asUintN wrapping.
- [OK] BigInt.AsUintN 8 asUintN large bits.
- [OK] BigInt.AsUintN 9 asUintN negative becomes po...
- [OK] BigInt.AsUintN 10 asUintN 2-bit boundary.
- [OK] BigInt.AsUintN 11 asUintN 3-bit boundary.
- [OK] BigInt.AsUintN 12 asUintN 4-bit boundary.
- [OK] BigInt.AsUintN 13 asUintN identity for zero.
- [OK] BigInt.AsUintN 14 asUintN one.
- [OK] BigInt.AsUintN 15 asUintN power of two.
- [OK] BigInt.AsUintN 16 asUintN power of two minus ...
- [OK] BigInt.Prototype 0 toString default radix.
- [OK] BigInt.Prototype 1 toString radix 2 (binary).
- [OK] BigInt.Prototype 2 toString radix 8 (octal).
- [OK] BigInt.Prototype 3 toString radix 10 (decimal).
- [OK] BigInt.Prototype 4 toString radix 16 (hex).
- [OK] BigInt.Prototype 5 toString radix 36 (max).
- [OK] BigInt.Prototype 6 toString various radixes.
- [OK] BigInt.Prototype 7 toString large numbers.
- [OK] BigInt.Prototype 8 toString negative large.
- [OK] BigInt.Prototype 9 toString zero all radixes.
- [OK] BigInt.Prototype 10 to_float small.
- [OK] BigInt.Prototype 11 to_float large.
- [OK] BigInt.Prototype 12 to_float very large.
- [OK] BigInt.Prototype 13 of_string edge cases.
- [OK] BigInt.Prototype 14 of_string hex.
- [OK] BigInt.Prototype 15 of_string binary.
- [OK] BigInt.Prototype 16 of_string octal.
- [OK] BigInt.Prototype 17 compare equal.
- [OK] BigInt.Prototype 18 compare less.
- [OK] BigInt.Prototype 19 compare greater.
- [OK] BigInt.Prototype 20 compare negative.
- [OK] BigInt.Prototype 21 compare large.
- [OK] Date.Getters 0 getTime returns epoch ms.
- [OK] Date.Getters 1 getTime NaN for invalid date.
- [OK] Date.Getters 2 getUTCFullYear.
- [OK] Date.Getters 3 getUTCMonth.
- [OK] Date.Getters 4 getUTCDate.
- [OK] Date.Getters 5 getUTCDay.
- [OK] Date.Getters 6 getUTCHours.
- [OK] Date.Getters 7 getUTCMinutes.
- [OK] Date.Getters 8 getUTCSeconds.
- [OK] Date.Getters 9 getUTCMilliseconds.
- [OK] Date.Getters 10 UTC getters at epoch.
- [OK] Date.Getters 11 UTC getters before epoch.
- [OK] Date.Getters 12 UTC getters at Y2K.
- [OK] Date.Getters 13 UTC getters on leap day.
- [OK] Date.Getters 14 getUTCFullYear NaN.
- [OK] Date.Getters 15 getUTCMonth NaN.
- [OK] Date.Getters 16 getUTCDate NaN.
- [OK] Date.Getters 17 getUTCDay NaN.
- [OK] Date.Getters 18 getUTCHours NaN.
- [OK] Date.Getters 19 getUTCMinutes NaN.
- [OK] Date.Getters 20 getUTCSeconds NaN.
- [OK] Date.Getters 21 getUTCMilliseconds NaN.
- [OK] Date.Getters 22 new year transition.
- [OK] Date.Getters 23 month lengths.
- [OK] Date.LocalGetters 0 getTime basic.
- [OK] Date.LocalGetters 1 getTime epoch.
- [OK] Date.LocalGetters 2 getTime negative.
- [OK] Date.LocalGetters 3 getTime NaN.
- [OK] Date.LocalGetters 4 valueOf basic.
- [OK] Date.LocalGetters 5 valueOf epoch.
- [OK] Date.LocalGetters 6 valueOf NaN.
- [OK] Date.LocalGetters 7 valueOf equals getTime.
- [OK] Date.LocalGetters 8 getUTCFullYear 2017.
- [OK] Date.LocalGetters 9 getUTCFullYear 1970 (epoch).
- [OK] Date.LocalGetters 10 getUTCFullYear 1969.
- [OK] Date.LocalGetters 11 getUTCFullYear NaN.
- [OK] Date.LocalGetters 12 getUTCFullYear Y2K.
- [OK] Date.LocalGetters 13 getUTCFullYear leap year.
- [OK] Date.LocalGetters 14 getUTCMonth January (0).
- [OK] Date.LocalGetters 15 getUTCMonth December (11).
- [OK] Date.LocalGetters 16 getUTCMonth NaN.
- [OK] Date.LocalGetters 17 getUTCMonth epoch.
- [OK] Date.LocalGetters 18 getUTCDate first.
- [OK] Date.LocalGetters 19 getUTCDate 31st.
- [OK] Date.LocalGetters 20 getUTCDate NaN.
- [OK] Date.LocalGetters 21 getUTCDate epoch.
- [OK] Date.LocalGetters 22 getUTCDay Thursday (epoch).
- [OK] Date.LocalGetters 23 getUTCDay Sunday.
- [OK] Date.LocalGetters 24 getUTCDay Saturday.
- [OK] Date.LocalGetters 25 getUTCDay NaN.
- [OK] Date.LocalGetters 26 getUTCHours zero.
- [OK] Date.LocalGetters 27 getUTCHours 23.
- [OK] Date.LocalGetters 28 getUTCHours NaN.
- [OK] Date.LocalGetters 29 getUTCHours epoch.
- [OK] Date.LocalGetters 30 getUTCMinutes zero.
- [OK] Date.LocalGetters 31 getUTCMinutes 59.
- [OK] Date.LocalGetters 32 getUTCMinutes NaN.
- [OK] Date.LocalGetters 33 getUTCSeconds zero.
- [OK] Date.LocalGetters 34 getUTCSeconds 59.
- [OK] Date.LocalGetters 35 getUTCSeconds NaN.
- [OK] Date.LocalGetters 36 getUTCMilliseconds zero.
- [OK] Date.LocalGetters 37 getUTCMilliseconds 999.
- [OK] Date.LocalGetters 38 getUTCMilliseconds NaN.
- [OK] Date.LocalGetters 39 getUTCMilliseconds middle.
- [OK] Date.LocalGetters 40 getTimezoneOffset returns n...
- [OK] Date.LocalGetters 41 getTimezoneOffset NaN.
- [OK] Date.LocalGetters 42 getTimezoneOffset in valid ...
- [OK] Date.LocalGetters 43 local getters consistent.
- [OK] Date.LocalGetters 44 local getters NaN.
- [OK] Date.LocalGetters 45 getDay range 0-6.
- [OK] Date.LocalGetters 46 getters large positive date.
- [OK] Date.LocalGetters 47 getters large negative date.
- [OK] Date.LocalGetters 48 getters boundary milliseconds.
- [OK] Date.Setters 0 setTime basic.
- [OK] Date.Setters 1 setTime epoch.
- [OK] Date.Setters 2 setTime negative.
- [OK] Date.Setters 3 setTime NaN value.
- [OK] Date.Setters 4 setTime on NaN date.
- [OK] Date.Setters 5 setUTCMilliseconds basic.
- [OK] Date.Setters 6 setUTCMilliseconds overflow.
- [OK] Date.Setters 7 setUTCMilliseconds negative.
- [OK] Date.Setters 8 setUTCMilliseconds NaN.
- [OK] Date.Setters 9 setUTCSeconds basic.
- [OK] Date.Setters 10 setUTCSeconds overflow.
- [OK] Date.Setters 11 setUTCSeconds with ms.
- [OK] Date.Setters 12 setUTCSeconds NaN.
- [OK] Date.Setters 13 setUTCMinutes basic.
- [OK] Date.Setters 14 setUTCMinutes overflow.
- [OK] Date.Setters 15 setUTCMinutes with seconds.
- [OK] Date.Setters 16 setUTCMinutes with seconds ...
- [OK] Date.Setters 17 setUTCMinutes NaN.
- [OK] Date.Setters 18 setUTCHours basic.
- [OK] Date.Setters 19 setUTCHours overflow.
- [OK] Date.Setters 20 setUTCHours with minutes.
- [OK] Date.Setters 21 setUTCHours with minutes an...
- [OK] Date.Setters 22 setUTCHours all components.
- [OK] Date.Setters 23 setUTCHours NaN.
- [OK] Date.Setters 24 setUTCDate basic.
- [OK] Date.Setters 25 setUTCDate overflow.
- [OK] Date.Setters 26 setUTCDate zero.
- [OK] Date.Setters 27 setUTCDate negative.
- [OK] Date.Setters 28 setUTCDate NaN.
- [OK] Date.Setters 29 setUTCMonth basic.
- [OK] Date.Setters 30 setUTCMonth overflow.
- [OK] Date.Setters 31 setUTCMonth negative.
- [OK] Date.Setters 32 setUTCMonth with date.
- [OK] Date.Setters 33 setUTCMonth NaN.
- [OK] Date.Setters 34 setUTCFullYear basic.
- [OK] Date.Setters 35 setUTCFullYear with month.
- [OK] Date.Setters 36 setUTCFullYear with month a...
- [OK] Date.Setters 37 setUTCFullYear leap to non-...
- [OK] Date.Setters 38 setUTCFullYear NaN.
- [OK] Date.Setters 39 setMilliseconds basic.
- [OK] Date.Setters 40 setSeconds basic.
- [OK] Date.Setters 41 setMinutes basic.
- [OK] Date.Setters 42 setHours basic.
- [OK] Date.Setters 43 setDate basic.
- [OK] Date.Setters 44 setMonth basic.
- [OK] Date.Setters 45 setFullYear basic.
- [OK] Date.Setters 46 setSeconds with ms.
- [OK] Date.Setters 47 setMinutes with seconds.
- [OK] Date.Setters 48 setMinutes with seconds and...
- [OK] Date.Setters 49 setHours with minutes.
- [OK] Date.Setters 50 setHours with minutes and s...
- [OK] Date.Setters 51 setHours all components.
- [OK] Date.Setters 52 setMonth with date.
- [OK] Date.Setters 53 setFullYear with month.
- [OK] Date.Setters 54 setFullYear with month and ...
- [OK] Date.Setters 55 setMilliseconds NaN.
- [OK] Date.Setters 56 setSeconds NaN.
- [OK] Date.Setters 57 setMinutes NaN.
- [OK] Date.Setters 58 setHours NaN.
- [OK] Date.Setters 59 setDate NaN.
- [OK] Date.Setters 60 setMonth NaN.
- [OK] Date.Setters 61 setFullYear NaN.
- [OK] Date.ToString 0 toUTCString basic.
- [OK] Date.ToString 1 toUTCString epoch.
- [OK] Date.ToString 2 toUTCString format.
- [OK] Date.ToString 3 toUTCString NaN.
- [OK] Date.ToString 4 toUTCString negative year.
- [OK] Date.ToString 5 toUTCString all months.
- [OK] Date.ToString 6 toUTCString day names.
- [OK] Date.ToString 7 toDateString basic.
- [OK] Date.ToString 8 toDateString epoch.
- [OK] Date.ToString 9 toDateString NaN.
- [OK] Date.ToString 10 toDateString no time.
- [OK] Date.ToString 11 toTimeString basic.
- [OK] Date.ToString 12 toTimeString epoch.
- [OK] Date.ToString 13 toTimeString NaN.
- [OK] Date.ToString 14 toTimeString contains time.
- [OK] Date.ToString 15 toString basic.
- [OK] Date.ToString 16 toString epoch.
- [OK] Date.ToString 17 toString NaN.
- [OK] Date.ToString 18 toString contains date and ...
- [OK] Date.ToString 19 toString contains year.
- [OK] Date.ToString 20 toJSON basic.
- [OK] Date.ToString 21 toJSON NaN.
- [OK] Date.ToString 22 toJSONUnsafe basic.
- [OK] Date.ToString 23 toLocaleString basic.
- [OK] Date.ToString 24 toLocaleString NaN.
- [OK] Date.ToString 25 toLocaleDateString basic.
- [OK] Date.ToString 26 toLocaleDateString NaN.
- [OK] Date.ToString 27 toLocaleTimeString basic.
- [OK] Date.ToString 28 toLocaleTimeString NaN.
- [OK] Date.ToString 29 toString large year.
- [OK] Date.ToString 30 toString negative year.
- [OK] Date.ToString 31 toUTCString Y2K.
- [OK] Date.Now 0 now returns finite number.
- [OK] Date.Now 1 now returns positive.
- [OK] Date.Now 2 now is recent (after 2020).
- [OK] Date.Now 3 now is monotonic.
- [OK] Date.Now 4 now returns integer ms.
- [OK] Date.Parse 0 empty string returns NaN.
- [OK] Date.Parse 1 year only: 2000.
- [OK] Date.Parse 2 year-month: 2000-01.
- [OK] Date.Parse 3 full date: 2000-01-01.
- [OK] Date.Parse 4 date with time UTC: 2000-01...
- [OK] Date.Parse 5 date with seconds: 2000-01-...
- [OK] Date.Parse 6 milliseconds .1Z = 100ms.
- [OK] Date.Parse 7 milliseconds .10Z = 100ms.
- [OK] Date.Parse 8 milliseconds .100Z = 100ms.
- [OK] Date.Parse 9 milliseconds .1000Z = 100ms.
- [OK] Date.Parse 10 timezone offset +00:00.
- [OK] Date.Parse 11 known ISO timestamp.
- [OK] Date.Parse 12 roundtrip parsing.
- [OK] Date.Parse 13 millis: single digit .1.
- [OK] Date.Parse 14 millis: two digits .12.
- [OK] Date.Parse 15 millis: four digits .1234 t...
- [OK] Date.Parse 16 millis: many digits .9999 t...
- [OK] Date.Parse 17 expanded year +002000.
- [OK] Date.Parse 18 expanded year -000001.
- [OK] Date.Parse 19 expanded year -000000 is in...
- [OK] Date.Parse 20 month name format: Jan 1 2000.
- [OK] Date.Parse 21 with weekday: Sat Jan 1 2000.
- [OK] Date.Parse 22 timezone GMT+0100.
- [OK] Date.Parse 23 timezone GMT+0200.
- [OK] Date.Parse 24 invalid: gibberish.
- [OK] Date.Parse 25 invalid: partial 2000-.
- [OK] Date.Parse 26 invalid: month 13.
- [OK] Date.Parse 27 invalid: day 32.
- [OK] Date.Parse 28 invalid: hour 25.
- [OK] Date.Parse 29 invalid: minute 60.
- [OK] Date.Parse 30 invalid: second 60.
- [OK] Date.ToISOString 0 known timestamp.
- [OK] Date.ToISOString 1 epoch.
- [OK] Date.ToISOString 2 Y2K.
- [OK] Date.ToISOString 3 with milliseconds.
- [OK] Date.ToISOString 4 millis: 000.
- [OK] Date.ToISOString 5 millis: 001.
- [OK] Date.ToISOString 6 millis: 010.
- [OK] Date.ToISOString 7 millis: 100.
- [OK] Date.ToISOString 8 millis: 999.
- [OK] Date.ToISOString 9 single digit month padded.
- [OK] Date.ToISOString 10 single digit day padded.
- [OK] Date.ToISOString 11 single digit hour padded.
- [OK] Date.ToISOString 12 before epoch -1ms.
- [OK] Date.ToISOString 13 1969 Jan.
- [OK] Date.ToISOString 14 year 0.
- [OK] Date.ToISOString 15 negative year.
- [OK] Date.ToISOString 16 year 10000.
- [OK] Date.ToISOString 17 roundtrip known timestamp.
- [OK] Date.ToISOString 18 roundtrip epoch.
- [OK] Date.ToISOString 19 roundtrip before epoch.
- [OK] Date.ToISOString 20 QJS: 2020-01-01T01:01:01.123Z.
- [OK] Date.ToISOString 21 QJS: .1Z -> .100Z.
- [OK] Date.ToISOString 22 QJS: .12Z -> .120Z.
- [OK] Date.UTC 0 UTC year only.
- [OK] Date.UTC 1 UTC year and month.
- [OK] Date.UTC 2 UTC year, month, day.
- [OK] Date.UTC 3 UTC with hours.
- [OK] Date.UTC 4 UTC with minutes.
- [OK] Date.UTC 5 UTC with seconds.
- [OK] Date.UTC 6 UTC with milliseconds.
- [OK] Date.UTC 7 UTC NaN year.
- [OK] Date.UTC 8 UTC NaN month.
- [OK] Date.UTC 9 UTC NaN day.
- [OK] Date.UTC 10 UTC NaN hours.
- [OK] Date.UTC 11 UTC NaN minutes.
- [OK] Date.UTC 12 UTC NaN seconds.
- [OK] Date.UTC 13 UTC NaN ms.
- [OK] Date.UTC 14 UTC Unix epoch.
- [OK] Date.UTC 15 UTC before epoch.
- [OK] Date.UTC 16 UTC Y2K.
- [OK] Date.UTC 17 UTC year 0 -> 1900.
- [OK] Date.UTC 18 UTC year 99 -> 1999.
- [OK] Date.UTC 19 UTC year 100 stays 100.
- [OK] Date.UTC 20 UTC month 12 = January next...
- [OK] Date.UTC 21 UTC month -1 = December pre...
- [OK] Date.UTC 22 UTC day 32 Jan = Feb 1.
- [OK] Date.UTC 23 UTC day 0 = last day prev m...
- [OK] Date.UTC 24 UTC day -1 = second-to-last...
- [OK] Date.UTC 25 UTC leap year Feb 29 valid.
- [OK] Date.UTC 26 UTC non-leap Feb 29 = Mar 1.
- [OK] Date.UTC 27 UTC 2000 is leap year.
- [OK] Date.UTC 28 UTC 1900 is NOT leap year.
- [OK] Date.UTC 29 UTC large day offset.
- [OK] Date.UTC 30 UTC large minute offset.
- [OK] Date.UTC 31 UTC large second offset.
- [OK] Date.UTC 32 UTC large ms offset.
- [OK] Number.IsFinite 0 infinity: positive Infinity...
- [OK] Number.IsFinite 1 negative_infinity: negative...
- [OK] Number.IsFinite 2 nan: NaN returns false.
- [OK] Number.IsFinite 3 nan_from_operations: NaN fr...
- [OK] Number.IsFinite 4 finite_numbers: zeros.
- [OK] Number.IsFinite 5 finite_numbers: positive in...
- [OK] Number.IsFinite 6 finite_numbers: negative in...
- [OK] Number.IsFinite 7 finite_numbers: decimals.
- [OK] Number.IsFinite 8 finite_numbers: MAX/MIN_VALUE.
- [OK] Number.IsFinite 9 finite_numbers: safe intege...
- [OK] Number.IsFinite 10 finite_numbers: epsilon.
- [OK] Number.IsFinite 11 finite_numbers: very small.
- [OK] Number.IsFinite 12 finite_numbers: very large.
- [OK] Number.IsInteger 0 integers: zeros.
- [OK] Number.IsInteger 1 integers: positive.
- [OK] Number.IsInteger 2 integers: negative.
- [OK] Number.IsInteger 3 integers: large.
- [OK] Number.IsInteger 4 integers: decimal zero frac...
- [OK] Number.IsInteger 5 non_integers: decimals.
- [OK] Number.IsInteger 6 non_integers: small fractions.
- [OK] Number.IsInteger 7 special: NaN.
- [OK] Number.IsInteger 8 special: Infinity.
- [OK] Number.IsInteger 9 edge: MAX_VALUE is integer.
- [OK] Number.IsInteger 10 edge: MIN_VALUE is not inte...
- [OK] Number.IsInteger 11 edge: epsilon is not integer.
- [OK] Number.IsInteger 12 edge: powers of two.
- [OK] Number.IsInteger 13 edge: scientific notation.
- [OK] Number.IsNaN 0 nan_value: NaN returns true.
- [OK] Number.IsNaN 1 nan_from_operation: NaN fro...
- [OK] Number.IsNaN 2 nan_from_parseInt: NaN from...
- [OK] Number.IsNaN 3 nan_from_parseFloat: NaN fr...
- [OK] Number.IsNaN 4 finite_numbers: finite numb...
- [OK] Number.IsNaN 5 zero_values: zeros return f...
- [OK] Number.IsNaN 6 infinity_values: Infinity r...
- [OK] Number.IsNaN 7 max_min_values: extreme val...
- [OK] Number.IsNaN 8 epsilon_value: epsilon retu...
- [OK] Number.ParseFloat 0 S15.1.2.3_A1_T1: empty stri...
- [OK] Number.ParseFloat 1 S15.1.2.3_A1_T2: simple int...
- [OK] Number.ParseFloat 2 S15.1.2.3_A1_T3: non-numeri...
- [OK] Number.ParseFloat 3 S15.1.2.3_A1_T4: decimal nu...
- [OK] Number.ParseFloat 4 S15.1.2.3_A1_T5: stops at i...
- [OK] Number.ParseFloat 5 S15.1.2.3_A1_T6: whitespace...
- [OK] Number.ParseFloat 6 S15.1.2.3_A1_T7: invalid st...
- [OK] Number.ParseFloat 7 S15.1.2.3_A2_T1: leading sp...
- [OK] Number.ParseFloat 8 S15.1.2.3_A2_T2: leading tabs.
- [OK] Number.ParseFloat 9 S15.1.2.3_A2_T3: leading ne...
- [OK] Number.ParseFloat 10 S15.1.2.3_A2_T4: leading ca...
- [OK] Number.ParseFloat 11 S15.1.2.3_A2_T5: leading fo...
- [OK] Number.ParseFloat 12 S15.1.2.3_A2_T6: leading ve...
- [OK] Number.ParseFloat 13 S15.1.2.3_A2_T7: mixed whit...
- [OK] Number.ParseFloat 14 S15.1.2.3_A2_T8: non-breaki...
- [OK] Number.ParseFloat 15 S15.1.2.3_A2_T9: trailing c...
- [OK] Number.ParseFloat 16 S15.1.2.3_A2_T10: whitespac...
- [OK] Number.ParseFloat 17 S15.1.2.3_A3_T1: positive s...
- [OK] Number.ParseFloat 18 S15.1.2.3_A3_T2: negative s...
- [OK] Number.ParseFloat 19 S15.1.2.3_A3_T3: sign with ...
- [OK] Number.ParseFloat 20 S15.1.2.3_A4_T1: basic expo...
- [OK] Number.ParseFloat 21 S15.1.2.3_A4_T2: uppercase E.
- [OK] Number.ParseFloat 22 S15.1.2.3_A4_T3: negative e...
- [OK] Number.ParseFloat 23 S15.1.2.3_A4_T4: positive e...
- [OK] Number.ParseFloat 24 S15.1.2.3_A4_T5: decimal wi...
- [OK] Number.ParseFloat 25 S15.1.2.3_A4_T6: incomplete...
- [OK] Number.ParseFloat 26 S15.1.2.3_A4_T7: very large...
- [OK] Number.ParseFloat 27 S15.1.2.3_A5_T1: Infinity s...
- [OK] Number.ParseFloat 28 S15.1.2.3_A5_T2: signed Inf...
- [OK] Number.ParseFloat 29 S15.1.2.3_A5_T3: Infinity w...
- [OK] Number.ParseFloat 30 S15.1.2.3_A5_T4: Infinity w...
- [OK] Number.ParseFloat 31 S15.1.2.3_A6: multiple deci...
- [OK] Number.ParseFloat 32 S15.1.2.3_A7.5: leading dec...
- [OK] Number.ParseFloat 33 S15.1.2.3_A7.6: trailing de...
- [OK] Number.ParseFloat 34 S15.1.2.3_A7.7: decimal wit...
- [OK] Number.ParseFloat 35 misc_t1: hex not supported.
- [OK] Number.ParseFloat 36 misc_t2: binary/octal not s...
- [OK] Number.ParseFloat 37 misc_t3: leading zeros.
- [OK] Number.ParseFloat 38 misc_t4: NaN string.
- [OK] Number.ParseFloat 39 misc_t5: sign edge cases.
- [OK] Number.ParseFloat 40 misc_t6: very small numbers.
- [OK] Number.ParseFloat 41 misc_t7: negative zero.
- [OK] Number.ParseFloat 42 misc_t8: precision loss.
- [OK] Number.ParseFloat 43 misc_t9: exponent without m...
- [OK] Number.ParseFloat 44 misc_t10: comprehensive whi...
- [OK] Number.ParseFloat 45 misc_t11: Infinity case sen...
- [OK] Number.ParseFloat 46 misc_t12: sign with decimal...
- [OK] Number.ParseFloat 47 misc_t13: multiple e.
- [OK] Number.ParseFloat 48 misc_t14: exponent with dec...
- [OK] Number.ParseInt 0 S15.1.2.2_A1_T1: empty stri...
- [OK] Number.ParseInt 1 S15.1.2.2_A1_T2: whitespace...
- [OK] Number.ParseInt 2 S15.1.2.2_A1_T3: non-numeri...
- [OK] Number.ParseInt 3 S15.1.2.2_A1_T4: invalid st...
- [OK] Number.ParseInt 4 S15.1.2.2_A1_T5: sign only ...
- [OK] Number.ParseInt 5 S15.1.2.2_A1_T6: stops at i...
- [OK] Number.ParseInt 6 S15.1.2.2_A1_T7: NaN/Infini...
- [OK] Number.ParseInt 7 S15.1.2.2_A2_T1: leading sp...
- [OK] Number.ParseInt 8 S15.1.2.2_A2_T2: leading tabs.
- [OK] Number.ParseInt 9 S15.1.2.2_A2_T3: leading ne...
- [OK] Number.ParseInt 10 S15.1.2.2_A2_T4: leading ca...
- [OK] Number.ParseInt 11 S15.1.2.2_A2_T5: leading fo...
- [OK] Number.ParseInt 12 S15.1.2.2_A2_T6: leading ve...
- [OK] Number.ParseInt 13 S15.1.2.2_A2_T7: mixed whit...
- [OK] Number.ParseInt 14 S15.1.2.2_A2_T8: non-breaki...
- [OK] Number.ParseInt 15 S15.1.2.2_A2_T9: trailing w...
- [OK] Number.ParseInt 16 S15.1.2.2_A2_T10: whitespac...
- [OK] Number.ParseInt 17 S15.1.2.2_A3.1_T1: positive...
- [OK] Number.ParseInt 18 S15.1.2.2_A3.1_T2: negative...
- [OK] Number.ParseInt 19 S15.1.2.2_A3.1_T3: sign wit...
- [OK] Number.ParseInt 20 S15.1.2.2_A3.1_T4: multiple...
- [OK] Number.ParseInt 21 S15.1.2.2_A3.1_T5: sign wit...
- [OK] Number.ParseInt 22 S15.1.2.2_A3.1_T6: sign wit...
- [OK] Number.ParseInt 23 S15.1.2.2_A3.1_T7: sign alone.
- [OK] Number.ParseInt 24 S15.1.2.2_A3.2_T1: negative...
- [OK] Number.ParseInt 25 S15.1.2.2_A3.2_T2: negative...
- [OK] Number.ParseInt 26 S15.1.2.2_A3.2_T3: negative...
- [OK] Number.ParseInt 27 S15.1.2.2_A4.1_T1: radix 2.
- [OK] Number.ParseInt 28 S15.1.2.2_A4.1_T2: radix 8.
- [OK] Number.ParseInt 29 S15.1.2.2_A4.2_T1: radix 16.
- [OK] Number.ParseInt 30 S15.1.2.2_A4.2_T2: radix 36.
- [OK] Number.ParseInt 31 S15.1.2.2_A5.1_T1: 0x prefi...
- [OK] Number.ParseInt 32 S15.1.2.2_A5.2_T1: 0x with ...
- [OK] Number.ParseInt 33 S15.1.2.2_A5.2_T2: 0x with ...
- [OK] Number.ParseInt 34 S15.1.2.2_A6.1_T1: radix 0 ...
- [OK] Number.ParseInt 35 S15.1.2.2_A6.1_T2: radix 1 ...
- [OK] Number.ParseInt 36 S15.1.2.2_A6.1_T3: radix 37...
- [OK] Number.ParseInt 37 S15.1.2.2_A6.1_T4: large ra...
- [OK] Number.ParseInt 38 S15.1.2.2_A6.1_T5: negative...
- [OK] Number.ParseInt 39 S15.1.2.2_A6.1_T6: boundary...
- [OK] Number.ParseInt 40 S15.1.2.2_A7.1_T1: digits b...
- [OK] Number.ParseInt 41 S15.1.2.2_A7.1_T2: all digi...
- [OK] Number.ParseInt 42 S15.1.2.2_A7.2_T1: large nu...
- [OK] Number.ParseInt 43 S15.1.2.2_A7.2_T2: large he...
- [OK] Number.ParseInt 44 S15.1.2.2_A7.2_T3: many dig...
- [OK] Number.ParseInt 45 S15.1.2.2_A7.3_T1: leading ...
- [OK] Number.ParseInt 46 S15.1.2.2_A7.3_T2: leading ...
- [OK] Number.ParseInt 47 S15.1.2.2_A7.3_T3: only zeros.
- [OK] Number.ParseInt 48 S15.1.2.2_A8: decimal point.
- [OK] Number.ParseInt 49 misc_t1: scientific notatio...
- [OK] Number.ParseInt 50 misc_t2: unicode digits not...
- [OK] Number.ParseInt 51 misc_t3: 0o octal prefix no...
- [OK] Number.ParseInt 52 misc_t4: 0b binary prefix n...
- [OK] Number.ParseInt 53 misc_t5: single digits.
- [OK] Number.ParseInt 54 misc_t6: radix boundaries.
- [OK] Number.ParseInt 55 misc_t7: case insensitivity.
- [OK] Number.ParseInt 56 misc_t8: comprehensive whit...
- [OK] Number.ToString 0 basic: integers.
- [OK] Number.ToString 1 basic: decimals.
- [OK] Number.ToString 2 basic: special values.
- [OK] Number.ToString 3 basic: scientific notation.
- [OK] Number.ToString 4 basic: negative zero.
- [OK] Number.ToString 5 radix 2: binary.
- [OK] Number.ToString 6 radix 8: octal.
- [OK] Number.ToString 7 radix 16: hex.
- [OK] Number.ToString 8 radix 36: max.
- [OK] Number.ToString 9 radix 10: explicit.
- [OK] Number.ToString 10 negative with radix.
- [OK] Number.ToString 11 special values with radix.
- [OK] Number.ToString 12 large numbers.
- [OK] Number.ToExponential 0 basic: no digits.
- [OK] Number.ToExponential 1 digits: 0.
- [OK] Number.ToExponential 2 digits: 1.
- [OK] Number.ToExponential 3 digits: multiple.
- [OK] Number.ToExponential 4 digits: large.
- [OK] Number.ToExponential 5 special values.
- [OK] Number.ToExponential 6 special values with digits.
- [OK] Number.ToExponential 7 negative numbers.
- [OK] Number.ToExponential 8 rounding.
- [OK] Number.ToExponential 9 very small numbers.
- [OK] Number.ToExponential 10 very large numbers.
- [OK] Number.ToExponential 11 negative zero.
- [OK] Number.ToPrecision 0 basic: no precision.
- [OK] Number.ToPrecision 1 precision: 1.
- [OK] Number.ToPrecision 2 precision: 2.
- [OK] Number.ToPrecision 3 precision: multiple.
- [OK] Number.ToPrecision 4 precision: large.
- [OK] Number.ToPrecision 5 special values.
- [OK] Number.ToPrecision 6 special values with precision.
- [OK] Number.ToPrecision 7 negative numbers.
- [OK] Number.ToPrecision 8 rounding.
- [OK] Number.ToPrecision 9 zero handling.
- [OK] Number.ToPrecision 10 negative zero.
- [OK] Number.ToPrecision 11 very small numbers.
- [OK] Number.ToPrecision 12 very large numbers.
- [OK] String.Normalize 0 default form (NFC).
- [OK] String.Normalize 1 empty string.
- [OK] String.Normalize 2 ASCII unchanged.
- [OK] String.Normalize 3 NFC: basic.
- [OK] String.Normalize 4 NFC: multiple accents.
- [OK] String.Normalize 5 NFD: basic.
- [OK] String.Normalize 6 NFD: already decomposed.
- [OK] String.Normalize 7 NFKC: ligature.
- [OK] String.Normalize 8 NFKC: superscript.
- [OK] String.Normalize 9 NFKD: ligature.
- [OK] String.Normalize 10 NFKD: with accents.
- [OK] String.Normalize 11 Hangul syllable.
- [OK] String.Normalize 12 combining sequences.
- [OK] String.Search 0 basic: match.
- [OK] String.Search 1 basic: no match.
- [OK] String.Search 2 basic: match at start.
- [OK] String.Search 3 basic: match at end.
- [OK] String.Search 4 basic: empty string.
- [OK] String.Search 5 basic: empty pattern.
- [OK] String.Search 6 case: sensitive.
- [OK] String.Search 7 case: insensitive.
- [OK] String.Search 8 pattern: digit class.
- [OK] String.Search 9 pattern: word boundary.
- [OK] String.Search 10 pattern: any character.
- [OK] String.Search 11 pattern: alternation.
- [OK] String.Search 12 pattern: optional.
- [OK] String.Search 13 multiple: finds first.
- [OK] String.Search 14 multiple: global flag ignored.
- [OK] String.Search 15 unicode: characters.
- [OK] String.Search 16 unicode: emoji.
- [OK] String.Search 17 edge: special regex chars.
- [OK] String.Search 18 edge: newline.
- [OK] RegExp.NamedGroups 0 basic: date pattern.
- [OK] RegExp.NamedGroups 1 basic: single group.
- [OK] RegExp.NamedGroups 2 basic: multiple groups.
- [OK] RegExp.NamedGroups 3 access: by name.
- [OK] RegExp.NamedGroups 4 access: nonexistent.
- [OK] RegExp.NamedGroups 5 access: all groups list.
- [OK] RegExp.NamedGroups 6 pattern: with quantifiers.
- [OK] RegExp.NamedGroups 7 pattern: with alternation.
- [OK] RegExp.NamedGroups 8 edge: no named groups.
- [OK] RegExp.NamedGroups 9 edge: mixed named and unnamed.
- [OK] RegExp.DotAll 0 basic: dot without flag.
- [OK] RegExp.DotAll 1 basic: dot with flag.
- [OK] RegExp.DotAll 2 basic: flag accessor.
- [OK] RegExp.DotAll 3 line: matches LF.
- [OK] RegExp.DotAll 4 line: matches CR.
- [OK] RegExp.DotAll 5 line: matches CRLF.
- [OK] RegExp.DotAll 6 flags: with global.
- [OK] RegExp.DotAll 7 flags: with ignorecase.
- [OK] RegExp.DotAll 8 flags: with multiline.
- [OK] RegExp.DotAll 9 accessor: includes s.
- [OK] RegExp.DotAll 10 accessor: order.
- [OK] RegExp.DotAll 11 practical: multiline content.
- [OK] RegExp.DotAll 12 practical: without flag fails.
- [OK] RegExp.Unicode 0 flag: accessor.
- [OK] RegExp.Unicode 1 flag: in flags string.
- [OK] RegExp.Unicode 2 match: basic unicode.
- [OK] RegExp.Unicode 3 match: emoji.
- [OK] RegExp.Unicode 4 match: no match.
- [OK] RegExp.Unicode 5 combined: with global.
- [OK] RegExp.Unicode 6 combined: with ignorecase.
- [OK] RegExp.Unicode 7 combined: with multiline.
- [OK] RegExp.Unicode 8 property: letter category.
- [OK] RegExp.Unicode 9 astral: basic.
- [OK] RegExp.Unicode 10 astral: surrogate pairs.
- [OK] RegExp.Unicode 11 practical: international.
- [OK] RegExp.Unicode 12 practical: mixed scripts.
-
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/Js/test/_build/_tests/Js'.
- Test Successful in 0.978s. 814 tests run.
- (cd _build/default/packages/react/test && ./test.exe)
- Testing `React'.
- This run has ID `HJRVR05D'.
-
- [OK] cloneElement 0 empty component.
- [OK] cloneElement 1 attributes component.
- [OK] cloneElement 2 ordered attributes component.
- [OK] React 0 useState.
- [OK] React 1 useSyncExternalStoreWithServer.
- [OK] React 2 useEffect.
- [OK] React 3 Children.map.
- [OK] React 4 Children.map.
- [OK] React 5 useRef.
- [OK] React 6 invalid_children.
- [OK] React 7 invalid_dangerouslySetInnerHtml.
- [OK] React 8 raw_element.
-
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/react/test/_build/_tests/React'.
- Test Successful in 0.020s. 12 tests run.
- (cd _build/default/packages/reactDom/test && ./test.exe)
- Testing `ReactDOM'.
- This run has ID `7XZM9ZJF'.
-
- [OK] ReactServerDOM.render_html / client_with_element_props 0 ...
- [OK] ReactServerDOM.render_html / null_element 0 ...
- [OK] ReactServerDOM.render_html / element_with_dangerously_set_inner_html 0 ...
- [OK] ReactServerDOM.render_html / inner_html_element 0 ...
- [OK] ReactServerDOM.render_html / input_element_with_value 0 ...
- [OK] ReactServerDOM.render_html / upper_case_component 0 ...
- [OK] ReactServerDOM.render_html / async_component_without_promise 0 ...
- [OK] ReactServerDOM.render_html / suspense_without_promise 0 ...
- [OK] ReactServerDOM.render_html / with_sleepy_promise 0 ...
- [OK] ReactServerDOM.render_html / client_with_promise_props 0 ...
- [OK] ReactServerDOM.render_html / client_component_with_async_component 0 ...
- [OK] ReactServerDOM.render_html / async_component_with_promise 0 ...
- [OK] ReactServerDOM.render_html / suspense_with_error 0 ...
- [OK] ReactServerDOM.render_html / suspense_with_error_in_async 0 ...
- [OK] ReactServerDOM.render_html / suspense_with_error_under_lowercase 0 ...
- [OK] ReactServerDOM.render_html / error_without_suspense 0 ...
- [OK] ReactServerDOM.render_html / error_in_toplevel_in_async 0 ...
- [OK] ReactServerDOM.render_html / suspense_in_a_list_with_error 0 ...
- [OK] ReactServerDOM.render_html / server_function_as_action 0 ...
- [OK] ReactServerDOM.render_html / nested_context 0 ...
- [OK] ReactServerDOM.render_html / doctype 0 ...
- [OK] ReactServerDOM.render_html / just_an_html_node 0 ...
- [OK] ReactServerDOM.render_html / no_head_no_body_nothing_just_an_html_node 0 ...
- [OK] ReactServerDOM.render_html / html_with_no_srr_html_body 0 ...
- [OK] ReactServerDOM.render_html / html_with_a_node 0 ...
- [OK] ReactServerDOM.render_html / html_inside_a_div 0 ...
- [OK] ReactServerDOM.render_html / html_inside_a_fragment 0 ...
- [OK] ReactServerDOM.render_html / head_with_content 0 ...
- [OK] ReactServerDOM.render_html / html_with_only_a_body 0 ...
- [OK] ReactServerDOM.render_html / html_with_head_like_elements_not_in_head 0 ...
- [OK] ReactServerDOM.render_html / html_without_body_and_bootstrap_scripts 0 ...
- [OK] ReactServerDOM.render_html / html_with_body_and_bootstrap_scripts 0 ...
- [OK] ReactServerDOM.render_html / input_and_bootstrap_scripts 0 ...
- [OK] ReactServerDOM.render_html / title_and_meta_populates_to_the_head 0 ...
- [OK] ReactServerDOM.render_html / async_scripts_to_head 0 ...
- [OK] ReactServerDOM.render_html / no_async_scripts_to_remain 0 ...
- [OK] ReactServerDOM.render_html / async_scripts_gets_deduplicated 0 ...
- [OK] ReactServerDOM.render_html / async_scripts_gets_deduplicated_2 0 ...
- [OK] ReactServerDOM.render_html / link_with_rel_and_precedence 0 ...
- [OK] ReactServerDOM.render_html / links_gets_pushed_to_the_head 0 ...
- [OK] ReactServerDOM.render_html / self_closing_with_dangerously 0 ...
- [OK] ReactServerDOM.render_html / self_closing_with_dangerously_in_head 0 ...
- [OK] ReactServerDOM.render_html / upper_case_component_with_resources 0 ...
- [OK] ReactServerDOM.render_html / hoisted_elements_order_issue 0 ...
- [OK] ReactServerDOM.render_html / head_preserves_children_order 0 ...
- [OK] ReactServerDOM.render_html / html_attributes_are_preserved 0 ...
- [OK] ReactDOM.renderToStream / silly_stream 0 ...
- [OK] ReactDOM.renderToStream / render_inner_html 0 ...
- [OK] ReactDOM.renderToStream / react_use_without_suspense 0 ...
- [OK] ReactDOM.renderToStream / uppercase_component_always_throwing 0 ...
- [OK] ReactDOM.renderToStream / suspense_with_react_use 0 ...
- [OK] ReactDOM.renderToStream / async component 0 ...
- [OK] ReactDOM.renderToStream / async_component_without_suspense 0 ...
- [OK] ReactDOM.renderToStream / suspense_without_promise 0 ...
- [OK] ReactDOM.renderToStream / suspense_with_async_component 0 ...
- [OK] ReactDOM.renderToStream / suspense_with_always_throwing 0 ...
- [OK] ReactDOM.renderToStream / suspense_with_nested_suspense 0 ...
- [OK] ReactDOM.renderToStream / suspense_with_nested_suspenses 0 ...
- [OK] ReactDOM.renderToStream / suspense_with_nested_suspense_with_error 0 ...
- [OK] ReactDOM.renderToStream / suspense_with_multiple_children 0 ...
- [OK] ReactDOM.renderToStream / suspense_with_multiple_children_reordered 0 ...
- [OK] ReactDOM.renderToStream / suspense_with_concurrent_suspenses 0 ...
- [OK] ReactDOM.renderToStream / suspense_with_comments 0 ...
- [OK] ReactDOM.renderToStaticMarkup / html_doctype 0 ...
- [OK] ReactDOM.renderToStaticMarkup / single_empty_tag 0 ...
- [OK] ReactDOM.renderToStaticMarkup / empty_string_attribute 0 ...
- [OK] ReactDOM.renderToStaticMarkup / bool_attributes 0 ...
- [OK] ReactDOM.renderToStaticMarkup / truthy_attributes 0 ...
- [OK] ReactDOM.renderToStaticMarkup / ignore_nulls 0 ...
- [OK] ReactDOM.renderToStaticMarkup / string_attributes 0 ...
- [OK] ReactDOM.renderToStaticMarkup / self_closing_tag 0 ...
- [OK] ReactDOM.renderToStaticMarkup / dom_element_innerHtml 0 ...
- [OK] ReactDOM.renderToStaticMarkup / children 0 ...
- [OK] ReactDOM.renderToStaticMarkup / className 0 ...
- [OK] ReactDOM.renderToStaticMarkup / className_2 0 ...
- [OK] ReactDOM.renderToStaticMarkup / className_3 0 ...
- [OK] ReactDOM.renderToStaticMarkup / fragment 0 ...
- [OK] ReactDOM.renderToStaticMarkup / fragments_and_texts 0 ...
- [OK] ReactDOM.renderToStaticMarkup / ignored_attributes_on_jsx 0 ...
- [OK] ReactDOM.renderToStaticMarkup / inline_styles 0 ...
- [OK] ReactDOM.renderToStaticMarkup / encode_attributes 0 ...
- [OK] ReactDOM.renderToStaticMarkup / dom_props_should_work 0 ...
- [OK] ReactDOM.renderToStaticMarkup / dangerouslySetInnerHtml 0 ...
- [OK] ReactDOM.renderToStaticMarkup / context 0 ...
- [OK] ReactDOM.renderToStaticMarkup / use_state 0 ...
- [OK] ReactDOM.renderToStaticMarkup / use_memo 0 ...
- [OK] ReactDOM.renderToStaticMarkup / use_callback 0 ...
- [OK] ReactDOM.renderToStaticMarkup / inner_html 0 ...
- [OK] ReactDOM.renderToStaticMarkup / event 0 ...
- [OK] ReactDOM.renderToStaticMarkup / render_with_doc_type 0 ...
- [OK] ReactDOM.renderToStaticMarkup / render_svg 0 ...
- [OK] ReactDOM.renderToStaticMarkup / ref_as_prop_works 0 ...
- [OK] ReactDOM.renderToStaticMarkup / ref_as_callback_prop_works 0 ...
- [OK] ReactDOM.renderToStaticMarkup / async 0 ...
- [OK] ReactDOM.renderToStaticMarkup / lists_and_arrays 0 ...
- [OK] ReactDOM.renderToString / react_root_one_element 0 ...
- [OK] ReactDOM.renderToString / react_root_two_elements 0 ...
- [OK] ReactDOM.renderToString / text_single_node should not add <!-- --> 0 ...
- [OK] ReactDOM.renderToString / consecutives_text_nodes should add <!-- --> 0 ...
- [OK] ReactDOM.renderToString / separated_text_nodes_by_other_parents 0 ...
- [OK] ReactDOM.Style.make / generate empty style 0 ...
- [OK] ReactDOM.Style.make / generate one style 0 ...
- [OK] ReactDOM.Style.make / generate more than one style 0 ...
- [OK] ReactDOM.Style.make / unsafeAddProp should be kebab-case 0 ...
- [OK] ReactDOM.Style.make / order matters 0 ...
- [OK] ReactDOM.Style.make / order matters II 0 ...
- [OK] ReactServerDOM.render_model / null_element 0 ...
- [OK] ReactServerDOM.render_model / string_element 0 ...
- [OK] ReactServerDOM.render_model / key_renders_outside_of_props 0 ...
- [OK] ReactServerDOM.render_model / style_as_json 0 ...
- [OK] ReactServerDOM.render_model / lower_case_component 0 ...
- [OK] ReactServerDOM.render_model / lower_case_component_nested 0 ...
- [OK] ReactServerDOM.render_model / lower_case_with_children 0 ...
- [OK] ReactServerDOM.render_model / dangerouslySetInnerHtml 0 ...
- [OK] ReactServerDOM.render_model / upper_case_component 0 ...
- [OK] ReactServerDOM.render_model / upper_case_with_list 0 ...
- [OK] ReactServerDOM.render_model / upper_case_with_children 0 ...
- [OK] ReactServerDOM.render_model / suspense_without_promise 0 ...
- [OK] ReactServerDOM.render_model / suspense_with_promise 0 ...
- [OK] ReactServerDOM.render_model / suspense_with_error 0 ...
- [OK] ReactServerDOM.render_model / suspense_with_error_in_async 0 ...
- [OK] ReactServerDOM.render_model / suspense_with_immediate_promise 0 ...
- [OK] ReactServerDOM.render_model / suspense 0 ...
- [OK] ReactServerDOM.render_model / async_component_without_suspense 0 ...
- [OK] ReactServerDOM.render_model / suspense_in_a_list 0 ...
- [OK] ReactServerDOM.render_model / client_with_promise_props 0 ...
- [OK] ReactServerDOM.render_model / async_component_without_suspense_immediate 0 ...
- [OK] ReactServerDOM.render_model / mixed_server_and_client 0 ...
- [OK] ReactServerDOM.render_model / client_with_json_props 0 ...
- [OK] ReactServerDOM.render_model / client_without_props 0 ...
- [OK] ReactServerDOM.render_model / client_with_element_props 0 ...
- [OK] ReactServerDOM.render_model / client_with_server_children 0 ...
- [OK] ReactServerDOM.render_model / client_component_with_async_component 0 ...
- [OK] ReactServerDOM.render_model / act_with_simple_response 0 ...
- [OK] ReactServerDOM.render_model / env_development_adds_debug_info 0 ...
- [OK] ReactServerDOM.render_model / act_with_error 0 ...
- [OK] ReactServerDOM.render_model / error_without_suspense 0 ...
- [OK] ReactServerDOM.render_model / error_in_toplevel 0 ...
- [OK] ReactServerDOM.render_model / error_in_toplevel_in_async 0 ...
- [OK] ReactServerDOM.render_model / suspense_in_a_list_with_error 0 ...
- [OK] ReactServerDOM.render_model / suspense_with_error_under_lowercase 0 ...
- [OK] ReactServerDOM.render_model / client_component_with_resources_metadata 0 ...
- [OK] ReactServerDOM.render_model / page_with_hoisted_resources 0 ...
- [OK] ReactServerDOM.render_model / nested_context 0 ...
- [OK] ReactServerDOM.render_model / model_list_value 0 ...
- [OK] ReactServerDOM.render_model / model_value_assoc 0 ...
- [OK] Decoders / decodeReply 0 ...
- [OK] Decoders / decodeFormDataReply 0 ...
-
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/reactDom/test/_build/_tests/ReactDOM'.
- Test Successful in 0.777s. 148 tests run.
- (cd _build/default/packages/server-reason-react-ppx/test && ./test.exe)
- Testing `server-reason-react.ppx'.
- This run has ID `EV6CVPS6'.
-
- [OK] tag 0 ...
- [OK] empty_attribute 0 ...
- [OK] bool_attribute 0 ...
- [OK] bool_attributes 0 ...
- [OK] innerhtml 0 ...
- [OK] int_attribute 0 ...
- [OK] svg_1 0 ...
- [OK] svg_2 0 ...
- [OK] booleanish_props_with_ppx 0 ...
- [OK] booleanish_props_without_ppx 0 ...
- [OK] style_attribute 0 ...
- [OK] ref_attribute 0 ...
- [OK] link_as_attribute 0 ...
- [OK] inner_html_attribute 0 ...
- [OK] inner_html_attribute_complex 0 ...
- [OK] int_opt_attr_some 0 ...
- [OK] int_opt_attribute_none 0 ...
- [OK] string_opt_attribute_some 0 ...
- [OK] string_opt_attribute_none 0 ...
- [OK] bool_opt_attribute_some 0 ...
- [OK] bool_opt_attribute_none 0 ...
- [OK] style_opt_attribute_some 0 ...
- [OK] style_opt_attribute_none 0 ...
- [OK] ref_opt_attribute_some 0 ...
- [OK] ref_opt_attribute_none 0 ...
- [OK] fragment 0 ...
- [OK] fragment_with_key 0 ...
- [OK] children_uppercase 0 ...
- [OK] children_lowercase 0 ...
- [OK] event_onClick 0 ...
- [OK] children_one_element 0 ...
- [OK] children_multiple_elements 0 ...
- [OK] create_element_variadic 0 ...
- [OK] aria_props 0 ...
- [OK] optional_prop 0 ...
- [OK] context 0 ...
- [OK] context_2 0 ...
- [OK] multiple_contexts 0 ...
- [OK] styles_attribute 0 ...
- [OK] styles_attribute_optional 0 ...
- [OK] styles_attribute_optional_some 0 ...
- [OK] styles_attribute_optional_some_with_class 0 ...
- [OK] styles_attribute_optional_some_with_style 0 ...
- [OK] styles_attribute_optional_some_with_class_and_style 0 ...
- [OK] server_function 0 ...
- [OK] server_function_reference 0 ...
- [OK] server_function_reference_args_error 0 ...
- [OK] server_function_reference_form_data 0 ...
- [OK] server_function_reference_form_data_and_args 0 ...
-
- Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/server-reason-react-ppx/test/_build/_tests/server-reason-react.ppx'.
- Test Successful in 0.010s. 49 tests run.
[ERROR] The compilation of server-reason-react.0.4.1 failed at "dune build -p server-reason-react -j 71 @install @runtest".
#=== ERROR while compiling server-reason-react.0.4.1 ==========================#
# context 2.5.0 | linux/x86_64 | ocaml-base-compiler.5.4.0 | file:///home/opam/opam-repository
# path ~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1
# command ~/.opam/opam-init/hooks/sandbox.sh build dune build -p server-reason-react -j 71 @install @runtest
# exit-code 1
# env-file ~/.opam/log/server-reason-react-7-a310d9.env
# output-file ~/.opam/log/server-reason-react-7-a310d9.out
### output ###
# (cd _build/default/packages/melange.ppx/xxhash && ./test_xxh64.exe)
# Testing `XXH64'.
# This run has ID `LHLRP45B'.
#
# [OK] hash 0 "".
# [OK] hash 1 "a".
# [OK] hash 2 "as".
# [OK] hash 3 "asd".
# [OK] hash 4 "asdf".
# [OK] hash 5 "abc".
# [OK] hash 6 "abc".
# [OK] hash 7 "abcd".
# [OK] hash 8 "abcde".
# [OK] hash 9 "abcdef".
# [OK] hash 10 "abcdefg".
# [OK] hash 11 "abcdefgh".
# [OK] hash 12 "abcdefghi".
# [OK] hash 13 "abcdefghij".
# [OK] hash 14 "abcdefghijklmnopqrstuvwxyz012345".
# [OK] hash 15 "abcdefghijklmnopqrstuvwxyz0123456...
# [OK] hash 16 "Call me Ishmael. Some years ago--...
# [OK] hash 17 "Lorem ipsum dolor sit amet, conse...
# [OK] hash · to_hex 0 "I want an unsigned 64-bit seed!".
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/melange.ppx/xxhash/_build/_tests/XXH64'.
# Test Successful in 0.003s. 19 tests run.
# (cd _build/default/packages/url/test && ./test_native.exe)
# Testing `URL'.
# This run has ID `7GOX32GR'.
#
# [OK] URL 0 make.
# [OK] URL 1 makeWith.
# [OK] URL 2 makeWith and relative base.
# [OK] URL 3 host.
# [OK] URL 4 hostname.
# [OK] URL 5 setHostname.
# [OK] URL 6 pathname.
# [OK] URL 7 origin.
# [OK] URL 8 href.
# [OK] URL 9 port.
# [OK] URL 10 hash.
# [OK] URL 11 setHash.
# [OK] URL 12 search.
# [OK] URL 13 protocol.
# [OK] URL 14 setProtocol.
# [OK] URL 15 username.
# [OK] URL 16 setUsername.
# [OK] URL 17 password.
# [OK] URL 18 setPassword.
# [OK] URL 19 searchParams.
# [OK] URL.SearchParams 0 has.
# [OK] URL.SearchParams 1 get.
# [OK] URL.SearchParams 2 getAll.
# [OK] URL.SearchParams 3 keys.
# [OK] URL.SearchParams 4 values.
# [OK] URL.SearchParams 5 entries.
# [OK] URL.SearchParams 6 toString.
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/url/test/_build/_tests/URL'.
# Test Successful in 0.014s. 27 tests run.
# (cd _build/default/packages/Belt/test && ./test.exe)
# Testing `Belt'.
# This run has ID `DFK9I3MU'.
#
# [OK] Records 0 eq.
# [OK] Array 0 truncateToLengthUnsafe.
# [OK] Array 1 makeUninitializedUnsafe.
# [OK] Array 2 length.
# [OK] List 0 eq.
# [OK] List 1 map.
# [OK] List 2 mapU.
# [OK] List 3 mapWithIndex.
# [OK] List 4 concat.
# [OK] Int 0 fromString.
# [OK] Int 1 toString.
# [OK] Option 0 keep_1.
# [OK] Option 1 keep_2.
# [OK] Option 2 keep_3.
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/Belt/test/_build/_tests/Belt'.
# Test Successful in 0.002s. 14 tests run.
# (cd _build/default/packages/expand-styles-attribute/test && ./test.exe)
# Testing `expand_styles_attribute'.
# This run has ID `6DC7K672'.
#
# [OK] expand_styles_prop_on_attributes 0
# [OK] expand_styles_with_previous_className 0
# [OK] expand_styles_with_previous_style 0
# [OK] expand_styles_optional 0
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/expand-styles-attribute/test/_build/_tests/expand_styles_attribute'.
# Test Successful in 0.001s. 4 tests run.
# File "packages/browser-ppx/tests/at_browser_only.t", line 1, characters 0-0:
# /usr/bin/git --no-pager diff --no-index --color=always -u _build/default/packages/browser-ppx/tests/at_browser_only.t _build/default/packages/browser-ppx/tests/at_browser_only.t.corrected
# diff --git a/_build/default/packages/browser-ppx/tests/at_browser_only.t b/_build/default/packages/browser-ppx/tests/at_browser_only.t.corrected
# index 3fb8d6e..1af9596 100644
# --- a/_build/default/packages/browser-ppx/tests/at_browser_only.t
# +++ b/_build/default/packages/browser-ppx/tests/at_browser_only.t.corrected
# @@ -230,7 +230,6 @@ Ppat_constraint
# let foo ~on:((on [@browser_only]) : unit -> string)
# ?opt:((opt [@browser_only]) = 42) =
# 0
# -
# $ ./standalone.exe -impl input_constr.ml | ocamlformat - --enable-outside-detected-project --impl
# let foo ~on:_ ?opt:(_ = 42) = 0
#
# (cd _build/default/packages/Js/test && ./test.exe)
# Testing `Js'.
# This run has ID `65S12KDR'.
#
# [OK] Js.Global 0 decodeURI - ascii and spaces.
# [OK] Js.Global 1 decodeURI - reserved charac...
# [OK] Js.Global 2 decodeURI - alphabets.
# [OK] Js.Global 3 decodeURI - unicode charact...
# [OK] Js.Global 4 decodeURI - mixed percent e...
# [OK] Js.Global 5 decodeURI - complete URLs.
# [OK] Js.Global 6 decodeURI - overencoded seq...
# [OK] Js.Global 7 decodeURI - special charact...
# [OK] Js.Global 8 decodeURI - beyond U+10FFFF.
# [OK] Js.Global 9 decodeURI - partial sequences.
# [OK] Js.Global 10 encodeURI - ascii and spaces.
# [OK] Js.Global 11 encodeURI - reserved charac...
# [OK] Js.Global 12 encodeURI - alphabets.
# [OK] Js.Global 13 encodeURI - unicode charact...
# [OK] Js.Global 14 encodeURI - complete URLs.
# [OK] Js.Global 15 encodeURI - special charact...
# [OK] Js.Global 16 encodeURI - combining chara...
# [OK] Js.Global 17 encodeURI - Surrogate pairs.
# [OK] Js.Global 18 encodeURIComponent.
# [OK] Js.Promise 0 resolve.
# [OK] Js.Promise 1 all.
# [OK] Js.Promise 2 all_async.
# [OK] Js.Promise 3 race_async.
# [OK] Js.Float 0 string_of_float.
# [OK] Js.Float 1 toString.
# [OK] Js.Float 2 fromString.
# [OK] Js.Float 3 toFixed.
# [OK] Js.String 0 make.
# [OK] Js.String 1 length.
# [OK] Js.String 2 get.
# [OK] Js.String 3 fromCharCode.
# [OK] Js.String 4 fromCharCodeMany.
# [OK] Js.String 5 fromCodePoint.
# [OK] Js.String 6 fromCodePointMany.
# [OK] Js.String 7 charAt.
# [OK] Js.String 8 charCodeAt.
# [OK] Js.String 9 codePointAt.
# [OK] Js.String 10 concat.
# [OK] Js.String 11 concatMany.
# [OK] Js.String 12 endsWith.
# [OK] Js.String 13 includes.
# [OK] Js.String 14 indexOf.
# [OK] Js.String 15 lastIndexOf.
# [OK] Js.String 16 match.
# [OK] Js.String 17 match 0.
# [OK] Js.String 18 repeat.
# [OK] Js.String 19 replace.
# [OK] Js.String 20 replaceByRe.
# [OK] Js.String 21 replaceByRe with references...
# [OK] Js.String 22 replaceByRe with $1 capturi...
# [OK] Js.String 23 replaceByRe with multiple c...
# [OK] Js.String 24 replaceByRe with $&.
# [OK] Js.String 25 replaceByRe with $$.
# [OK] Js.String 26 replaceByRe with global.
# [OK] Js.String 27 unsafeReplaceBy0.
# [OK] Js.String 28 unsafeReplaceBy1.
# [OK] Js.String 29 unsafeReplaceBy2.
# [OK] Js.String 30 search.
# [OK] Js.String 31 slice.
# [OK] Js.String 32 split.
# [OK] Js.String 33 splitAtMost.
# [OK] Js.String 34 splitByRe.
# [OK] Js.String 35 startsWith.
# [OK] Js.String 36 substr.
# [OK] Js.String 37 substrAtMost.
# [OK] Js.String 38 substring.
# [OK] Js.String 39 toLowerCase.
# [OK] Js.String 40 toUpperCase.
# [OK] Js.String 41 trim.
# [OK] Js.String 42 anchor.
# [OK] Js.String 43 link.
# [OK] Js.Re 0 captures.
# [OK] Js.Re 1 exec.
# [OK] Js.Re 2 exec with global.
# [OK] Js.Re 3 modifier: end ($).
# [OK] Js.Re 4 modifier: more than one (+).
# [OK] Js.Re 5 global (g) and caseless (i).
# [OK] Js.Re 6 modifier: or ([]).
# [OK] Js.Re 7 backreferencing.
# [OK] Js.Re 8 http|s example.
# [OK] Js.Re 9 index.
# [OK] Js.Re 10 lastIndex.
# [OK] Js.Re 11 input.
# [OK] Js.Dict 0 empty.
# [OK] Js.Dict 1 get.
# [OK] Js.Dict 2 get from missing property.
# [OK] Js.Dict 3 unsafe_get.
# [OK] Js.Dict 4 set.
# [OK] Js.Dict 5 keys.
# [OK] Js.Dict 6 keys duplicated.
# [OK] Js.Dict 7 entries.
# [OK] Js.Dict 8 values.
# [OK] Js.Dict 9 values duplicated.
# [OK] Js.Dict 10 fromList - [].
# [OK] Js.Dict 11 fromList.
# [OK] Js.Dict 12 fromArray - [].
# [OK] Js.Dict 13 fromArray.
# [OK] Js.Dict 14 map.
# [OK] BigInt.Arithmetic 0 add: positive + positive.
# [OK] BigInt.Arithmetic 1 add: negative + negative.
# [OK] BigInt.Arithmetic 2 add: positive + negative.
# [OK] BigInt.Arithmetic 3 add: with zero.
# [OK] BigInt.Arithmetic 4 add: large numbers.
# [OK] BigInt.Arithmetic 5 sub: positive result.
# [OK] BigInt.Arithmetic 6 sub: negative result.
# [OK] BigInt.Arithmetic 7 sub: with zero.
# [OK] BigInt.Arithmetic 8 sub: self.
# [OK] BigInt.Arithmetic 9 mul: positive * positive.
# [OK] BigInt.Arithmetic 10 mul: negative * positive.
# [OK] BigInt.Arithmetic 11 mul: negative * negative.
# [OK] BigInt.Arithmetic 12 mul: with zero.
# [OK] BigInt.Arithmetic 13 mul: with one.
# [OK] BigInt.Arithmetic 14 mul: 3^100.
# [OK] BigInt.Arithmetic 15 div: exact division.
# [OK] BigInt.Arithmetic 16 div: truncate positive.
# [OK] BigInt.Arithmetic 17 div: truncate negative (tow...
# [OK] BigInt.Arithmetic 18 div: negative divisor.
# [OK] BigInt.Arithmetic 19 div: both negative.
# [OK] BigInt.Arithmetic 20 div: large numbers.
# [OK] BigInt.Arithmetic 21 div: large negative.
# [OK] BigInt.Arithmetic 22 div: by zero throws.
# [OK] BigInt.Arithmetic 23 rem: positive % positive.
# [OK] BigInt.Arithmetic 24 rem: negative dividend.
# [OK] BigInt.Arithmetic 25 rem: negative divisor.
# [OK] BigInt.Arithmetic 26 rem: both negative.
# [OK] BigInt.Arithmetic 27 rem: large numbers.
# [OK] BigInt.Arithmetic 28 rem: large positive.
# [OK] BigInt.Arithmetic 29 rem: by zero throws.
# [OK] BigInt.Arithmetic 30 pow: exponent zero.
# [OK] BigInt.Arithmetic 31 pow: exponent one.
# [OK] BigInt.Arithmetic 32 pow: 2^10.
# [OK] BigInt.Arithmetic 33 pow: (-2)^127.
# [OK] BigInt.Arithmetic 34 pow: 2^127.
# [OK] BigInt.Arithmetic 35 pow: negative exponent throws.
# [OK] BigInt.Arithmetic 36 pow: (-256)^11.
# [OK] BigInt.Arithmetic 37 pow: 7^20.
# [OK] BigInt.Arithmetic 38 neg: positive.
# [OK] BigInt.Arithmetic 39 neg: negative.
# [OK] BigInt.Arithmetic 40 neg: zero.
# [OK] BigInt.Arithmetic 41 abs: positive.
# [OK] BigInt.Arithmetic 42 abs: negative.
# [OK] BigInt.Arithmetic 43 abs: zero.
# [OK] BigInt.Bitwise 0 and: basic.
# [OK] BigInt.Bitwise 1 and: with zero.
# [OK] BigInt.Bitwise 2 and: with all ones.
# [OK] BigInt.Bitwise 3 and: negative (two's comple...
# [OK] BigInt.Bitwise 4 or: basic.
# [OK] BigInt.Bitwise 5 or: with zero.
# [OK] BigInt.Bitwise 6 or: disjoint bits.
# [OK] BigInt.Bitwise 7 xor: basic.
# [OK] BigInt.Bitwise 8 xor: same value.
# [OK] BigInt.Bitwise 9 xor: with zero.
# [OK] BigInt.Bitwise 10 not: basic.
# [OK] BigInt.Bitwise 11 not: zero.
# [OK] BigInt.Bitwise 12 not: -1.
# [OK] BigInt.Bitwise 13 not: positive.
# [OK] BigInt.Bitwise 14 not: negative.
# [OK] BigInt.Bitwise 15 shift_left: basic.
# [OK] BigInt.Bitwise 16 shift_left: 1 << 31.
# [OK] BigInt.Bitwise 17 shift_left: 1 << 32.
# [OK] BigInt.Bitwise 18 shift_left: 1 << 100.
# [OK] BigInt.Bitwise 19 shift_left: large number.
# [OK] BigInt.Bitwise 20 shift_left: negative number.
# [OK] BigInt.Bitwise 21 shift_left: by zero.
# [OK] BigInt.Bitwise 22 shift_right: basic.
# [OK] BigInt.Bitwise 23 shift_right: large number.
# [OK] BigInt.Bitwise 24 shift_right: negative (arit...
# [OK] BigInt.Bitwise 25 shift_right: by zero.
# [OK] BigInt.Bitwise 26 shift_right: small negative.
# [OK] BigInt.Comparison 0 equal: same value.
# [OK] BigInt.Comparison 1 equal: different values.
# [OK] BigInt.Comparison 2 equal: negative values.
# [OK] BigInt.Comparison 3 equal: opposite signs.
# [OK] BigInt.Comparison 4 equal: zeros.
# [OK] BigInt.Comparison 5 equal: large same.
# [OK] BigInt.Comparison 6 equal: large different.
# [OK] BigInt.Comparison 7 compare: less.
# [OK] BigInt.Comparison 8 compare: greater.
# [OK] BigInt.Comparison 9 compare: equal.
# [OK] BigInt.Comparison 10 compare: negative.
# [OK] BigInt.Comparison 11 compare: mixed sign.
# [OK] BigInt.Comparison 12 lt: true.
# [OK] BigInt.Comparison 13 lt: false (greater).
# [OK] BigInt.Comparison 14 lt: false (equal).
# [OK] BigInt.Comparison 15 lt: negative.
# [OK] BigInt.Comparison 16 le: true (less).
# [OK] BigInt.Comparison 17 le: true (equal).
# [OK] BigInt.Comparison 18 le: false.
# [OK] BigInt.Comparison 19 gt: true.
# [OK] BigInt.Comparison 20 gt: false (less).
# [OK] BigInt.Comparison 21 gt: false (equal).
# [OK] BigInt.Comparison 22 ge: true (greater).
# [OK] BigInt.Comparison 23 ge: true (equal).
# [OK] BigInt.Comparison 24 ge: false.
# [OK] BigInt.Constructor 0 from_string: empty string r...
# [OK] BigInt.Constructor 1 from_string: zero.
# [OK] BigInt.Constructor 2 from_string: positive decimal.
# [OK] BigInt.Constructor 3 from_string: negative decimal.
# [OK] BigInt.Constructor 4 from_string: positive sign.
# [OK] BigInt.Constructor 5 from_string: large number.
# [OK] BigInt.Constructor 6 from_string: very large num...
# [OK] BigInt.Constructor 7 from_string: leading whites...
# [OK] BigInt.Constructor 8 from_string: trailing white...
# [OK] BigInt.Constructor 9 from_string: both whitespace.
# [OK] BigInt.Constructor 10 from_string: tabs.
# [OK] BigInt.Constructor 11 from_string: newlines.
# [OK] BigInt.Constructor 12 from_string: hex lowercase.
# [OK] BigInt.Constructor 13 from_string: hex uppercase.
# [OK] BigInt.Constructor 14 from_string: hex large.
# [OK] BigInt.Constructor 15 from_string: hex negative.
# [OK] BigInt.Constructor 16 from_string: binary lowercase.
# [OK] BigInt.Constructor 17 from_string: binary uppercase.
# [OK] BigInt.Constructor 18 from_string: octal lowercase.
# [OK] BigInt.Constructor 19 from_string: octal uppercase.
# [OK] BigInt.Constructor 20 from_string: sign only throws.
# [OK] BigInt.Constructor 21 from_string: trailing chars...
# [OK] BigInt.Constructor 22 from_string: null char throws.
# [OK] BigInt.Constructor 23 from_string: decimal point ...
# [OK] BigInt.Constructor 24 from_string: float notation...
# [OK] BigInt.Constructor 25 from_int: zero.
# [OK] BigInt.Constructor 26 from_int: positive.
# [OK] BigInt.Constructor 27 from_int: negative.
# [OK] BigInt.Constructor 28 from_int: max_int.
# [OK] BigInt.Constructor 29 from_int: min_int.
# [OK] BigInt.Constructor 30 from_int64: large positive.
# [OK] BigInt.Constructor 31 from_int64: large negative.
# [OK] BigInt.Conversion 0 toString: zero.
# [OK] BigInt.Conversion 1 toString: positive.
# [OK] BigInt.Conversion 2 toString: negative.
# [OK] BigInt.Conversion 3 toString: large (1 << 100).
# [OK] BigInt.Conversion 4 toString: radix 2.
# [OK] BigInt.Conversion 5 toString: radix 8.
# [OK] BigInt.Conversion 6 toString: radix 16.
# [OK] BigInt.Conversion 7 toString: radix 36.
# [OK] BigInt.Conversion 8 toString: radix 16 large.
# [OK] BigInt.Conversion 9 toFloat: small.
# [OK] BigInt.Conversion 10 toFloat: negative.
# [OK] BigInt.Conversion 11 toFloat: zero.
# [OK] BigInt.Conversion 12 toFloat: MAX_SAFE_INTEGER.
# [OK] BigInt.Conversion 13 toFloat: large (0xfffffffff...
# [OK] BigInt.Conversion 14 toFloat: large negative.
# [OK] BigInt.Conversion 15 asIntN: positive fits.
# [OK] BigInt.Conversion 16 asIntN: positive wraps.
# [OK] BigInt.Conversion 17 asIntN: 255 -> -1.
# [OK] BigInt.Conversion 18 asIntN: negative fits.
# [OK] BigInt.Conversion 19 asIntN: negative wraps.
# [OK] BigInt.Conversion 20 asIntN: 64 bits.
# [OK] BigInt.Conversion 21 asUintN: fits.
# [OK] BigInt.Conversion 22 asUintN: wraps to 0.
# [OK] BigInt.Conversion 23 asUintN: wraps to 1.
# [OK] BigInt.Conversion 24 asUintN: negative wraps.
# [OK] BigInt.Conversion 25 asUintN: 64 bits.
# [OK] BigInt.AsIntN 0 asIntN 0 bits.
# [OK] BigInt.AsIntN 1 asIntN 1 bit.
# [OK] BigInt.AsIntN 2 asIntN 8 bit.
# [OK] BigInt.AsIntN 3 asIntN 16 bit.
# [OK] BigInt.AsIntN 4 asIntN 32 bit.
# [OK] BigInt.AsIntN 5 asIntN 64 bit.
# [OK] BigInt.AsIntN 6 asIntN preserves small posi...
# [OK] BigInt.AsIntN 7 asIntN preserves small nega...
# [OK] BigInt.AsIntN 8 asIntN wrapping.
# [OK] BigInt.AsIntN 9 asIntN large bits.
# [OK] BigInt.AsIntN 10 asIntN negative input.
# [OK] BigInt.AsIntN 11 asIntN 2-bit boundary.
# [OK] BigInt.AsIntN 12 asIntN 3-bit boundary.
# [OK] BigInt.AsIntN 13 asIntN 4-bit boundary.
# [OK] BigInt.AsIntN 14 asIntN identity for zero.
# [OK] BigInt.AsIntN 15 asIntN minus one.
# [OK] BigInt.AsUintN 0 asUintN 0 bits.
# [OK] BigInt.AsUintN 1 asUintN 1 bit.
# [OK] BigInt.AsUintN 2 asUintN 8 bit.
# [OK] BigInt.AsUintN 3 asUintN 16 bit.
# [OK] BigInt.AsUintN 4 asUintN 32 bit.
# [OK] BigInt.AsUintN 5 asUintN 64 bit.
# [OK] BigInt.AsUintN 6 asUintN preserves small val...
# [OK] BigInt.AsUintN 7 asUintN wrapping.
# [OK] BigInt.AsUintN 8 asUintN large bits.
# [OK] BigInt.AsUintN 9 asUintN negative becomes po...
# [OK] BigInt.AsUintN 10 asUintN 2-bit boundary.
# [OK] BigInt.AsUintN 11 asUintN 3-bit boundary.
# [OK] BigInt.AsUintN 12 asUintN 4-bit boundary.
# [OK] BigInt.AsUintN 13 asUintN identity for zero.
# [OK] BigInt.AsUintN 14 asUintN one.
# [OK] BigInt.AsUintN 15 asUintN power of two.
# [OK] BigInt.AsUintN 16 asUintN power of two minus ...
# [OK] BigInt.Prototype 0 toString default radix.
# [OK] BigInt.Prototype 1 toString radix 2 (binary).
# [OK] BigInt.Prototype 2 toString radix 8 (octal).
# [OK] BigInt.Prototype 3 toString radix 10 (decimal).
# [OK] BigInt.Prototype 4 toString radix 16 (hex).
# [OK] BigInt.Prototype 5 toString radix 36 (max).
# [OK] BigInt.Prototype 6 toString various radixes.
# [OK] BigInt.Prototype 7 toString large numbers.
# [OK] BigInt.Prototype 8 toString negative large.
# [OK] BigInt.Prototype 9 toString zero all radixes.
# [OK] BigInt.Prototype 10 to_float small.
# [OK] BigInt.Prototype 11 to_float large.
# [OK] BigInt.Prototype 12 to_float very large.
# [OK] BigInt.Prototype 13 of_string edge cases.
# [OK] BigInt.Prototype 14 of_string hex.
# [OK] BigInt.Prototype 15 of_string binary.
# [OK] BigInt.Prototype 16 of_string octal.
# [OK] BigInt.Prototype 17 compare equal.
# [OK] BigInt.Prototype 18 compare less.
# [OK] BigInt.Prototype 19 compare greater.
# [OK] BigInt.Prototype 20 compare negative.
# [OK] BigInt.Prototype 21 compare large.
# [OK] Date.Getters 0 getTime returns epoch ms.
# [OK] Date.Getters 1 getTime NaN for invalid date.
# [OK] Date.Getters 2 getUTCFullYear.
# [OK] Date.Getters 3 getUTCMonth.
# [OK] Date.Getters 4 getUTCDate.
# [OK] Date.Getters 5 getUTCDay.
# [OK] Date.Getters 6 getUTCHours.
# [OK] Date.Getters 7 getUTCMinutes.
# [OK] Date.Getters 8 getUTCSeconds.
# [OK] Date.Getters 9 getUTCMilliseconds.
# [OK] Date.Getters 10 UTC getters at epoch.
# [OK] Date.Getters 11 UTC getters before epoch.
# [OK] Date.Getters 12 UTC getters at Y2K.
# [OK] Date.Getters 13 UTC getters on leap day.
# [OK] Date.Getters 14 getUTCFullYear NaN.
# [OK] Date.Getters 15 getUTCMonth NaN.
# [OK] Date.Getters 16 getUTCDate NaN.
# [OK] Date.Getters 17 getUTCDay NaN.
# [OK] Date.Getters 18 getUTCHours NaN.
# [OK] Date.Getters 19 getUTCMinutes NaN.
# [OK] Date.Getters 20 getUTCSeconds NaN.
# [OK] Date.Getters 21 getUTCMilliseconds NaN.
# [OK] Date.Getters 22 new year transition.
# [OK] Date.Getters 23 month lengths.
# [OK] Date.LocalGetters 0 getTime basic.
# [OK] Date.LocalGetters 1 getTime epoch.
# [OK] Date.LocalGetters 2 getTime negative.
# [OK] Date.LocalGetters 3 getTime NaN.
# [OK] Date.LocalGetters 4 valueOf basic.
# [OK] Date.LocalGetters 5 valueOf epoch.
# [OK] Date.LocalGetters 6 valueOf NaN.
# [OK] Date.LocalGetters 7 valueOf equals getTime.
# [OK] Date.LocalGetters 8 getUTCFullYear 2017.
# [OK] Date.LocalGetters 9 getUTCFullYear 1970 (epoch).
# [OK] Date.LocalGetters 10 getUTCFullYear 1969.
# [OK] Date.LocalGetters 11 getUTCFullYear NaN.
# [OK] Date.LocalGetters 12 getUTCFullYear Y2K.
# [OK] Date.LocalGetters 13 getUTCFullYear leap year.
# [OK] Date.LocalGetters 14 getUTCMonth January (0).
# [OK] Date.LocalGetters 15 getUTCMonth December (11).
# [OK] Date.LocalGetters 16 getUTCMonth NaN.
# [OK] Date.LocalGetters 17 getUTCMonth epoch.
# [OK] Date.LocalGetters 18 getUTCDate first.
# [OK] Date.LocalGetters 19 getUTCDate 31st.
# [OK] Date.LocalGetters 20 getUTCDate NaN.
# [OK] Date.LocalGetters 21 getUTCDate epoch.
# [OK] Date.LocalGetters 22 getUTCDay Thursday (epoch).
# [OK] Date.LocalGetters 23 getUTCDay Sunday.
# [OK] Date.LocalGetters 24 getUTCDay Saturday.
# [OK] Date.LocalGetters 25 getUTCDay NaN.
# [OK] Date.LocalGetters 26 getUTCHours zero.
# [OK] Date.LocalGetters 27 getUTCHours 23.
# [OK] Date.LocalGetters 28 getUTCHours NaN.
# [OK] Date.LocalGetters 29 getUTCHours epoch.
# [OK] Date.LocalGetters 30 getUTCMinutes zero.
# [OK] Date.LocalGetters 31 getUTCMinutes 59.
# [OK] Date.LocalGetters 32 getUTCMinutes NaN.
# [OK] Date.LocalGetters 33 getUTCSeconds zero.
# [OK] Date.LocalGetters 34 getUTCSeconds 59.
# [OK] Date.LocalGetters 35 getUTCSeconds NaN.
# [OK] Date.LocalGetters 36 getUTCMilliseconds zero.
# [OK] Date.LocalGetters 37 getUTCMilliseconds 999.
# [OK] Date.LocalGetters 38 getUTCMilliseconds NaN.
# [OK] Date.LocalGetters 39 getUTCMilliseconds middle.
# [OK] Date.LocalGetters 40 getTimezoneOffset returns n...
# [OK] Date.LocalGetters 41 getTimezoneOffset NaN.
# [OK] Date.LocalGetters 42 getTimezoneOffset in valid ...
# [OK] Date.LocalGetters 43 local getters consistent.
# [OK] Date.LocalGetters 44 local getters NaN.
# [OK] Date.LocalGetters 45 getDay range 0-6.
# [OK] Date.LocalGetters 46 getters large positive date.
# [OK] Date.LocalGetters 47 getters large negative date.
# [OK] Date.LocalGetters 48 getters boundary milliseconds.
# [OK] Date.Setters 0 setTime basic.
# [OK] Date.Setters 1 setTime epoch.
# [OK] Date.Setters 2 setTime negative.
# [OK] Date.Setters 3 setTime NaN value.
# [OK] Date.Setters 4 setTime on NaN date.
# [OK] Date.Setters 5 setUTCMilliseconds basic.
# [OK] Date.Setters 6 setUTCMilliseconds overflow.
# [OK] Date.Setters 7 setUTCMilliseconds negative.
# [OK] Date.Setters 8 setUTCMilliseconds NaN.
# [OK] Date.Setters 9 setUTCSeconds basic.
# [OK] Date.Setters 10 setUTCSeconds overflow.
# [OK] Date.Setters 11 setUTCSeconds with ms.
# [OK] Date.Setters 12 setUTCSeconds NaN.
# [OK] Date.Setters 13 setUTCMinutes basic.
# [OK] Date.Setters 14 setUTCMinutes overflow.
# [OK] Date.Setters 15 setUTCMinutes with seconds.
# [OK] Date.Setters 16 setUTCMinutes with seconds ...
# [OK] Date.Setters 17 setUTCMinutes NaN.
# [OK] Date.Setters 18 setUTCHours basic.
# [OK] Date.Setters 19 setUTCHours overflow.
# [OK] Date.Setters 20 setUTCHours with minutes.
# [OK] Date.Setters 21 setUTCHours with minutes an...
# [OK] Date.Setters 22 setUTCHours all components.
# [OK] Date.Setters 23 setUTCHours NaN.
# [OK] Date.Setters 24 setUTCDate basic.
# [OK] Date.Setters 25 setUTCDate overflow.
# [OK] Date.Setters 26 setUTCDate zero.
# [OK] Date.Setters 27 setUTCDate negative.
# [OK] Date.Setters 28 setUTCDate NaN.
# [OK] Date.Setters 29 setUTCMonth basic.
# [OK] Date.Setters 30 setUTCMonth overflow.
# [OK] Date.Setters 31 setUTCMonth negative.
# [OK] Date.Setters 32 setUTCMonth with date.
# [OK] Date.Setters 33 setUTCMonth NaN.
# [OK] Date.Setters 34 setUTCFullYear basic.
# [OK] Date.Setters 35 setUTCFullYear with month.
# [OK] Date.Setters 36 setUTCFullYear with month a...
# [OK] Date.Setters 37 setUTCFullYear leap to non-...
# [OK] Date.Setters 38 setUTCFullYear NaN.
# [OK] Date.Setters 39 setMilliseconds basic.
# [OK] Date.Setters 40 setSeconds basic.
# [OK] Date.Setters 41 setMinutes basic.
# [OK] Date.Setters 42 setHours basic.
# [OK] Date.Setters 43 setDate basic.
# [OK] Date.Setters 44 setMonth basic.
# [OK] Date.Setters 45 setFullYear basic.
# [OK] Date.Setters 46 setSeconds with ms.
# [OK] Date.Setters 47 setMinutes with seconds.
# [OK] Date.Setters 48 setMinutes with seconds and...
# [OK] Date.Setters 49 setHours with minutes.
# [OK] Date.Setters 50 setHours with minutes and s...
# [OK] Date.Setters 51 setHours all components.
# [OK] Date.Setters 52 setMonth with date.
# [OK] Date.Setters 53 setFullYear with month.
# [OK] Date.Setters 54 setFullYear with month and ...
# [OK] Date.Setters 55 setMilliseconds NaN.
# [OK] Date.Setters 56 setSeconds NaN.
# [OK] Date.Setters 57 setMinutes NaN.
# [OK] Date.Setters 58 setHours NaN.
# [OK] Date.Setters 59 setDate NaN.
# [OK] Date.Setters 60 setMonth NaN.
# [OK] Date.Setters 61 setFullYear NaN.
# [OK] Date.ToString 0 toUTCString basic.
# [OK] Date.ToString 1 toUTCString epoch.
# [OK] Date.ToString 2 toUTCString format.
# [OK] Date.ToString 3 toUTCString NaN.
# [OK] Date.ToString 4 toUTCString negative year.
# [OK] Date.ToString 5 toUTCString all months.
# [OK] Date.ToString 6 toUTCString day names.
# [OK] Date.ToString 7 toDateString basic.
# [OK] Date.ToString 8 toDateString epoch.
# [OK] Date.ToString 9 toDateString NaN.
# [OK] Date.ToString 10 toDateString no time.
# [OK] Date.ToString 11 toTimeString basic.
# [OK] Date.ToString 12 toTimeString epoch.
# [OK] Date.ToString 13 toTimeString NaN.
# [OK] Date.ToString 14 toTimeString contains time.
# [OK] Date.ToString 15 toString basic.
# [OK] Date.ToString 16 toString epoch.
# [OK] Date.ToString 17 toString NaN.
# [OK] Date.ToString 18 toString contains date and ...
# [OK] Date.ToString 19 toString contains year.
# [OK] Date.ToString 20 toJSON basic.
# [OK] Date.ToString 21 toJSON NaN.
# [OK] Date.ToString 22 toJSONUnsafe basic.
# [OK] Date.ToString 23 toLocaleString basic.
# [OK] Date.ToString 24 toLocaleString NaN.
# [OK] Date.ToString 25 toLocaleDateString basic.
# [OK] Date.ToString 26 toLocaleDateString NaN.
# [OK] Date.ToString 27 toLocaleTimeString basic.
# [OK] Date.ToString 28 toLocaleTimeString NaN.
# [OK] Date.ToString 29 toString large year.
# [OK] Date.ToString 30 toString negative year.
# [OK] Date.ToString 31 toUTCString Y2K.
# [OK] Date.Now 0 now returns finite number.
# [OK] Date.Now 1 now returns positive.
# [OK] Date.Now 2 now is recent (after 2020).
# [OK] Date.Now 3 now is monotonic.
# [OK] Date.Now 4 now returns integer ms.
# [OK] Date.Parse 0 empty string returns NaN.
# [OK] Date.Parse 1 year only: 2000.
# [OK] Date.Parse 2 year-month: 2000-01.
# [OK] Date.Parse 3 full date: 2000-01-01.
# [OK] Date.Parse 4 date with time UTC: 2000-01...
# [OK] Date.Parse 5 date with seconds: 2000-01-...
# [OK] Date.Parse 6 milliseconds .1Z = 100ms.
# [OK] Date.Parse 7 milliseconds .10Z = 100ms.
# [OK] Date.Parse 8 milliseconds .100Z = 100ms.
# [OK] Date.Parse 9 milliseconds .1000Z = 100ms.
# [OK] Date.Parse 10 timezone offset +00:00.
# [OK] Date.Parse 11 known ISO timestamp.
# [OK] Date.Parse 12 roundtrip parsing.
# [OK] Date.Parse 13 millis: single digit .1.
# [OK] Date.Parse 14 millis: two digits .12.
# [OK] Date.Parse 15 millis: four digits .1234 t...
# [OK] Date.Parse 16 millis: many digits .9999 t...
# [OK] Date.Parse 17 expanded year +002000.
# [OK] Date.Parse 18 expanded year -000001.
# [OK] Date.Parse 19 expanded year -000000 is in...
# [OK] Date.Parse 20 month name format: Jan 1 2000.
# [OK] Date.Parse 21 with weekday: Sat Jan 1 2000.
# [OK] Date.Parse 22 timezone GMT+0100.
# [OK] Date.Parse 23 timezone GMT+0200.
# [OK] Date.Parse 24 invalid: gibberish.
# [OK] Date.Parse 25 invalid: partial 2000-.
# [OK] Date.Parse 26 invalid: month 13.
# [OK] Date.Parse 27 invalid: day 32.
# [OK] Date.Parse 28 invalid: hour 25.
# [OK] Date.Parse 29 invalid: minute 60.
# [OK] Date.Parse 30 invalid: second 60.
# [OK] Date.ToISOString 0 known timestamp.
# [OK] Date.ToISOString 1 epoch.
# [OK] Date.ToISOString 2 Y2K.
# [OK] Date.ToISOString 3 with milliseconds.
# [OK] Date.ToISOString 4 millis: 000.
# [OK] Date.ToISOString 5 millis: 001.
# [OK] Date.ToISOString 6 millis: 010.
# [OK] Date.ToISOString 7 millis: 100.
# [OK] Date.ToISOString 8 millis: 999.
# [OK] Date.ToISOString 9 single digit month padded.
# [OK] Date.ToISOString 10 single digit day padded.
# [OK] Date.ToISOString 11 single digit hour padded.
# [OK] Date.ToISOString 12 before epoch -1ms.
# [OK] Date.ToISOString 13 1969 Jan.
# [OK] Date.ToISOString 14 year 0.
# [OK] Date.ToISOString 15 negative year.
# [OK] Date.ToISOString 16 year 10000.
# [OK] Date.ToISOString 17 roundtrip known timestamp.
# [OK] Date.ToISOString 18 roundtrip epoch.
# [OK] Date.ToISOString 19 roundtrip before epoch.
# [OK] Date.ToISOString 20 QJS: 2020-01-01T01:01:01.123Z.
# [OK] Date.ToISOString 21 QJS: .1Z -> .100Z.
# [OK] Date.ToISOString 22 QJS: .12Z -> .120Z.
# [OK] Date.UTC 0 UTC year only.
# [OK] Date.UTC 1 UTC year and month.
# [OK] Date.UTC 2 UTC year, month, day.
# [OK] Date.UTC 3 UTC with hours.
# [OK] Date.UTC 4 UTC with minutes.
# [OK] Date.UTC 5 UTC with seconds.
# [OK] Date.UTC 6 UTC with milliseconds.
# [OK] Date.UTC 7 UTC NaN year.
# [OK] Date.UTC 8 UTC NaN month.
# [OK] Date.UTC 9 UTC NaN day.
# [OK] Date.UTC 10 UTC NaN hours.
# [OK] Date.UTC 11 UTC NaN minutes.
# [OK] Date.UTC 12 UTC NaN seconds.
# [OK] Date.UTC 13 UTC NaN ms.
# [OK] Date.UTC 14 UTC Unix epoch.
# [OK] Date.UTC 15 UTC before epoch.
# [OK] Date.UTC 16 UTC Y2K.
# [OK] Date.UTC 17 UTC year 0 -> 1900.
# [OK] Date.UTC 18 UTC year 99 -> 1999.
# [OK] Date.UTC 19 UTC year 100 stays 100.
# [OK] Date.UTC 20 UTC month 12 = January next...
# [OK] Date.UTC 21 UTC month -1 = December pre...
# [OK] Date.UTC 22 UTC day 32 Jan = Feb 1.
# [OK] Date.UTC 23 UTC day 0 = last day prev m...
# [OK] Date.UTC 24 UTC day -1 = second-to-last...
# [OK] Date.UTC 25 UTC leap year Feb 29 valid.
# [OK] Date.UTC 26 UTC non-leap Feb 29 = Mar 1.
# [OK] Date.UTC 27 UTC 2000 is leap year.
# [OK] Date.UTC 28 UTC 1900 is NOT leap year.
# [OK] Date.UTC 29 UTC large day offset.
# [OK] Date.UTC 30 UTC large minute offset.
# [OK] Date.UTC 31 UTC large second offset.
# [OK] Date.UTC 32 UTC large ms offset.
# [OK] Number.IsFinite 0 infinity: positive Infinity...
# [OK] Number.IsFinite 1 negative_infinity: negative...
# [OK] Number.IsFinite 2 nan: NaN returns false.
# [OK] Number.IsFinite 3 nan_from_operations: NaN fr...
# [OK] Number.IsFinite 4 finite_numbers: zeros.
# [OK] Number.IsFinite 5 finite_numbers: positive in...
# [OK] Number.IsFinite 6 finite_numbers: negative in...
# [OK] Number.IsFinite 7 finite_numbers: decimals.
# [OK] Number.IsFinite 8 finite_numbers: MAX/MIN_VALUE.
# [OK] Number.IsFinite 9 finite_numbers: safe intege...
# [OK] Number.IsFinite 10 finite_numbers: epsilon.
# [OK] Number.IsFinite 11 finite_numbers: very small.
# [OK] Number.IsFinite 12 finite_numbers: very large.
# [OK] Number.IsInteger 0 integers: zeros.
# [OK] Number.IsInteger 1 integers: positive.
# [OK] Number.IsInteger 2 integers: negative.
# [OK] Number.IsInteger 3 integers: large.
# [OK] Number.IsInteger 4 integers: decimal zero frac...
# [OK] Number.IsInteger 5 non_integers: decimals.
# [OK] Number.IsInteger 6 non_integers: small fractions.
# [OK] Number.IsInteger 7 special: NaN.
# [OK] Number.IsInteger 8 special: Infinity.
# [OK] Number.IsInteger 9 edge: MAX_VALUE is integer.
# [OK] Number.IsInteger 10 edge: MIN_VALUE is not inte...
# [OK] Number.IsInteger 11 edge: epsilon is not integer.
# [OK] Number.IsInteger 12 edge: powers of two.
# [OK] Number.IsInteger 13 edge: scientific notation.
# [OK] Number.IsNaN 0 nan_value: NaN returns true.
# [OK] Number.IsNaN 1 nan_from_operation: NaN fro...
# [OK] Number.IsNaN 2 nan_from_parseInt: NaN from...
# [OK] Number.IsNaN 3 nan_from_parseFloat: NaN fr...
# [OK] Number.IsNaN 4 finite_numbers: finite numb...
# [OK] Number.IsNaN 5 zero_values: zeros return f...
# [OK] Number.IsNaN 6 infinity_values: Infinity r...
# [OK] Number.IsNaN 7 max_min_values: extreme val...
# [OK] Number.IsNaN 8 epsilon_value: epsilon retu...
# [OK] Number.ParseFloat 0 S15.1.2.3_A1_T1: empty stri...
# [OK] Number.ParseFloat 1 S15.1.2.3_A1_T2: simple int...
# [OK] Number.ParseFloat 2 S15.1.2.3_A1_T3: non-numeri...
# [OK] Number.ParseFloat 3 S15.1.2.3_A1_T4: decimal nu...
# [OK] Number.ParseFloat 4 S15.1.2.3_A1_T5: stops at i...
# [OK] Number.ParseFloat 5 S15.1.2.3_A1_T6: whitespace...
# [OK] Number.ParseFloat 6 S15.1.2.3_A1_T7: invalid st...
# [OK] Number.ParseFloat 7 S15.1.2.3_A2_T1: leading sp...
# [OK] Number.ParseFloat 8 S15.1.2.3_A2_T2: leading tabs.
# [OK] Number.ParseFloat 9 S15.1.2.3_A2_T3: leading ne...
# [OK] Number.ParseFloat 10 S15.1.2.3_A2_T4: leading ca...
# [OK] Number.ParseFloat 11 S15.1.2.3_A2_T5: leading fo...
# [OK] Number.ParseFloat 12 S15.1.2.3_A2_T6: leading ve...
# [OK] Number.ParseFloat 13 S15.1.2.3_A2_T7: mixed whit...
# [OK] Number.ParseFloat 14 S15.1.2.3_A2_T8: non-breaki...
# [OK] Number.ParseFloat 15 S15.1.2.3_A2_T9: trailing c...
# [OK] Number.ParseFloat 16 S15.1.2.3_A2_T10: whitespac...
# [OK] Number.ParseFloat 17 S15.1.2.3_A3_T1: positive s...
# [OK] Number.ParseFloat 18 S15.1.2.3_A3_T2: negative s...
# [OK] Number.ParseFloat 19 S15.1.2.3_A3_T3: sign with ...
# [OK] Number.ParseFloat 20 S15.1.2.3_A4_T1: basic expo...
# [OK] Number.ParseFloat 21 S15.1.2.3_A4_T2: uppercase E.
# [OK] Number.ParseFloat 22 S15.1.2.3_A4_T3: negative e...
# [OK] Number.ParseFloat 23 S15.1.2.3_A4_T4: positive e...
# [OK] Number.ParseFloat 24 S15.1.2.3_A4_T5: decimal wi...
# [OK] Number.ParseFloat 25 S15.1.2.3_A4_T6: incomplete...
# [OK] Number.ParseFloat 26 S15.1.2.3_A4_T7: very large...
# [OK] Number.ParseFloat 27 S15.1.2.3_A5_T1: Infinity s...
# [OK] Number.ParseFloat 28 S15.1.2.3_A5_T2: signed Inf...
# [OK] Number.ParseFloat 29 S15.1.2.3_A5_T3: Infinity w...
# [OK] Number.ParseFloat 30 S15.1.2.3_A5_T4: Infinity w...
# [OK] Number.ParseFloat 31 S15.1.2.3_A6: multiple deci...
# [OK] Number.ParseFloat 32 S15.1.2.3_A7.5: leading dec...
# [OK] Number.ParseFloat 33 S15.1.2.3_A7.6: trailing de...
# [OK] Number.ParseFloat 34 S15.1.2.3_A7.7: decimal wit...
# [OK] Number.ParseFloat 35 misc_t1: hex not supported.
# [OK] Number.ParseFloat 36 misc_t2: binary/octal not s...
# [OK] Number.ParseFloat 37 misc_t3: leading zeros.
# [OK] Number.ParseFloat 38 misc_t4: NaN string.
# [OK] Number.ParseFloat 39 misc_t5: sign edge cases.
# [OK] Number.ParseFloat 40 misc_t6: very small numbers.
# [OK] Number.ParseFloat 41 misc_t7: negative zero.
# [OK] Number.ParseFloat 42 misc_t8: precision loss.
# [OK] Number.ParseFloat 43 misc_t9: exponent without m...
# [OK] Number.ParseFloat 44 misc_t10: comprehensive whi...
# [OK] Number.ParseFloat 45 misc_t11: Infinity case sen...
# [OK] Number.ParseFloat 46 misc_t12: sign with decimal...
# [OK] Number.ParseFloat 47 misc_t13: multiple e.
# [OK] Number.ParseFloat 48 misc_t14: exponent with dec...
# [OK] Number.ParseInt 0 S15.1.2.2_A1_T1: empty stri...
# [OK] Number.ParseInt 1 S15.1.2.2_A1_T2: whitespace...
# [OK] Number.ParseInt 2 S15.1.2.2_A1_T3: non-numeri...
# [OK] Number.ParseInt 3 S15.1.2.2_A1_T4: invalid st...
# [OK] Number.ParseInt 4 S15.1.2.2_A1_T5: sign only ...
# [OK] Number.ParseInt 5 S15.1.2.2_A1_T6: stops at i...
# [OK] Number.ParseInt 6 S15.1.2.2_A1_T7: NaN/Infini...
# [OK] Number.ParseInt 7 S15.1.2.2_A2_T1: leading sp...
# [OK] Number.ParseInt 8 S15.1.2.2_A2_T2: leading tabs.
# [OK] Number.ParseInt 9 S15.1.2.2_A2_T3: leading ne...
# [OK] Number.ParseInt 10 S15.1.2.2_A2_T4: leading ca...
# [OK] Number.ParseInt 11 S15.1.2.2_A2_T5: leading fo...
# [OK] Number.ParseInt 12 S15.1.2.2_A2_T6: leading ve...
# [OK] Number.ParseInt 13 S15.1.2.2_A2_T7: mixed whit...
# [OK] Number.ParseInt 14 S15.1.2.2_A2_T8: non-breaki...
# [OK] Number.ParseInt 15 S15.1.2.2_A2_T9: trailing w...
# [OK] Number.ParseInt 16 S15.1.2.2_A2_T10: whitespac...
# [OK] Number.ParseInt 17 S15.1.2.2_A3.1_T1: positive...
# [OK] Number.ParseInt 18 S15.1.2.2_A3.1_T2: negative...
# [OK] Number.ParseInt 19 S15.1.2.2_A3.1_T3: sign wit...
# [OK] Number.ParseInt 20 S15.1.2.2_A3.1_T4: multiple...
# [OK] Number.ParseInt 21 S15.1.2.2_A3.1_T5: sign wit...
# [OK] Number.ParseInt 22 S15.1.2.2_A3.1_T6: sign wit...
# [OK] Number.ParseInt 23 S15.1.2.2_A3.1_T7: sign alone.
# [OK] Number.ParseInt 24 S15.1.2.2_A3.2_T1: negative...
# [OK] Number.ParseInt 25 S15.1.2.2_A3.2_T2: negative...
# [OK] Number.ParseInt 26 S15.1.2.2_A3.2_T3: negative...
# [OK] Number.ParseInt 27 S15.1.2.2_A4.1_T1: radix 2.
# [OK] Number.ParseInt 28 S15.1.2.2_A4.1_T2: radix 8.
# [OK] Number.ParseInt 29 S15.1.2.2_A4.2_T1: radix 16.
# [OK] Number.ParseInt 30 S15.1.2.2_A4.2_T2: radix 36.
# [OK] Number.ParseInt 31 S15.1.2.2_A5.1_T1: 0x prefi...
# [OK] Number.ParseInt 32 S15.1.2.2_A5.2_T1: 0x with ...
# [OK] Number.ParseInt 33 S15.1.2.2_A5.2_T2: 0x with ...
# [OK] Number.ParseInt 34 S15.1.2.2_A6.1_T1: radix 0 ...
# [OK] Number.ParseInt 35 S15.1.2.2_A6.1_T2: radix 1 ...
# [OK] Number.ParseInt 36 S15.1.2.2_A6.1_T3: radix 37...
# [OK] Number.ParseInt 37 S15.1.2.2_A6.1_T4: large ra...
# [OK] Number.ParseInt 38 S15.1.2.2_A6.1_T5: negative...
# [OK] Number.ParseInt 39 S15.1.2.2_A6.1_T6: boundary...
# [OK] Number.ParseInt 40 S15.1.2.2_A7.1_T1: digits b...
# [OK] Number.ParseInt 41 S15.1.2.2_A7.1_T2: all digi...
# [OK] Number.ParseInt 42 S15.1.2.2_A7.2_T1: large nu...
# [OK] Number.ParseInt 43 S15.1.2.2_A7.2_T2: large he...
# [OK] Number.ParseInt 44 S15.1.2.2_A7.2_T3: many dig...
# [OK] Number.ParseInt 45 S15.1.2.2_A7.3_T1: leading ...
# [OK] Number.ParseInt 46 S15.1.2.2_A7.3_T2: leading ...
# [OK] Number.ParseInt 47 S15.1.2.2_A7.3_T3: only zeros.
# [OK] Number.ParseInt 48 S15.1.2.2_A8: decimal point.
# [OK] Number.ParseInt 49 misc_t1: scientific notatio...
# [OK] Number.ParseInt 50 misc_t2: unicode digits not...
# [OK] Number.ParseInt 51 misc_t3: 0o octal prefix no...
# [OK] Number.ParseInt 52 misc_t4: 0b binary prefix n...
# [OK] Number.ParseInt 53 misc_t5: single digits.
# [OK] Number.ParseInt 54 misc_t6: radix boundaries.
# [OK] Number.ParseInt 55 misc_t7: case insensitivity.
# [OK] Number.ParseInt 56 misc_t8: comprehensive whit...
# [OK] Number.ToString 0 basic: integers.
# [OK] Number.ToString 1 basic: decimals.
# [OK] Number.ToString 2 basic: special values.
# [OK] Number.ToString 3 basic: scientific notation.
# [OK] Number.ToString 4 basic: negative zero.
# [OK] Number.ToString 5 radix 2: binary.
# [OK] Number.ToString 6 radix 8: octal.
# [OK] Number.ToString 7 radix 16: hex.
# [OK] Number.ToString 8 radix 36: max.
# [OK] Number.ToString 9 radix 10: explicit.
# [OK] Number.ToString 10 negative with radix.
# [OK] Number.ToString 11 special values with radix.
# [OK] Number.ToString 12 large numbers.
# [OK] Number.ToExponential 0 basic: no digits.
# [OK] Number.ToExponential 1 digits: 0.
# [OK] Number.ToExponential 2 digits: 1.
# [OK] Number.ToExponential 3 digits: multiple.
# [OK] Number.ToExponential 4 digits: large.
# [OK] Number.ToExponential 5 special values.
# [OK] Number.ToExponential 6 special values with digits.
# [OK] Number.ToExponential 7 negative numbers.
# [OK] Number.ToExponential 8 rounding.
# [OK] Number.ToExponential 9 very small numbers.
# [OK] Number.ToExponential 10 very large numbers.
# [OK] Number.ToExponential 11 negative zero.
# [OK] Number.ToPrecision 0 basic: no precision.
# [OK] Number.ToPrecision 1 precision: 1.
# [OK] Number.ToPrecision 2 precision: 2.
# [OK] Number.ToPrecision 3 precision: multiple.
# [OK] Number.ToPrecision 4 precision: large.
# [OK] Number.ToPrecision 5 special values.
# [OK] Number.ToPrecision 6 special values with precision.
# [OK] Number.ToPrecision 7 negative numbers.
# [OK] Number.ToPrecision 8 rounding.
# [OK] Number.ToPrecision 9 zero handling.
# [OK] Number.ToPrecision 10 negative zero.
# [OK] Number.ToPre
<><> Error report <><><><><><><><><><><><><><><><><><><><><><><><><><><><><><><>
+- The following actions failed
| - build server-reason-react 0.4.1
+-
- No changes have been performed
# To update the current shell environment, run: eval $(opam env)
cision 11 very small numbers.
# [OK] Number.ToPrecision 12 very large numbers.
# [OK] String.Normalize 0 default form (NFC).
# [OK] String.Normalize 1 empty string.
# [OK] String.Normalize 2 ASCII unchanged.
# [OK] String.Normalize 3 NFC: basic.
# [OK] String.Normalize 4 NFC: multiple accents.
# [OK] String.Normalize 5 NFD: basic.
# [OK] String.Normalize 6 NFD: already decomposed.
# [OK] String.Normalize 7 NFKC: ligature.
# [OK] String.Normalize 8 NFKC: superscript.
# [OK] String.Normalize 9 NFKD: ligature.
# [OK] String.Normalize 10 NFKD: with accents.
# [OK] String.Normalize 11 Hangul syllable.
# [OK] String.Normalize 12 combining sequences.
# [OK] String.Search 0 basic: match.
# [OK] String.Search 1 basic: no match.
# [OK] String.Search 2 basic: match at start.
# [OK] String.Search 3 basic: match at end.
# [OK] String.Search 4 basic: empty string.
# [OK] String.Search 5 basic: empty pattern.
# [OK] String.Search 6 case: sensitive.
# [OK] String.Search 7 case: insensitive.
# [OK] String.Search 8 pattern: digit class.
# [OK] String.Search 9 pattern: word boundary.
# [OK] String.Search 10 pattern: any character.
# [OK] String.Search 11 pattern: alternation.
# [OK] String.Search 12 pattern: optional.
# [OK] String.Search 13 multiple: finds first.
# [OK] String.Search 14 multiple: global flag ignored.
# [OK] String.Search 15 unicode: characters.
# [OK] String.Search 16 unicode: emoji.
# [OK] String.Search 17 edge: special regex chars.
# [OK] String.Search 18 edge: newline.
# [OK] RegExp.NamedGroups 0 basic: date pattern.
# [OK] RegExp.NamedGroups 1 basic: single group.
# [OK] RegExp.NamedGroups 2 basic: multiple groups.
# [OK] RegExp.NamedGroups 3 access: by name.
# [OK] RegExp.NamedGroups 4 access: nonexistent.
# [OK] RegExp.NamedGroups 5 access: all groups list.
# [OK] RegExp.NamedGroups 6 pattern: with quantifiers.
# [OK] RegExp.NamedGroups 7 pattern: with alternation.
# [OK] RegExp.NamedGroups 8 edge: no named groups.
# [OK] RegExp.NamedGroups 9 edge: mixed named and unnamed.
# [OK] RegExp.DotAll 0 basic: dot without flag.
# [OK] RegExp.DotAll 1 basic: dot with flag.
# [OK] RegExp.DotAll 2 basic: flag accessor.
# [OK] RegExp.DotAll 3 line: matches LF.
# [OK] RegExp.DotAll 4 line: matches CR.
# [OK] RegExp.DotAll 5 line: matches CRLF.
# [OK] RegExp.DotAll 6 flags: with global.
# [OK] RegExp.DotAll 7 flags: with ignorecase.
# [OK] RegExp.DotAll 8 flags: with multiline.
# [OK] RegExp.DotAll 9 accessor: includes s.
# [OK] RegExp.DotAll 10 accessor: order.
# [OK] RegExp.DotAll 11 practical: multiline content.
# [OK] RegExp.DotAll 12 practical: without flag fails.
# [OK] RegExp.Unicode 0 flag: accessor.
# [OK] RegExp.Unicode 1 flag: in flags string.
# [OK] RegExp.Unicode 2 match: basic unicode.
# [OK] RegExp.Unicode 3 match: emoji.
# [OK] RegExp.Unicode 4 match: no match.
# [OK] RegExp.Unicode 5 combined: with global.
# [OK] RegExp.Unicode 6 combined: with ignorecase.
# [OK] RegExp.Unicode 7 combined: with multiline.
# [OK] RegExp.Unicode 8 property: letter category.
# [OK] RegExp.Unicode 9 astral: basic.
# [OK] RegExp.Unicode 10 astral: surrogate pairs.
# [OK] RegExp.Unicode 11 practical: international.
# [OK] RegExp.Unicode 12 practical: mixed scripts.
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/Js/test/_build/_tests/Js'.
# Test Successful in 0.978s. 814 tests run.
# (cd _build/default/packages/react/test && ./test.exe)
# Testing `React'.
# This run has ID `HJRVR05D'.
#
# [OK] cloneElement 0 empty component.
# [OK] cloneElement 1 attributes component.
# [OK] cloneElement 2 ordered attributes component.
# [OK] React 0 useState.
# [OK] React 1 useSyncExternalStoreWithServer.
# [OK] React 2 useEffect.
# [OK] React 3 Children.map.
# [OK] React 4 Children.map.
# [OK] React 5 useRef.
# [OK] React 6 invalid_children.
# [OK] React 7 invalid_dangerouslySetInnerHtml.
# [OK] React 8 raw_element.
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/react/test/_build/_tests/React'.
# Test Successful in 0.020s. 12 tests run.
# (cd _build/default/packages/reactDom/test && ./test.exe)
# Testing `ReactDOM'.
# This run has ID `7XZM9ZJF'.
#
# [OK] ReactServerDOM.render_html / client_with_element_props 0 ...
# [OK] ReactServerDOM.render_html / null_element 0 ...
# [OK] ReactServerDOM.render_html / element_with_dangerously_set_inner_html 0 ...
# [OK] ReactServerDOM.render_html / inner_html_element 0 ...
# [OK] ReactServerDOM.render_html / input_element_with_value 0 ...
# [OK] ReactServerDOM.render_html / upper_case_component 0 ...
# [OK] ReactServerDOM.render_html / async_component_without_promise 0 ...
# [OK] ReactServerDOM.render_html / suspense_without_promise 0 ...
# [OK] ReactServerDOM.render_html / with_sleepy_promise 0 ...
# [OK] ReactServerDOM.render_html / client_with_promise_props 0 ...
# [OK] ReactServerDOM.render_html / client_component_with_async_component 0 ...
# [OK] ReactServerDOM.render_html / async_component_with_promise 0 ...
# [OK] ReactServerDOM.render_html / suspense_with_error 0 ...
# [OK] ReactServerDOM.render_html / suspense_with_error_in_async 0 ...
# [OK] ReactServerDOM.render_html / suspense_with_error_under_lowercase 0 ...
# [OK] ReactServerDOM.render_html / error_without_suspense 0 ...
# [OK] ReactServerDOM.render_html / error_in_toplevel_in_async 0 ...
# [OK] ReactServerDOM.render_html / suspense_in_a_list_with_error 0 ...
# [OK] ReactServerDOM.render_html / server_function_as_action 0 ...
# [OK] ReactServerDOM.render_html / nested_context 0 ...
# [OK] ReactServerDOM.render_html / doctype 0 ...
# [OK] ReactServerDOM.render_html / just_an_html_node 0 ...
# [OK] ReactServerDOM.render_html / no_head_no_body_nothing_just_an_html_node 0 ...
# [OK] ReactServerDOM.render_html / html_with_no_srr_html_body 0 ...
# [OK] ReactServerDOM.render_html / html_with_a_node 0 ...
# [OK] ReactServerDOM.render_html / html_inside_a_div 0 ...
# [OK] ReactServerDOM.render_html / html_inside_a_fragment 0 ...
# [OK] ReactServerDOM.render_html / head_with_content 0 ...
# [OK] ReactServerDOM.render_html / html_with_only_a_body 0 ...
# [OK] ReactServerDOM.render_html / html_with_head_like_elements_not_in_head 0 ...
# [OK] ReactServerDOM.render_html / html_without_body_and_bootstrap_scripts 0 ...
# [OK] ReactServerDOM.render_html / html_with_body_and_bootstrap_scripts 0 ...
# [OK] ReactServerDOM.render_html / input_and_bootstrap_scripts 0 ...
# [OK] ReactServerDOM.render_html / title_and_meta_populates_to_the_head 0 ...
# [OK] ReactServerDOM.render_html / async_scripts_to_head 0 ...
# [OK] ReactServerDOM.render_html / no_async_scripts_to_remain 0 ...
# [OK] ReactServerDOM.render_html / async_scripts_gets_deduplicated 0 ...
# [OK] ReactServerDOM.render_html / async_scripts_gets_deduplicated_2 0 ...
# [OK] ReactServerDOM.render_html / link_with_rel_and_precedence 0 ...
# [OK] ReactServerDOM.render_html / links_gets_pushed_to_the_head 0 ...
# [OK] ReactServerDOM.render_html / self_closing_with_dangerously 0 ...
# [OK] ReactServerDOM.render_html / self_closing_with_dangerously_in_head 0 ...
# [OK] ReactServerDOM.render_html / upper_case_component_with_resources 0 ...
# [OK] ReactServerDOM.render_html / hoisted_elements_order_issue 0 ...
# [OK] ReactServerDOM.render_html / head_preserves_children_order 0 ...
# [OK] ReactServerDOM.render_html / html_attributes_are_preserved 0 ...
# [OK] ReactDOM.renderToStream / silly_stream 0 ...
# [OK] ReactDOM.renderToStream / render_inner_html 0 ...
# [OK] ReactDOM.renderToStream / react_use_without_suspense 0 ...
# [OK] ReactDOM.renderToStream / uppercase_component_always_throwing 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_react_use 0 ...
# [OK] ReactDOM.renderToStream / async component 0 ...
# [OK] ReactDOM.renderToStream / async_component_without_suspense 0 ...
# [OK] ReactDOM.renderToStream / suspense_without_promise 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_async_component 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_always_throwing 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_nested_suspense 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_nested_suspenses 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_nested_suspense_with_error 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_multiple_children 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_multiple_children_reordered 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_concurrent_suspenses 0 ...
# [OK] ReactDOM.renderToStream / suspense_with_comments 0 ...
# [OK] ReactDOM.renderToStaticMarkup / html_doctype 0 ...
# [OK] ReactDOM.renderToStaticMarkup / single_empty_tag 0 ...
# [OK] ReactDOM.renderToStaticMarkup / empty_string_attribute 0 ...
# [OK] ReactDOM.renderToStaticMarkup / bool_attributes 0 ...
# [OK] ReactDOM.renderToStaticMarkup / truthy_attributes 0 ...
# [OK] ReactDOM.renderToStaticMarkup / ignore_nulls 0 ...
# [OK] ReactDOM.renderToStaticMarkup / string_attributes 0 ...
# [OK] ReactDOM.renderToStaticMarkup / self_closing_tag 0 ...
# [OK] ReactDOM.renderToStaticMarkup / dom_element_innerHtml 0 ...
# [OK] ReactDOM.renderToStaticMarkup / children 0 ...
# [OK] ReactDOM.renderToStaticMarkup / className 0 ...
# [OK] ReactDOM.renderToStaticMarkup / className_2 0 ...
# [OK] ReactDOM.renderToStaticMarkup / className_3 0 ...
# [OK] ReactDOM.renderToStaticMarkup / fragment 0 ...
# [OK] ReactDOM.renderToStaticMarkup / fragments_and_texts 0 ...
# [OK] ReactDOM.renderToStaticMarkup / ignored_attributes_on_jsx 0 ...
# [OK] ReactDOM.renderToStaticMarkup / inline_styles 0 ...
# [OK] ReactDOM.renderToStaticMarkup / encode_attributes 0 ...
# [OK] ReactDOM.renderToStaticMarkup / dom_props_should_work 0 ...
# [OK] ReactDOM.renderToStaticMarkup / dangerouslySetInnerHtml 0 ...
# [OK] ReactDOM.renderToStaticMarkup / context 0 ...
# [OK] ReactDOM.renderToStaticMarkup / use_state 0 ...
# [OK] ReactDOM.renderToStaticMarkup / use_memo 0 ...
# [OK] ReactDOM.renderToStaticMarkup / use_callback 0 ...
# [OK] ReactDOM.renderToStaticMarkup / inner_html 0 ...
# [OK] ReactDOM.renderToStaticMarkup / event 0 ...
# [OK] ReactDOM.renderToStaticMarkup / render_with_doc_type 0 ...
# [OK] ReactDOM.renderToStaticMarkup / render_svg 0 ...
# [OK] ReactDOM.renderToStaticMarkup / ref_as_prop_works 0 ...
# [OK] ReactDOM.renderToStaticMarkup / ref_as_callback_prop_works 0 ...
# [OK] ReactDOM.renderToStaticMarkup / async 0 ...
# [OK] ReactDOM.renderToStaticMarkup / lists_and_arrays 0 ...
# [OK] ReactDOM.renderToString / react_root_one_element 0 ...
# [OK] ReactDOM.renderToString / react_root_two_elements 0 ...
# [OK] ReactDOM.renderToString / text_single_node should not add <!-- --> 0 ...
# [OK] ReactDOM.renderToString / consecutives_text_nodes should add <!-- --> 0 ...
# [OK] ReactDOM.renderToString / separated_text_nodes_by_other_parents 0 ...
# [OK] ReactDOM.Style.make / generate empty style 0 ...
# [OK] ReactDOM.Style.make / generate one style 0 ...
# [OK] ReactDOM.Style.make / generate more than one style 0 ...
# [OK] ReactDOM.Style.make / unsafeAddProp should be kebab-case 0 ...
# [OK] ReactDOM.Style.make / order matters 0 ...
# [OK] ReactDOM.Style.make / order matters II 0 ...
# [OK] ReactServerDOM.render_model / null_element 0 ...
# [OK] ReactServerDOM.render_model / string_element 0 ...
# [OK] ReactServerDOM.render_model / key_renders_outside_of_props 0 ...
# [OK] ReactServerDOM.render_model / style_as_json 0 ...
# [OK] ReactServerDOM.render_model / lower_case_component 0 ...
# [OK] ReactServerDOM.render_model / lower_case_component_nested 0 ...
# [OK] ReactServerDOM.render_model / lower_case_with_children 0 ...
# [OK] ReactServerDOM.render_model / dangerouslySetInnerHtml 0 ...
# [OK] ReactServerDOM.render_model / upper_case_component 0 ...
# [OK] ReactServerDOM.render_model / upper_case_with_list 0 ...
# [OK] ReactServerDOM.render_model / upper_case_with_children 0 ...
# [OK] ReactServerDOM.render_model / suspense_without_promise 0 ...
# [OK] ReactServerDOM.render_model / suspense_with_promise 0 ...
# [OK] ReactServerDOM.render_model / suspense_with_error 0 ...
# [OK] ReactServerDOM.render_model / suspense_with_error_in_async 0 ...
# [OK] ReactServerDOM.render_model / suspense_with_immediate_promise 0 ...
# [OK] ReactServerDOM.render_model / suspense 0 ...
# [OK] ReactServerDOM.render_model / async_component_without_suspense 0 ...
# [OK] ReactServerDOM.render_model / suspense_in_a_list 0 ...
# [OK] ReactServerDOM.render_model / client_with_promise_props 0 ...
# [OK] ReactServerDOM.render_model / async_component_without_suspense_immediate 0 ...
# [OK] ReactServerDOM.render_model / mixed_server_and_client 0 ...
# [OK] ReactServerDOM.render_model / client_with_json_props 0 ...
# [OK] ReactServerDOM.render_model / client_without_props 0 ...
# [OK] ReactServerDOM.render_model / client_with_element_props 0 ...
# [OK] ReactServerDOM.render_model / client_with_server_children 0 ...
# [OK] ReactServerDOM.render_model / client_component_with_async_component 0 ...
# [OK] ReactServerDOM.render_model / act_with_simple_response 0 ...
# [OK] ReactServerDOM.render_model / env_development_adds_debug_info 0 ...
# [OK] ReactServerDOM.render_model / act_with_error 0 ...
# [OK] ReactServerDOM.render_model / error_without_suspense 0 ...
# [OK] ReactServerDOM.render_model / error_in_toplevel 0 ...
# [OK] ReactServerDOM.render_model / error_in_toplevel_in_async 0 ...
# [OK] ReactServerDOM.render_model / suspense_in_a_list_with_error 0 ...
# [OK] ReactServerDOM.render_model / suspense_with_error_under_lowercase 0 ...
# [OK] ReactServerDOM.render_model / client_component_with_resources_metadata 0 ...
# [OK] ReactServerDOM.render_model / page_with_hoisted_resources 0 ...
# [OK] ReactServerDOM.render_model / nested_context 0 ...
# [OK] ReactServerDOM.render_model / model_list_value 0 ...
# [OK] ReactServerDOM.render_model / model_value_assoc 0 ...
# [OK] Decoders / decodeReply 0 ...
# [OK] Decoders / decodeFormDataReply 0 ...
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/reactDom/test/_build/_tests/ReactDOM'.
# Test Successful in 0.777s. 148 tests run.
# (cd _build/default/packages/server-reason-react-ppx/test && ./test.exe)
# Testing `server-reason-react.ppx'.
# This run has ID `EV6CVPS6'.
#
# [OK] tag 0 ...
# [OK] empty_attribute 0 ...
# [OK] bool_attribute 0 ...
# [OK] bool_attributes 0 ...
# [OK] innerhtml 0 ...
# [OK] int_attribute 0 ...
# [OK] svg_1 0 ...
# [OK] svg_2 0 ...
# [OK] booleanish_props_with_ppx 0 ...
# [OK] booleanish_props_without_ppx 0 ...
# [OK] style_attribute 0 ...
# [OK] ref_attribute 0 ...
# [OK] link_as_attribute 0 ...
# [OK] inner_html_attribute 0 ...
# [OK] inner_html_attribute_complex 0 ...
# [OK] int_opt_attr_some 0 ...
# [OK] int_opt_attribute_none 0 ...
# [OK] string_opt_attribute_some 0 ...
# [OK] string_opt_attribute_none 0 ...
# [OK] bool_opt_attribute_some 0 ...
# [OK] bool_opt_attribute_none 0 ...
# [OK] style_opt_attribute_some 0 ...
# [OK] style_opt_attribute_none 0 ...
# [OK] ref_opt_attribute_some 0 ...
# [OK] ref_opt_attribute_none 0 ...
# [OK] fragment 0 ...
# [OK] fragment_with_key 0 ...
# [OK] children_uppercase 0 ...
# [OK] children_lowercase 0 ...
# [OK] event_onClick 0 ...
# [OK] children_one_element 0 ...
# [OK] children_multiple_elements 0 ...
# [OK] create_element_variadic 0 ...
# [OK] aria_props 0 ...
# [OK] optional_prop 0 ...
# [OK] context 0 ...
# [OK] context_2 0 ...
# [OK] multiple_contexts 0 ...
# [OK] styles_attribute 0 ...
# [OK] styles_attribute_optional 0 ...
# [OK] styles_attribute_optional_some 0 ...
# [OK] styles_attribute_optional_some_with_class 0 ...
# [OK] styles_attribute_optional_some_with_style 0 ...
# [OK] styles_attribute_optional_some_with_class_and_style 0 ...
# [OK] server_function 0 ...
# [OK] server_function_reference 0 ...
# [OK] server_function_reference_args_error 0 ...
# [OK] server_function_reference_form_data 0 ...
# [OK] server_function_reference_form_data_and_args 0 ...
#
# Full test results in `~/.opam/5.4/.opam-switch/build/server-reason-react.0.4.1/_build/default/packages/server-reason-react-ppx/test/_build/_tests/server-reason-react.ppx'.
# Test Successful in 0.010s. 49 tests run.
'opam reinstall --with-test --verbose server-reason-react.0.4.1' failed.
[WARNING] OPAMCONFIRMLEVEL was ignored because CLI 2.0 was requested and it was introduced in 2.1.
[WARNING] OPAMCONFIRMLEVEL was ignored because CLI 2.0 was requested and it was introduced in 2.1.
"/usr/bin/env" "bash" "-c" "opam reinstall --with-test --verbose server-reason-react.0.4.1;
res=$?;
test "$res" != 31 && exit "$res";
export OPAMCLI=2.0;
build_dir=$(opam var prefix)/.opam-switch/build;
failed=$(ls "$build_dir");
partial_fails="";
for pkg in $failed; do
if opam show -f x-ci-accept-failures: "$pkg" | grep -qF "\"debian-13\""; then
echo "A package failed and has been disabled for CI using the 'x-ci-accept-failures' field.";
fi;
test "$pkg" != 'server-reason-react.0.4.1' && partial_fails="$partial_fails $pkg";
done;
test "${partial_fails}" != "" && echo "opam-repo-ci detected dependencies failing: ${partial_fails}";
exit 1" failed with exit status 1
2026-03-20 10:29.08: Job failed: Failed: Build failed
2026-03-20 10:29.08: Log analysis:
2026-03-20 10:29.08: >>>
[ERROR] The compilation of server-reason-react.0.4.1 failed at "dune build -p server-reason-react -j 71 @install @runtest".
(score = 20)
2026-03-20 10:29.08: >>>
[ERROR] The compilation of server-reason-react.0.4.1 failed at "dune build -p server-reason-react -j 71 @install @runtest".
(score = 20)
2026-03-20 10:29.08: The compilation of server-reason-react.0.4.1 failed at "dune build -p server-reason-react -j 71 @install @runtest".