Organisationsmirageeqaf788c58 (no-cstruct)ubuntu-23.04-4.14_opam-2.1

ubuntu-23.04-4.14_opam-2.1

Link Copied
Code Copied

Logs

2024-05-10 15:51.43: New job: test mirage/eqaf https://github.com/mirage/eqaf.git#refs/heads/no-cstruct (788c584671732dca41a6096af45864c9cd46dbc1) (linux-x86_64:ubuntu-23.04-4.14_opam-2.1)
Base: ocaml/opam@sha256:2068bc887c3819eb4e0552a98fa5484d2eab0c83fb733e3641616f1b6c2209a2
Opam project build


To reproduce locally:


git clone --recursive "https://github.com/mirage/eqaf.git" -b "no-cstruct" && cd "eqaf" && git reset --hard 788c5846
cat > Dockerfile <<'END-OF-DOCKERFILE'
FROM ocaml/opam@sha256:2068bc887c3819eb4e0552a98fa5484d2eab0c83fb733e3641616f1b6c2209a2
# ubuntu-23.04-4.14_opam-2.1
USER 1000:1000
ENV CLICOLOR_FORCE="1"
ENV OPAMCOLOR="always"
WORKDIR /src
RUN sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam
RUN opam init --reinit -ni
RUN uname -rs && opam exec -- ocaml -version && opam --version
WORKDIR /src
RUN sudo chown opam /src
RUN cd ~/opam-repository && (git cat-file -e 307e33d08fc4ccc1ea453ab45b0ead8ed574b97b || git fetch origin master) && git reset -q --hard 307e33d08fc4ccc1ea453ab45b0ead8ed574b97b && git log --no-decorate -n1 --oneline && opam update -u
COPY --chown=1000:1000 eqaf.opam eqaf-cstruct.opam ./
RUN opam pin add -yn eqaf.dev './' && \
    opam pin add -yn eqaf-cstruct.dev './'
ENV DEPS="afl-persistent.1.4 alcotest.1.7.0 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.1 bechamel.0.5.0 cmdliner.1.2.0 cppo.1.6.9 crowbar.0.2.1 cstruct.6.2.0 dune.3.15.2 fmt.0.9.0 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.14.3 ocamlfind.1.9.6 ocplib-endian.1.2 re.1.11.0 seq.base stdlib-shims.0.3.0 topkg.1.0.7 uutf.1.0.3"
ENV CI="true"
ENV OCAMLCI="true"
RUN opam update --depexts && opam install --cli=2.1 --depext-only -y eqaf.dev eqaf-cstruct.dev $DEPS
RUN opam install $DEPS
COPY --chown=1000:1000 . /src
RUN opam exec -- dune build @install @check @runtest && rm -rf _build


END-OF-DOCKERFILE
docker build .
END-REPRO-BLOCK


2024-05-10 15:51.43: Using cache hint "mirage/eqaf-ocaml/opam@sha256:2068bc887c3819eb4e0552a98fa5484d2eab0c83fb733e3641616f1b6c2209a2-ubuntu-23.04-4.14_opam-2.1-8a6289ec249568384c06a28646b70979"
2024-05-10 15:51.43: Using OBuilder spec:
((from ocaml/opam@sha256:2068bc887c3819eb4e0552a98fa5484d2eab0c83fb733e3641616f1b6c2209a2)
 (comment ubuntu-23.04-4.14_opam-2.1)
 (user (uid 1000) (gid 1000))
 (env CLICOLOR_FORCE 1)
 (env OPAMCOLOR always)
 (workdir /src)
 (run (shell "sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam"))
 (run (shell "opam init --reinit -ni"))
 (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
 (workdir /src)
 (run (shell "sudo chown opam /src"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell "cd ~/opam-repository && (git cat-file -e 307e33d08fc4ccc1ea453ab45b0ead8ed574b97b || git fetch origin master) && git reset -q --hard 307e33d08fc4ccc1ea453ab45b0ead8ed574b97b && git log --no-decorate -n1 --oneline && opam update -u"))
 (copy (src eqaf.opam eqaf-cstruct.opam) (dst ./))
 (run (network host)
      (shell  "opam pin add -yn eqaf.dev './' && \
             \nopam pin add -yn eqaf-cstruct.dev './'"))
 (env DEPS "afl-persistent.1.4 alcotest.1.7.0 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.1 bechamel.0.5.0 cmdliner.1.2.0 cppo.1.6.9 crowbar.0.2.1 cstruct.6.2.0 dune.3.15.2 fmt.0.9.0 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.14.3 ocamlfind.1.9.6 ocplib-endian.1.2 re.1.11.0 seq.base stdlib-shims.0.3.0 topkg.1.0.7 uutf.1.0.3")
 (env CI true)
 (env OCAMLCI true)
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell "opam update --depexts && opam install --cli=2.1 --depext-only -y eqaf.dev eqaf-cstruct.dev $DEPS"))
 (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
      (network host)
      (shell "opam install $DEPS"))
 (copy (src .) (dst /src))
 (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
)


