summaryrefslogtreecommitdiff
path: root/tests/compile_tests.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests/compile_tests.rs')
-rw-r--r--tests/compile_tests.rs29
1 files changed, 29 insertions, 0 deletions
diff --git a/tests/compile_tests.rs b/tests/compile_tests.rs
new file mode 100644
index 0000000..ac7427a
--- /dev/null
+++ b/tests/compile_tests.rs
@@ -0,0 +1,29 @@
+#[allow(unused_attributes)]
+#[rustversion::attr(not(nightly), ignore)]
+#[test]
+fn no_std() {
+ let t = trybuild::TestCases::new();
+ #[cfg(not(feature = "std"))]
+ t.compile_fail("tests/no_std/without.rs");
+ #[cfg(not(feature = "std"))]
+ t.compile_fail("tests/no_std/multi_line.rs");
+ #[cfg(not(feature = "std"))]
+ t.pass("tests/no_std/multi_line_allow.rs");
+ #[cfg(not(feature = "std"))]
+ t.compile_fail("tests/no_std/enum_prefix_missing.rs");
+ #[cfg(not(feature = "std"))]
+ t.pass("tests/no_std/enum_prefix.rs");
+ #[cfg(feature = "std")]
+ t.compile_fail("tests/std/without.rs");
+ #[cfg(feature = "std")]
+ t.compile_fail("tests/std/multi_line.rs");
+ #[cfg(feature = "std")]
+ t.pass("tests/std/multi_line_allow.rs");
+ #[cfg(feature = "std")]
+ t.compile_fail("tests/std/enum_prefix_missing.rs");
+ #[cfg(feature = "std")]
+ t.pass("tests/std/enum_prefix.rs");
+ #[cfg(feature = "std")]
+ t.pass("tests/std/multiple.rs");
+ t.pass("tests/no_std/with.rs");
+}