From f534387ef6e7007c1de0ab6097bee583dfe323cc Mon Sep 17 00:00:00 2001 From: Jeremie Dimino Date: Sun, 17 Dec 2017 14:55:36 +0000 Subject: [PATCH] Add a test exposing a name clash When several private libraries have the same name, jbuilder crashes. --- test/blackbox-tests/jbuild | 7 +++++++ .../test-cases/multiple-private-libs/a/a.opam | 0 .../test-cases/multiple-private-libs/a/jbuild | 3 +++ .../test-cases/multiple-private-libs/a/test.ml | 1 + .../test-cases/multiple-private-libs/b/b.opam | 0 .../test-cases/multiple-private-libs/b/jbuild | 3 +++ .../test-cases/multiple-private-libs/b/test.ml | 1 + test/blackbox-tests/test-cases/multiple-private-libs/run.t | 5 +++++ 8 files changed, 20 insertions(+) create mode 100644 test/blackbox-tests/test-cases/multiple-private-libs/a/a.opam create mode 100644 test/blackbox-tests/test-cases/multiple-private-libs/a/jbuild create mode 100644 test/blackbox-tests/test-cases/multiple-private-libs/a/test.ml create mode 100644 test/blackbox-tests/test-cases/multiple-private-libs/b/b.opam create mode 100644 test/blackbox-tests/test-cases/multiple-private-libs/b/jbuild create mode 100644 test/blackbox-tests/test-cases/multiple-private-libs/b/test.ml create mode 100644 test/blackbox-tests/test-cases/multiple-private-libs/run.t diff --git a/test/blackbox-tests/jbuild b/test/blackbox-tests/jbuild index 032d8776..70e2a201 100644 --- a/test/blackbox-tests/jbuild +++ b/test/blackbox-tests/jbuild @@ -134,3 +134,10 @@ (action (chdir test-cases/select (setenv JBUILDER ${bin:jbuilder} (run ${exe:cram.exe} run.t)))))) + +(alias + ((name runtest) + (deps ((files_recursively_in test-cases/multiple-private-libs))) + (action + (chdir test-cases/multiple-private-libs + (setenv JBUILDER ${bin:jbuilder} (run ${exe:cram.exe} run.t)))))) diff --git a/test/blackbox-tests/test-cases/multiple-private-libs/a/a.opam b/test/blackbox-tests/test-cases/multiple-private-libs/a/a.opam new file mode 100644 index 00000000..e69de29b diff --git a/test/blackbox-tests/test-cases/multiple-private-libs/a/jbuild b/test/blackbox-tests/test-cases/multiple-private-libs/a/jbuild new file mode 100644 index 00000000..ff31db40 --- /dev/null +++ b/test/blackbox-tests/test-cases/multiple-private-libs/a/jbuild @@ -0,0 +1,3 @@ +(jbuild_version 1) + +(library ((name test))) diff --git a/test/blackbox-tests/test-cases/multiple-private-libs/a/test.ml b/test/blackbox-tests/test-cases/multiple-private-libs/a/test.ml new file mode 100644 index 00000000..0547b3d0 --- /dev/null +++ b/test/blackbox-tests/test-cases/multiple-private-libs/a/test.ml @@ -0,0 +1 @@ +let x = 1 diff --git a/test/blackbox-tests/test-cases/multiple-private-libs/b/b.opam b/test/blackbox-tests/test-cases/multiple-private-libs/b/b.opam new file mode 100644 index 00000000..e69de29b diff --git a/test/blackbox-tests/test-cases/multiple-private-libs/b/jbuild b/test/blackbox-tests/test-cases/multiple-private-libs/b/jbuild new file mode 100644 index 00000000..ff31db40 --- /dev/null +++ b/test/blackbox-tests/test-cases/multiple-private-libs/b/jbuild @@ -0,0 +1,3 @@ +(jbuild_version 1) + +(library ((name test))) diff --git a/test/blackbox-tests/test-cases/multiple-private-libs/b/test.ml b/test/blackbox-tests/test-cases/multiple-private-libs/b/test.ml new file mode 100644 index 00000000..38f5a818 --- /dev/null +++ b/test/blackbox-tests/test-cases/multiple-private-libs/b/test.ml @@ -0,0 +1 @@ +let x = 2 diff --git a/test/blackbox-tests/test-cases/multiple-private-libs/run.t b/test/blackbox-tests/test-cases/multiple-private-libs/run.t new file mode 100644 index 00000000..2432defd --- /dev/null +++ b/test/blackbox-tests/test-cases/multiple-private-libs/run.t @@ -0,0 +1,5 @@ +This test checks that there is no clash when two private libraries have the same name + + $ $JBUILDER build -j1 --root . @doc + Multiple rules generated for _build/default/_doc/test/index.html + [1]