diff --git a/test/blackbox-tests/test-cases/melange/add-rules-under-melange-emit-target.t b/test/blackbox-tests/test-cases/melange/add-rules-under-melange-emit-target.t new file mode 100644 index 00000000000..1fd16363525 --- /dev/null +++ b/test/blackbox-tests/test-cases/melange/add-rules-under-melange-emit-target.t @@ -0,0 +1,48 @@ +Test that the target directory exists + + $ cat > dune-project < (lang dune 3.7) + > (using melange 0.1) + > EOF + + $ cat > dune < (melange.emit + > (alias melange) + > (target output) + > (module_system commonjs)) + > EOF + +Create the target dir + + $ mkdir ./output + $ cat > output/dune < (rule + > (with-stdout-to index.txt (echo "hello"))) + > (alias (name melange) (deps index.txt)) + > EOF + $ cat > hello.ml < let () = Js.log "hello" + > EOF + + $ dune build @melange + $ ls _build/default/output + hello.js + index.txt + +Target promotion works + + $ dune clean + $ cat > dune < (melange.emit + > (alias melange) + > (target output) + > (promote (until-clean)) + > (module_system commonjs)) + > EOF + + $ dune build @melange + $ ls _build/default/output + hello.js + index.txt + +