about summary refs log tree commit diff
path: root/src/test
diff options
context:
space:
mode:
authorJonas Schievink <jonasschievink@gmail.com>2021-01-24 22:09:59 +0100
committerGitHub <noreply@github.com>2021-01-24 22:09:59 +0100
commit504d6de52dfeab6086239180a92ff0bb5df2bb19 (patch)
tree877a5dbec051c8bc8b1933886c0b0a1e11036565 /src/test
parent22dc82fb9db48a9542d3c6b7736665d9a823eb52 (diff)
parent9b1d27d440d58edcb4c673798c60181c03c084c1 (diff)
downloadrust-504d6de52dfeab6086239180a92ff0bb5df2bb19.tar.gz
rust-504d6de52dfeab6086239180a92ff0bb5df2bb19.zip
Rollup merge of #81264 - Swatinem:doctest-run-directory, r=jyn514
Add unstable option to control doctest run directory

This option will allow splitting the compile-time from the run-time
directory of doctest invocations and is one step to solve
https://github.com/rust-lang/cargo/issues/8993#issuecomment-760088944

r? `@jyn514`
Diffstat (limited to 'src/test')
-rw-r--r--src/test/rustdoc-ui/run-directory.correct.stdout6
-rw-r--r--src/test/rustdoc-ui/run-directory.incorrect.stdout6
-rw-r--r--src/test/rustdoc-ui/run-directory.rs23
3 files changed, 35 insertions, 0 deletions
diff --git a/src/test/rustdoc-ui/run-directory.correct.stdout b/src/test/rustdoc-ui/run-directory.correct.stdout
new file mode 100644
index 00000000000..e9b2754794a
--- /dev/null
+++ b/src/test/rustdoc-ui/run-directory.correct.stdout
@@ -0,0 +1,6 @@
+
+running 1 test
+test $DIR/run-directory.rs - foo (line 10) ... ok
+
+test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in $TIME
+
diff --git a/src/test/rustdoc-ui/run-directory.incorrect.stdout b/src/test/rustdoc-ui/run-directory.incorrect.stdout
new file mode 100644
index 00000000000..97a5dbc5c0c
--- /dev/null
+++ b/src/test/rustdoc-ui/run-directory.incorrect.stdout
@@ -0,0 +1,6 @@
+
+running 1 test
+test $DIR/run-directory.rs - foo (line 19) ... ok
+
+test result: ok. 1 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in $TIME
+
diff --git a/src/test/rustdoc-ui/run-directory.rs b/src/test/rustdoc-ui/run-directory.rs
new file mode 100644
index 00000000000..78431c0e80b
--- /dev/null
+++ b/src/test/rustdoc-ui/run-directory.rs
@@ -0,0 +1,23 @@
+// this test asserts that the cwd of doctest invocations is set correctly.
+
+// revisions: correct incorrect
+// check-pass
+// [correct]compile-flags:--test --test-run-directory={{src-base}}
+// [incorrect]compile-flags:--test --test-run-directory={{src-base}}/coverage
+// normalize-stdout-test: "src/test/rustdoc-ui" -> "$$DIR"
+// normalize-stdout-test "finished in \d+\.\d+s" -> "finished in $$TIME"
+
+/// ```
+/// assert_eq!(
+///     std::fs::read_to_string("run-directory.rs").unwrap(),
+///     include_str!("run-directory.rs"),
+/// );
+/// ```
+#[cfg(correct)]
+pub fn foo() {}
+
+/// ```
+/// assert!(std::fs::read_to_string("run-directory.rs").is_err());
+/// ```
+#[cfg(incorrect)]
+pub fn foo() {}