From 69f0e9b624dad06666ae8e3d273087d99f71be74 Mon Sep 17 00:00:00 2001 From: Simon Cruanes <simon.cruanes.2007@m4x.org> Date: Tue, 17 Sep 2024 14:04:09 -0400 Subject: [PATCH] test: better regression test for #454 --- Makefile | 3 ++- tests/core/reg/dune | 5 +++++ tests/core/reg/t_reg454.expected | 0 tests/core/reg/t_reg454.ml | 8 ++++++++ tests/core/t_vector.ml | 12 ------------ 5 files changed, 15 insertions(+), 13 deletions(-) create mode 100644 tests/core/reg/dune create mode 100644 tests/core/reg/t_reg454.expected create mode 100644 tests/core/reg/t_reg454.ml diff --git a/Makefile b/Makefile index 3c14d7563..f6190bbdd 100644 --- a/Makefile +++ b/Makefile @@ -6,7 +6,8 @@ build: dune build @install -p $(PACKAGES) test: build - dune runtest --display=quiet --cache=disabled --no-buffer --force + # run tests in release mode to expose bug in #454 + dune runtest --display=quiet --cache=disabled --no-buffer --force --profile=release clean: dune clean diff --git a/tests/core/reg/dune b/tests/core/reg/dune new file mode 100644 index 000000000..985274b0e --- /dev/null +++ b/tests/core/reg/dune @@ -0,0 +1,5 @@ + +(tests + (ocamlopt_flags :standard -inline 1000) + (names t_reg454) + (libraries containers)) diff --git a/tests/core/reg/t_reg454.expected b/tests/core/reg/t_reg454.expected new file mode 100644 index 000000000..e69de29bb diff --git a/tests/core/reg/t_reg454.ml b/tests/core/reg/t_reg454.ml new file mode 100644 index 000000000..a8040580c --- /dev/null +++ b/tests/core/reg/t_reg454.ml @@ -0,0 +1,8 @@ +module Vec = CCVector + +let () = + let arr : Int32.t Vec.vector = Vec.create () in + Vec.push arr (Int32.of_int 123456); + Format.printf "%d\n" (Int32.to_int (Vec.get arr 0)); + let x = Vec.get arr 0 in + Format.printf "%d\n" (Int32.to_int x) diff --git a/tests/core/t_vector.ml b/tests/core/t_vector.ml index 5abe32923..121a7df75 100644 --- a/tests/core/t_vector.ml +++ b/tests/core/t_vector.ml @@ -753,15 +753,3 @@ push v 0; push v 0; push v 0; 6 = foldi (fun i acc _ -> acc + i) 0 v -;; - -t ~name:"reg454" @@ fun () -> -let arr : Int32.t vector = create () in -CCVector.push arr (Int32.of_int 123456); -let s = spf "%d\n" (Int32.to_int (CCVector.get arr 0)) in -Printf.eprintf "%d\n" (Int32.to_int (CCVector.get arr 0)); -let x = CCVector.get arr 0 in -let s2 = spf "%d\n" (Int32.to_int x) in -Printf.eprintf "%d\n" (Int32.to_int x); -assert_equal ~printer:(spf "%S") s s2; -true