summaryrefslogtreecommitdiffstats
path: root/tests/run-make/rustdoc-verify-output-files/Makefile
blob: 76f233ab445d00dd0184e98ed740a59c47b88af8 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
include ../tools.mk

OUTPUT_DIR := "$(TMPDIR)/rustdoc"
TMP_OUTPUT_DIR := "$(TMPDIR)/tmp-rustdoc"

all:
	# Generate html docs
	$(RUSTDOC) src/lib.rs --crate-name foobar --crate-type lib --out-dir $(OUTPUT_DIR)

	# Copy first output for to check if it's exactly same after second compilation
	cp -R $(OUTPUT_DIR) $(TMP_OUTPUT_DIR)

	# Generate html docs once again on same output
	$(RUSTDOC) src/lib.rs --crate-name foobar --crate-type lib --out-dir $(OUTPUT_DIR)

	# Check if everything exactly same
	$(DIFF) -r $(OUTPUT_DIR) $(TMP_OUTPUT_DIR)

	# Generate json doc on the same output
	$(RUSTDOC) src/lib.rs --crate-name foobar --crate-type lib --out-dir $(OUTPUT_DIR) -Z unstable-options --output-format json

	# Check if expected json file is generated
	[ -e $(OUTPUT_DIR)/foobar.json ]

	# Copy first json output to check if it's exactly same after second compilation
	cp -R $(OUTPUT_DIR)/foobar.json $(TMP_OUTPUT_DIR)/foobar.json

	# Generate json doc on the same output
	$(RUSTDOC) src/lib.rs --crate-name foobar --crate-type lib --out-dir $(OUTPUT_DIR) -Z unstable-options --output-format json

	# Check if all docs(including both json and html formats) are still the same after multiple compilations
	$(DIFF) -r $(OUTPUT_DIR) $(TMP_OUTPUT_DIR)