aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEnrico Tassi2018-12-13 10:56:13 +0100
committerEnrico Tassi2018-12-13 10:59:46 +0100
commita9e87e0b25cf11192d11da4499c3c3122f11a0c4 (patch)
tree350c09ee2dddc1a30b8c350c0263e6ee24bb41b4
parent4838146ee993a3bafb6a359dff529aae815cfff6 (diff)
[test] for join when error resiliency on and async-proofs off
-rw-r--r--ide/fake_ide.ml6
-rw-r--r--test-suite/Makefile2
-rw-r--r--test-suite/ide/join-sync.fake20
3 files changed, 25 insertions, 3 deletions
diff --git a/ide/fake_ide.ml b/ide/fake_ide.ml
index ae88f36b1c..8b0c736f50 100644
--- a/ide/fake_ide.ml
+++ b/ide/fake_ide.ml
@@ -11,7 +11,7 @@
(** Fake_ide : Simulate a [coqide] talking to a [coqidetop] *)
let error s =
- prerr_endline ("fake_id: error: "^s);
+ prerr_endline ("fake_ide: error: "^s);
exit 1
let pperr_endline pp = Format.eprintf "@[%a@]\n%!" Pp.pp_with pp
@@ -22,7 +22,7 @@ type coqtop = {
}
let print_error msg =
- Format.eprintf "fake_id: error: @[%a@]\n%!" Pp.pp_with msg
+ Format.eprintf "fake_ide: error: @[%a@]\n%!" Pp.pp_with msg
let base_eval_call ?(print=true) ?(fail=true) call coqtop =
if print then prerr_endline (Xmlprotocol.pr_call call);
@@ -312,6 +312,8 @@ let main =
Array.of_list (def_args @ ct), f
| _ -> usage () in
let inc = if input_file = "-" then stdin else open_in input_file in
+ prerr_endline ("Running: "^idetop_name^" "^
+ (String.concat " " (Array.to_list coqtop_args)));
let coq =
let _p, cin, cout = Coqide.spawn idetop_name coqtop_args in
let ip = Xml_parser.make (Xml_parser.SChannel cin) in
diff --git a/test-suite/Makefile b/test-suite/Makefile
index 9d2277c37e..530671e1a1 100644
--- a/test-suite/Makefile
+++ b/test-suite/Makefile
@@ -569,7 +569,7 @@ ide : $(patsubst %.fake,%.fake.log,$(wildcard ide/*.fake))
@echo "TEST $<"
$(HIDE){ \
echo $(call log_intro,$<); \
- $(BIN)fake_ide $< "-coqlib $(LIB) -boot -async-proofs on -async-proofs-tactic-error-resilience off -async-proofs-command-error-resilience off" 2>&1; \
+ $(BIN)fake_ide $< "-coqlib $(LIB) -boot -async-proofs on -async-proofs-tactic-error-resilience off -async-proofs-command-error-resilience off $(call get_coq_prog_args,"$<")" 2>&1; \
if [ $$? = 0 ]; then \
echo $(log_success); \
echo " $<...Ok"; \
diff --git a/test-suite/ide/join-sync.fake b/test-suite/ide/join-sync.fake
new file mode 100644
index 0000000000..236028ce46
--- /dev/null
+++ b/test-suite/ide/join-sync.fake
@@ -0,0 +1,20 @@
+# Script simulating a dialog between coqide and coqtop -ideslave
+# Run it via fake_ide
+#
+# Error resiliency + async proofs off
+# coq-prog-args: ("-async-proofs" "off" "-async-proofs-command-error-resilience" "on")
+#
+
+ADD { Lemma x : True. }
+ADD { Proof using. }
+ADD here { trivial. }
+ADD { fail. }
+ADD { Qed. }
+ADD { Lemma y : True. }
+ADD { Proof using. }
+ADD { trivial. }
+ADD { Qed. }
+WAIT
+FAILJOIN
+ASSERT TIP here
+ABORT