Skip to content

Commit 363d11d

Browse files
committed
test: show idents stamps are refreshed
1 parent 5917eaa commit 363d11d

File tree

2 files changed

+55
-0
lines changed

2 files changed

+55
-0
lines changed

tests/dune.inc

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1546,6 +1546,23 @@
15461546
(diff? %{t} %{t}.corrected)))))))
15471547
(alias (name runtest) (deps (alias typer-cache-load_path-test)))
15481548

1549+
(alias
1550+
(name typer-cache-stamps-test)
1551+
(package merlin)
1552+
(deps (:t ./test-dirs/typer-cache/stamps/test.t)
1553+
(source_tree ./test-dirs/typer-cache/stamps)
1554+
%{bin:ocamlmerlin}
1555+
%{bin:ocamlmerlin-server}
1556+
%{bin:dot-merlin-reader})
1557+
(action
1558+
(chdir ./test-dirs/typer-cache/stamps
1559+
(setenv MERLIN %{exe:merlin-wrapper}
1560+
(setenv OCAMLC %{ocamlc}
1561+
(progn
1562+
(run %{bin:mdx} test --syntax=cram %{t})
1563+
(diff? %{t} %{t}.corrected)))))))
1564+
(alias (name runtest) (deps (alias typer-cache-stamps-test)))
1565+
15491566
(alias
15501567
(name warnings-backtrack)
15511568
(package merlin)
Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,38 @@
1+
The server might already be running, we kill it to make sure we start from a
2+
clean slate:
3+
4+
$ $MERLIN server stop-server
5+
6+
Then we can look at identifier stamps and whether they are being reset between
7+
buffers, and different runs for the same buffer:
8+
9+
$ echo "let f x = x" | \
10+
> $MERLIN server dump -what browse -filename test.ml | \
11+
> sed 's:\\n:\n:g' | grep Tpat_var
12+
Tpat_var \"f/80\"
13+
Tpat_var \"x/82\"
14+
15+
$ echo "let f x = let () = () in x" | \
16+
> $MERLIN server dump -what browse -filename test.ml | \
17+
> sed 's:\\n:\n:g' | grep Tpat_var
18+
Tpat_var \"f/83\"
19+
Tpat_var \"x/85\"
20+
21+
$ echo "let f x = x" | \
22+
> $MERLIN server dump -what browse -filename other_test.ml | \
23+
> sed 's:\\n:\n:g' | grep Tpat_var
24+
Tpat_var \"f/80\"
25+
Tpat_var \"x/82\"
26+
27+
$ echo "let f x = let () = () in x" | \
28+
> $MERLIN server dump -what browse -filename test.ml | \
29+
> sed 's:\\n:\n:g' | grep Tpat_var
30+
Tpat_var \"f/80\"
31+
Tpat_var \"x/82\"
32+
33+
$ echo "let f x = x" | \
34+
> $MERLIN server dump -what browse -filename test.ml | \
35+
> sed 's:\\n:\n:g' | grep Tpat_var
36+
Tpat_var \"f/83\"
37+
Tpat_var \"x/85\"
38+

0 commit comments

Comments
 (0)