use tola_caps::prelude::*;
#[test]
fn test_std_types_caps() {
#[cfg(feature = "std")]
{
use std::fs::File;
assert!(caps_check!(File: std::io::Read));
assert!(caps_check!(File: std::io::Write));
assert!(caps_check!(File: std::io::Seek));
assert!(caps_check!(File: core::fmt::Debug));
assert!(caps_check!(std::fs::Metadata: core::clone::Clone));
}
#[cfg(feature = "std")]
{
use std::sync::Mutex;
assert!(caps_check!(Mutex<i32>: Send));
assert!(caps_check!(Mutex<i32>: Sync));
assert!(caps_check!(Mutex<i32>: core::fmt::Debug));
assert!(caps_check!(Mutex<i32>: Default));
use std::rc::Rc;
assert!(!caps_check!(Mutex<Rc<i32>>: Send));
}
#[cfg(feature = "std")]
{
use std::thread::JoinHandle;
assert!(caps_check!(JoinHandle<()>: core::fmt::Debug));
}
#[cfg(feature = "std")]
{
use std::path::PathBuf;
assert!(caps_check!(PathBuf: core::clone::Clone));
assert!(caps_check!(PathBuf: core::fmt::Debug));
assert!(caps_check!(PathBuf: Default));
}
#[cfg(feature = "std")]
{
use std::net::TcpStream;
assert!(caps_check!(TcpStream: std::io::Read));
assert!(caps_check!(TcpStream: std::io::Write));
}
}