• Home
  • Raw
  • Download

Lines Matching full:arbitrary

2 // Various structs/fields that we are deriving `Arbitrary` for aren't actually
6 use arbitrary::*;
8 fn arbitrary_from<'a, T: Arbitrary<'a>>(input: &'a [u8]) -> T { in arbitrary_from()
10 T::arbitrary(&mut buf).expect("can create arbitrary instance OK") in arbitrary_from()
13 #[derive(Copy, Clone, Debug, Eq, PartialEq, Arbitrary)]
27 assert_eq!((3, Some(3)), <Rgb as Arbitrary>::size_hint(0)); in struct_with_named_fields()
30 #[derive(Copy, Clone, Debug, Arbitrary)]
43 assert_eq!((2, Some(2)), <MyTupleStruct as Arbitrary>::size_hint(0)); in tuple_struct()
46 #[derive(Clone, Debug, Arbitrary)]
48 #[derive(Clone, Debug, Arbitrary)]
66 #[derive(Copy, Clone, Debug, Arbitrary)]
116 assert_eq!((4, Some(17)), <MyEnum as Arbitrary>::size_hint(0)); in derive_enum()
119 #[derive(Arbitrary, Debug)]
133 let (lower, upper) = <RecursiveTree as Arbitrary>::size_hint(0); in recursive()
141 #[derive(Arbitrary, Debug)]
152 let (lower, upper) = <Generic<u32> as Arbitrary>::size_hint(0); in generics()
157 #[derive(Arbitrary, Debug)]
169 let (lower, upper) = <OneLifetime as Arbitrary>::size_hint(0); in one_lifetime()
174 #[derive(Arbitrary, Debug)]
188 let (lower, upper) = <TwoLifetimes as Arbitrary>::size_hint(0); in two_lifetimes()
196 // https://github.com/rust-fuzz/arbitrary/issues/107 for details. in recursive_and_empty_input()
198 #[derive(Debug, Arbitrary)] in recursive_and_empty_input()
204 let _ = Nat::arbitrary(&mut Unstructured::new(&[])); in recursive_and_empty_input()
206 #[derive(Debug, Arbitrary)] in recursive_and_empty_input()
212 let _ = Nat2::arbitrary(&mut Unstructured::new(&[])); in recursive_and_empty_input()
214 #[derive(Debug, Arbitrary)] in recursive_and_empty_input()
219 let _ = Nat3::arbitrary(&mut Unstructured::new(&[])); in recursive_and_empty_input()
221 #[derive(Debug, Arbitrary)] in recursive_and_empty_input()
224 let _ = Nat4::arbitrary(&mut Unstructured::new(&[])); in recursive_and_empty_input()
226 #[derive(Debug, Arbitrary)] in recursive_and_empty_input()
232 let _ = Nat5::arbitrary(&mut Unstructured::new(&[])); in recursive_and_empty_input()
237 // A type that DOES NOT implement Arbitrary in test_field_attributes()
241 #[derive(Debug, Arbitrary)] in test_field_attributes()
243 #[arbitrary(with = arbitrary_weight)] in test_field_attributes()
246 #[arbitrary(default)] in test_field_attributes()
249 #[arbitrary(value = 2 + 2)] in test_field_attributes()
254 #[arbitrary(with = |u: &mut Unstructured| u.int_in_range(0..=100))] in test_field_attributes()
258 fn arbitrary_weight(u: &mut Unstructured) -> arbitrary::Result<Weight> { in test_field_attributes()
273 // 199 is the 2nd byte used by arbitrary in test_field_attributes()
276 // 17 is the 3rd byte used by arbitrary in test_field_attributes()