2024-05-10 15:51.43: Waiting for resource in pool OCluster
2024-05-11 03:17.08: Waiting for worker…
2024-05-11 03:19.11: Got resource from pool OCluster
Building on x86-bm-c18.sw.ocaml.org
All commits already cached
HEAD is now at 788c584 Split out eqaf and eqaf-cstruct


(from ocaml/opam@sha256:2068bc887c3819eb4e0552a98fa5484d2eab0c83fb733e3641616f1b6c2209a2)
Unable to find image 'ocaml/opam@sha256:2068bc887c3819eb4e0552a98fa5484d2eab0c83fb733e3641616f1b6c2209a2' locally
docker.io/ocaml/opam@sha256:2068bc887c3819eb4e0552a98fa5484d2eab0c83fb733e3641616f1b6c2209a2: Pulling from ocaml/opam
ceb161c083a8: Pulling fs layer
ceb161c083a8: Verifying Checksum
ceb161c083a8: Download complete
ceb161c083a8: Pull complete
Digest: sha256:2068bc887c3819eb4e0552a98fa5484d2eab0c83fb733e3641616f1b6c2209a2
Status: Downloaded newer image for ocaml/opam@sha256:2068bc887c3819eb4e0552a98fa5484d2eab0c83fb733e3641616f1b6c2209a2
2024-05-11 03:19.11 ---> using "1b7fae9a2863fb1c33494fdbab920a627f9fa212803e8c2d7c0f20b025f79883" from cache


/: (comment ubuntu-23.04-4.14_opam-2.1)


/: (user (uid 1000) (gid 1000))


/: (env CLICOLOR_FORCE 1)


/: (env OPAMCOLOR always)


/: (workdir /src)


/src: (run (shell "sudo ln -f /usr/bin/opam-2.1 /usr/bin/opam"))
2024-05-11 03:19.11 ---> using "b8ed0c17ec1a0b2925ded094fe55427703ff278571cfaab6ce54de1193eafbb8" from cache


/src: (run (shell "opam init --reinit -ni"))
Configuring from /home/opam/.opamrc and then 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.1, 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] synchronised from file:///home/opam/opam-repository
2024-05-11 03:19.11 ---> using "1642121db542823b83357826c04fc049d075d3cbe41d110e1c31f2f215a43474" from cache


/src: (run (shell "uname -rs && opam exec -- ocaml -version && opam --version"))
Linux 5.15.0-101-generic
The OCaml toplevel, version 4.14.2
2.1.5
2024-05-11 03:19.11 ---> using "4ed9b012611145eecd6b91fed9bf6e896b90b17f7c7c31d0c1163fbf0487a251" from cache


/src: (workdir /src)


/src: (run (shell "sudo chown opam /src"))
2024-05-11 03:19.11 ---> using "528878f1a5cf6fdcc05ba22c2e3cbafdfd63661c0e668aa19e99d227a395e809" from cache


/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
           (network host)
           (shell "cd ~/opam-repository && (git cat-file -e 307e33d08fc4ccc1ea453ab45b0ead8ed574b97b || git fetch origin master) && git reset -q --hard 307e33d08fc4ccc1ea453ab45b0ead8ed574b97b && git log --no-decorate -n1 --oneline && opam update -u"))
From https://github.com/ocaml/opam-repository
 * branch                  master     -> FETCH_HEAD
   eb2dcab0d8..2ae169d7d0  master     -> origin/master
