summaryrefslogtreecommitdiffstats
path: root/tests-build/tests/features.rs
diff options
context:
space:
mode:
Diffstat (limited to 'tests-build/tests/features.rs')
-rw-r--r--tests-build/tests/features.rs62
1 files changed, 62 insertions, 0 deletions
diff --git a/tests-build/tests/features.rs b/tests-build/tests/features.rs
new file mode 100644
index 00000000..b40e44ed
--- /dev/null
+++ b/tests-build/tests/features.rs
@@ -0,0 +1,62 @@
+#![allow(unused_imports)]
+
+#[test]
+#[cfg(feature = "tokio-net")]
+fn net_default() {
+ use tests_build::tokio_net::driver::{set_default, Handle, Reactor, Registration};
+ use tests_build::tokio_net::util::PollEvented;
+}
+
+#[test]
+#[cfg(feature = "net-with-tcp")]
+fn net_with_tcp() {
+ use tests_build::tokio_net::tcp;
+}
+
+#[test]
+#[cfg(feature = "net-with-udp")]
+fn net_with_udp() {
+ use tests_build::tokio_net::udp;
+}
+
+#[test]
+#[cfg(feature = "net-with-uds")]
+fn net_with_uds() {
+ use tests_build::tokio_net::uds;
+}
+
+#[test]
+#[cfg(feature = "net-with-process")]
+fn net_with_process() {
+ use tests_build::tokio_net::process;
+}
+
+#[test]
+#[cfg(feature = "tokio-with-net")]
+fn tokio_with_net() {
+ // net is present
+ use tests_build::tokio::net;
+}
+
+#[test]
+fn compile_fail() {
+ let t = trybuild::TestCases::new();
+
+ #[cfg(feature = "executor-without-current-thread")]
+ t.compile_fail("tests/fail/executor_without_current_thread.rs");
+
+ #[cfg(feature = "macros-invalid-input")]
+ t.compile_fail("tests/fail/macros_invalid_input.rs");
+
+ #[cfg(feature = "net-no-features")]
+ {
+ t.compile_fail("tests/fail/net_without_tcp_missing_tcp.rs");
+ t.compile_fail("tests/fail/net_without_udp_missing_udp.rs");
+ t.compile_fail("tests/fail/net_without_uds_missing_uds.rs");
+ }
+
+ #[cfg(feature = "tokio-no-features")]
+ t.compile_fail("tests/fail/tokio_without_net_missing_net.rs");
+
+ drop(t);
+}