| #![allow(dead_code)] |
| |
| #[macro_use] |
| extern crate derive_builder; |
| |
| #[derive(Debug, Default, Clone)] |
| struct NotPartialEq(String); |
| |
| #[derive(Debug, Clone, Builder)] |
| #[builder(derive(Debug, PartialEq, Eq))] |
| struct Lorem { |
| foo: u8, |
| |
| /// This type doesn't have `PartialEq` support, but that's fine |
| /// since we don't want it in the builder. |
| #[builder(setter(skip))] |
| excluded: NotPartialEq, |
| } |
| |
| #[test] |
| fn defaults() { |
| // This macro requires that the two sides implement `PartialEq` AND `Debug`, |
| // so this one line is testing that the requested traits were really generated. |
| assert_eq!(LoremBuilder::default(), LoremBuilder::default()); |
| } |