auto typing bytesinput
This commit is contained in:
parent
4b8fa9d7b5
commit
dea240a324
@ -195,9 +195,10 @@ where
|
|||||||
}
|
}
|
||||||
|
|
||||||
/// Create a new Testcase instace given an input
|
/// Create a new Testcase instace given an input
|
||||||
pub fn new(input: I) -> Self {
|
pub fn new<T>(input: T) -> Self
|
||||||
|
where T: Into<I>{
|
||||||
Testcase {
|
Testcase {
|
||||||
input: Some(input),
|
input: Some(input.into()),
|
||||||
filename: None,
|
filename: None,
|
||||||
metadatas: HashMap::default(),
|
metadatas: HashMap::default(),
|
||||||
}
|
}
|
||||||
|
@ -87,7 +87,7 @@ mod tests {
|
|||||||
use core::cell::RefCell;
|
use core::cell::RefCell;
|
||||||
|
|
||||||
use crate::corpus::{Corpus, InMemoryCorpus, Testcase};
|
use crate::corpus::{Corpus, InMemoryCorpus, Testcase};
|
||||||
use crate::engines::{Engine, DefaultEngine};
|
use crate::engines::{DefaultEngine, Engine};
|
||||||
use crate::executors::inmemory::InMemoryExecutor;
|
use crate::executors::inmemory::InMemoryExecutor;
|
||||||
use crate::executors::{Executor, ExitKind};
|
use crate::executors::{Executor, ExitKind};
|
||||||
use crate::inputs::bytes::BytesInput;
|
use crate::inputs::bytes::BytesInput;
|
||||||
@ -106,7 +106,7 @@ mod tests {
|
|||||||
let rand: Rc<_> = DefaultRand::new(0).into();
|
let rand: Rc<_> = DefaultRand::new(0).into();
|
||||||
|
|
||||||
let mut corpus = InMemoryCorpus::<BytesInput, _>::new(&rand);
|
let mut corpus = InMemoryCorpus::<BytesInput, _>::new(&rand);
|
||||||
let testcase = Testcase::new(BytesInput::new(vec![0; 4])).into();
|
let testcase = Testcase::new(vec![0; 4]).into();
|
||||||
corpus.add(testcase);
|
corpus.add(testcase);
|
||||||
let executor: Rc<RefCell<InMemoryExecutor<BytesInput>>> =
|
let executor: Rc<RefCell<InMemoryExecutor<BytesInput>>> =
|
||||||
InMemoryExecutor::new(harness).into();
|
InMemoryExecutor::new(harness).into();
|
||||||
|
@ -339,9 +339,9 @@ mod tests {
|
|||||||
// With the current impl, seed of 1 will result in a split at pos 2.
|
// With the current impl, seed of 1 will result in a split at pos 2.
|
||||||
let rand: Rc<_> = XKCDRand::new().into();
|
let rand: Rc<_> = XKCDRand::new().into();
|
||||||
let mut has_rand = DefaultHasRand::new(&rand);
|
let mut has_rand = DefaultHasRand::new(&rand);
|
||||||
let mut corpus = InMemoryCorpus::new(&rand);
|
let mut corpus: InMemoryCorpus<BytesInput, _> = InMemoryCorpus::new(&rand);
|
||||||
corpus.add(Testcase::new(BytesInput::new(vec!['a' as u8, 'b' as u8, 'c' as u8])).into());
|
corpus.add(Testcase::new(vec!['a' as u8, 'b' as u8, 'c' as u8]).into());
|
||||||
corpus.add(Testcase::new(BytesInput::new(vec!['d' as u8, 'e' as u8, 'f' as u8])).into());
|
corpus.add(Testcase::new(vec!['d' as u8, 'e' as u8, 'f' as u8]).into());
|
||||||
|
|
||||||
let testcase_rr = corpus.next().expect("Corpus did not contain entries");
|
let testcase_rr = corpus.next().expect("Corpus did not contain entries");
|
||||||
let mut testcase = testcase_rr.borrow_mut();
|
let mut testcase = testcase_rr.borrow_mut();
|
||||||
|
Loading…
x
Reference in New Issue
Block a user