307e33d08f @dra27 and @Octachron maintain the 4.08+ packages


<><> Updating package repositories ><><><><><><><><><><><><><><><><><><><><><><>
[default] synchronised from file:///home/opam/opam-repository


Everything as up-to-date as possible (run with --verbose to show unavailable upgrades).
However, you may "opam upgrade" these packages explicitly, which will ask permission to downgrade or uninstall the conflicting packages.
Nothing to do.
# Run eval $(opam env) to update the current shell environment
2024-05-11 03:19.11 ---> using "3adb359bd54b27293f7ff3845fb41793424640d033bfb5c89491f9562c3fdee0" from cache


/src: (copy (src eqaf.opam eqaf-cstruct.opam) (dst ./))
2024-05-11 03:19.11 ---> saved as "64b8fd05b2be559b9fa8eefcad253a50cf7073c814f7b28589c9e9e965ed3599"


/src: (run (network host)
           (shell  "opam pin add -yn eqaf.dev './' && \
                  \nopam pin add -yn eqaf-cstruct.dev './'"))
[eqaf.dev] synchronised (file:///src)
eqaf is now pinned to file:///src (version dev)
Package eqaf-cstruct does not exist, create as a NEW package? [Y/n] y
[eqaf-cstruct.dev] synchronised (file:///src)
eqaf-cstruct is now pinned to file:///src (version dev)
2024-05-11 03:19.15 ---> saved as "91f5ef4085427d03b12d9154306677561d2fb672bc008cf1399cd85800e37abf"


/src: (env DEPS "afl-persistent.1.4 alcotest.1.7.0 astring.0.8.5 base-bigarray.base base-bytes.base base-threads.base base-unix.base base64.3.5.1 bechamel.0.5.0 cmdliner.1.2.0 cppo.1.6.9 crowbar.0.2.1 cstruct.6.2.0 dune.3.15.2 fmt.0.9.0 ocaml.4.14.2 ocaml-base-compiler.4.14.2 ocaml-config.2 ocaml-options-vanilla.1 ocaml-syntax-shims.1.0.0 ocamlbuild.0.14.3 ocamlfind.1.9.6 ocplib-endian.1.2 re.1.11.0 seq.base stdlib-shims.0.3.0 topkg.1.0.7 uutf.1.0.3")


/src: (env CI true)


/src: (env OCAMLCI true)


/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
           (network host)
           (shell "opam update --depexts && opam install --cli=2.1 --depext-only -y eqaf.dev eqaf-cstruct.dev $DEPS"))
+ /usr/bin/sudo "apt-get" "update"
- Hit:1 http://archive.ubuntu.com/ubuntu lunar InRelease
- Hit:2 http://archive.ubuntu.com/ubuntu lunar-updates InRelease
- Hit:3 http://archive.ubuntu.com/ubuntu lunar-backports InRelease
- Hit:4 http://security.ubuntu.com/ubuntu lunar-security InRelease
- Reading package lists...
- 


<><> Synchronising pinned packages ><><><><><><><><><><><><><><><><><><><><><><>
[eqaf.dev] synchronised (no changes)
[eqaf-cstruct.dev] synchronised (no changes)


[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
2024-05-11 03:19.34 ---> saved as "4b3635e7cc0d3f451f6f8550b7945ac4e86c00e0b9c8892ed1b359fc62f5745d"


/src: (run (cache (opam-archives (target /home/opam/.opam/download-cache)))
           (network host)
           (shell "opam install $DEPS"))
[NOTE] Package ocaml-options-vanilla is already installed (current version is 1).
[NOTE] Package ocaml-config is already installed (current version is 2).
[NOTE] Package ocaml-base-compiler is already installed (current version is 4.14.2).
[NOTE] Package ocaml is already installed (current version is 4.14.2).
[NOTE] Package base-unix is already installed (current version is base).
[NOTE] Package base-threads is already installed (current version is base).
[NOTE] Package base-bigarray is already installed (current version is base).
The following actions will be performed:
  - install ocamlbuild         0.14.3
  - install cmdliner           1.2.0
  - install ocamlfind          1.9.6
  - install seq                base
  - install dune               3.15.2
  - install topkg              1.0.7
  - install base-bytes         base
  - install stdlib-shims       0.3.0
  - install re                 1.11.0
  - install ocaml-syntax-shims 1.0.0
  - install cppo               1.6.9
  - install base64             3.5.1
  - install afl-persistent     1.4
  - install uutf               1.0.3
  - install fmt                0.9.0
  - install astring            0.8.5
  - install ocplib-endian      1.2
  - install cstruct            6.2.0
  - install bechamel           0.5.0
  - install alcotest           1.7.0
  - install crowbar            0.2.1
===== 21 to install =====


<><> Processing actions <><><><><><><><><><><><><><><><><><><><><><><><><><><><>
-> retrieved afl-persistent.1.4  (cached)
-> retrieved astring.0.8.5  (cached)
-> retrieved base64.3.5.1  (cached)
-> retrieved alcotest.1.7.0  (cached)
-> retrieved bechamel.0.5.0  (cached)
-> retrieved cmdliner.1.2.0  (cached)
-> retrieved cppo.1.6.9  (cached)
-> retrieved crowbar.0.2.1  (cached)
-> retrieved cstruct.6.2.0  (cached)
-> retrieved fmt.0.9.0  (cached)
-> retrieved ocaml-syntax-shims.1.0.0  (cached)
-> retrieved ocamlbuild.0.14.3  (cached)
-> retrieved ocamlfind.1.9.6  (cached)
-> retrieved ocplib-endian.1.2  (cached)
-> installed seq.base
-> retrieved re.1.11.0  (cached)
-> retrieved stdlib-shims.0.3.0  (cached)
-> retrieved uutf.1.0.3  (cached)
-> retrieved topkg.1.0.7  (cached)
-> retrieved dune.3.15.2  (cached)
-> installed ocamlfind.1.9.6
-> installed base-bytes.base
-> installed cmdliner.1.2.0
-> installed ocamlbuild.0.14.3
-> installed topkg.1.0.7
-> installed uutf.1.0.3
-> installed fmt.0.9.0
-> installed astring.0.8.5
-> installed dune.3.15.2
-> installed afl-persistent.1.4
-> installed stdlib-shims.0.3.0
-> installed base64.3.5.1
-> installed cstruct.6.2.0
-> installed bechamel.0.5.0
-> installed ocaml-syntax-shims.1.0.0
-> installed re.1.11.0
-> installed cppo.1.6.9
-> installed ocplib-endian.1.2
-> installed crowbar.0.2.1
-> installed alcotest.1.7.0
Done.


<><> afl-persistent.1.4 installed successfully ><><><><><><><><><><><><><><><><>
=> afl-persistent is installed, but since the current OCaml compiler does
   not enable AFL instrumentation by default, most packages will not be
   instrumented and fuzzing with afl-fuzz may not be effective.


   To globally enable AFL instrumentation, create an OCaml switch like:


     opam switch create 4.14.2+afl ocaml-variants.4.14.2+options ocaml-option-afl
# Run eval $(opam env) to update the current shell environment
2024-05-11 03:20.49 ---> saved as "5412e7c53c9f9ae2a7a39ec8e04e0da41f2c433bcedea9d6dbf8c8445d1104cf"


/src: (copy (src .) (dst /src))
2024-05-11 03:20.49 ---> saved as "b7284124341a027670f2ca8f404c57a1ada1edc3b690e9c6970906b8ae54ba88"


/src: (run (shell "opam exec -- dune build @install @check @runtest && rm -rf _build"))
(cd _build/default/fuzz && ./fuzz.exe)
bool_of_int: PASS


select_a_if_in_range: PASS


uppercase_ascii: PASS


lowercase_ascii: PASS


divmod: PASS


hex_of_string |> string_of_hex: PASS


string_of_hex |> hex_of_string: PASS


equal: PASS


compare_le: PASS


compare_be: PASS


(cd _build/default/test && ./test_branch.exe)
[one_if_not_zero]:             4 operation(s).
[zero_if_not_zero]:            5 operation(s).
[select_int]:                  7 operation(s).
[one_if_not_zero 0x7eadbeef]:  4.000000s.
[one_if_not_zero 0x0]:         4.000000s.
[zero_if_not_zero 0x7eadbeef]: 5.000000s.
[zero_if_not_zero 0x0]:        5.000000s.
[select_int 0 1 2]:            7.000000s.
[select_int 2 1 0]:            7.000000s.
(cd _build/default/test && ./test.exe --color=always)
Testing `eqaf'.
This run has ID `L6ESV3F2'.


  [OK]          be                            0   be "a" "a" = 0.
  [OK]          be                            1   be "a" "b" = -1.
  [OK]          be                            2   be "b" "a" = 1.
  [OK]          be                            3   be "aa" "ab" = -1.
  [OK]          be                            4   be "aaa" "aba" = -1.
  [OK]          be                            5   be "bbb" "abc" = 1.
  [OK]          be                            6   be "bbb" "bbc" = -1.
  [OK]          be                            7   be "bbb" "abb" = 1.
  [OK]          be                            8   be "\0004\018" "\0003\018" ...
  [OK]          be                            9   be "\0004\018" "\0003\153" ...
  [OK]          le                            0   le "a" "a" = 0.
  [OK]          le                            1   le "a" "b" = -1.
  [OK]          le                            2   le "b" "a" = 1.
  [OK]          le                            3   le "aa" "ab" = -1.
  [OK]          le                            4   le "aaa" "aba" = -1.
  [OK]          le                            5   le "bbb" "abc" = -1.
  [OK]          le                            6   le "bbb" "bbc" = -1.
  [OK]          le                            7   le "bbb" "abb" = 1.
  [OK]          le                            8   le "\0004\018" "\0003\018" ...
  [OK]          le                            9   le "\0004\018" "\0003\153" ...
  [OK]          exists                        0   contains "a" a = true.
  [OK]          exists                        1   contains "a" b = false.
  [OK]          exists                        2   contains "abc" c = true.
  [OK]          exists                        3   contains "abc" a = true.
  [OK]          exists                        4   contains "abc" b = true.
  [OK]          exists                        5   contains "abc" d = false.
  [OK]          find                          0   index "a" a = 0.
  [OK]          find                          1   index "a" b = -1.
  [OK]          find                          2   index "aaaa" a = 0.
  [OK]          find                          3   index "bbbb" a = -1.
  [OK]          find                          4   index "aabb" b = 2.
  [OK]          find                          5   index "aabb" a = 0.
  [OK]          find                          6   index "aaab" b = 3.
  [OK]          int_of_bool                   0   int_of_bool false = 0.
  [OK]          int_of_bool                   1   int_of_bool true = 1.
  [OK]          bool_of_int                   0   int_of_bool 0 = false.
  [OK]          bool_of_int                   1   int_of_bool -1 = true.
  [OK]          bool_of_int                   2   int_of_bool 2 = true.
  [OK]          bool_of_int                   3   int_of_bool max_int = true.
  [OK]          bool_of_int                   4   int_of_bool min_int = true.
  [OK]          bool_of_int                   5   int_of_bool 1 = true.
  [OK]          select_a_if_in_range          0   select_a_if_in_range (0,3) ...
  [OK]          select_a_if_in_range          1   select_a_if_in_range (0,3) ...
  [OK]          select_a_if_in_range          2   select_a_if_in_range (0,3) ...
  [OK]          select_a_if_in_range          3   select_a_if_in_range (0,3) ...
  [OK]          select_a_if_in_range          4   select_a_if_in_range (0,3) ...
  [OK]          select_a_if_in_range          5   select_a_if_in_range (0,3) ...
  [OK]          select_a_if_in_range          6   select_a_if_in_range (0,0) ...
  [OK]          select_a_if_in_range          7   select_a_if_in_range (1,1) ...
  [OK]          select_a_if_in_range          8   select_a_if_in_range (1,1) ...
  [OK]          select_a_if_in_range          9   select_a_if_in_range (1,1) ...
  [OK]          select_a_if_in_range         10   select_a_if_in_range (0,0) ...
  [OK]          select_a_if_in_range         11   select_a_if_in_range (0,3) ...
  [OK]          select_a_if_in_range         12   select_a_if_in_range (0,3) ...
  [OK]          select_a_if_in_range         13   select_a_if_in_range (1,461...
  [OK]          select_a_if_in_range         14   select_a_if_in_range (1,461...
  [OK]          select_a_if_in_range         15   select_a_if_in_range (1,461...
  [OK]          select_a_if_in_range         16   select_a_if_in_range (1,461...
  [OK]          select_a_if_in_range         17   select_a_if_in_range (1,461...
  [OK]          select_a_if_in_range         18   select_a_if_in_range (1,461...
  [OK]          select_a_if_in_range         19   select_a_if_in_range (1,461...
  [OK]          select_a_if_in_range         20   select_a_if_in_range (1,461...
  [OK]          select_a_if_in_range         21   select_a_if_in_range (1,461...
  [OK]          select_a_if_in_range         22   select_a_if_in_range (0,461...
  [OK]          select_a_if_in_range         23   select_a_if_in_range (0,461...
  [OK]          select_a_if_in_range         24   select_a_if_in_range (0,461...
  [OK]          select_a_if_in_range         25   select_a_if_in_range (0,461...
  [OK]          divmod                        0   divmod  1 / 2 = 0, 1 mod 2 ...
  [OK]          divmod                        1   divmod  123 / 1 = 123, 123 ...
  [OK]          divmod                        2   divmod  1 / 3 = 0, 1 mod 3 ...
  [OK]          divmod                        3   divmod  2 / 3 = 0, 2 mod 3 ...
  [OK]          divmod                        4   divmod  3 / 2 = 1, 3 mod 2 ...
  [OK]          divmod                        5   divmod  10 / 6 = 1, 10 mod ...
  [OK]          divmod                        6   divmod  10 / 4 = 2, 10 mod ...
  [OK]          divmod                        7   divmod  1 / 2 = 0, 1 mod 2 ...
  [OK]          divmod                        8   divmod  30 / 7 = 4, 30 mod ...
  [OK]          divmod                        9   divmod  4 / 2 = 2, 4 mod 2 ...
  [OK]          divmod                       10   divmod  1234567 / 1 = 12345...
  [OK]          divmod                       11   divmod  1234567 / 10 = 1234...
  [OK]          divmod                       12   divmod  1234567 / 100 = 123...
  [OK]          divmod                       13   divmod  1234567 / 1000 = 12...
  [OK]          divmod                       14   divmod  1234567 / 10000 = 1...
  [OK]          divmod                       15   divmod  12345 / 100 = 123, ...
  [OK]          divmod                       16   divmod  4294906420 / 1000 =...
  [OK]          divmod                       17   divmod  1123456789 / 10000 ...
  [OK]          ascii_of_int32                0   ascii_of_string  6 12345678...
  [OK]          ascii_of_int32                1   ascii_of_string  -1 1234 "0...
  [OK]          ascii_of_int32                2   ascii_of_string  1 9876 "6".
  [OK]          ascii_of_int32                3   ascii_of_string  4 0 "0000".
  [OK]          ascii_of_int32                4   ascii_of_string  6 1234 "00...
  [OK]          ascii_of_int32                5   ascii_of_string  0 1234 "".
  [OK]          string_of_hex                 0     "2d2d486924" "--Hi$".
  [OK]          string_of_hex                 1     "2D2d486924" "--Hi$".
  [OK]          string_of_hex                 2     "1234" "\0184".
  [OK]          string_of_hex                 3     "ff80" "\255\128".
  [OK]          string_of_hex                 4     "b7DDdd" "\183\221\221".
  [OK]          string_of_hex                 5     "808888Fd" "\128\136\136\...
  [OK]          string_of_hex                 6     "E0EE8eEEEE" "\224\238\14...
  [OK]          string_of_hex                 7    empty "" "".
  [OK]          hex_of_string                 0     "--Hi$" "2d2d486924".
  [OK]          hex_of_string                 1     "\0184" "1234".
  [OK]          hex_of_string                 2     "\255\128" "ff80".
  [OK]          hex_of_string                 3     "\183\255 " "b7ff20".
  [OK]          hex_of_string                 4     "\000\001\000" "000100".
  [OK]          hex_of_string                 5    empty "" "".


Full test results in `/src/_build/default/test/_build/_tests/eqaf'.
Test Successful in 0.010s. 105 tests run.
2024-05-11 03:21.22 ---> saved as "5b796ff6802d27a4b640bad80d1e4056548cc78176dfded802449b266ab9900f"
Job succeeded
2024-05-11 03:21.22: Job succeeded