#![feature(proc_macro)]
extern crate trait_tests;
#[cfg(test)]
mod example_tests {
use trait_tests::*;
trait Hello {
fn get_greeting(&self) -> &str;
}
#[trait_tests]
trait HelloTests: Hello + Sized + Default {
fn test() {
assert!(Self::default().get_greeting().len() < 200);
}
}
struct SpanishHelloImpl {}
#[test_impl]
impl Hello for SpanishHelloImpl {
fn get_greeting(&self) -> &str {
"Hola"
}
}
impl Default for SpanishHelloImpl {
fn default() -> Self {
SpanishHelloImpl {}
}
}
}