Struct tendermint_testgen::tester::Tester
source · [−]pub struct Tester { /* private fields */ }
Expand description
Tester allows you to easily run some test functions over a set of test files. You create a Tester instance with the reference to some specific directory, containing your test files. After a creation, you can add several types of tests there:
- add_test() adds a simple test function, which can run on some test, deserilizable from a file.
- add_test_with_env() allows your test function to receive several test environments, so that it can easily perform some operations on files when necessary
- add_test_batch() adds a batch of test: a function that accepts a ceserializable batch description, and produces a set of test from it
After you have added all your test functions, you run Tester either on individual files using run_for_file(), or for whole directories, using run_foreach_in_dir(); the directories will be traversed recursively top-down.
The last step involves calling the finalize() function, which will produce the test report and panic in case there was at least one failing test. When there are files in the directories you run Tester on, that could not be read/parsed, it is also considered an error, and leads to panic.
Implementations
sourceimpl Tester
impl Tester
pub fn new(name: &str, root_dir: &str) -> Tester
pub fn env(&self) -> Option<TestEnv>
pub fn output_env(&self) -> Option<TestEnv>
pub fn add_test<T, F>(&mut self, name: &str, test: F) where
T: 'static + DeserializeOwned + UnwindSafe,
F: Fn(T) + UnwindSafe + RefUnwindSafe + 'static,
pub fn add_test_with_env<T, F>(&mut self, name: &str, test: F) where
T: 'static + DeserializeOwned + UnwindSafe,
F: Fn(T, &TestEnv, &TestEnv, &TestEnv) + UnwindSafe + RefUnwindSafe + 'static,
pub fn add_test_batch<T, F>(&mut self, batch: F) where
T: 'static + DeserializeOwned,
F: Fn(T) -> Vec<(String, String)> + 'static,
pub fn successful_tests(&self, test: &str) -> Vec<String>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
pub fn failed_tests(&self, test: &str) -> Vec<(String, String, String)>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
pub fn unreadable_tests(&self) -> Vec<String>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
pub fn unparseable_tests(&self) -> Vec<String>ⓘNotable traits for Vec<u8, A>impl<A> Write for Vec<u8, A> where
A: Allocator,
A: Allocator,
pub fn run_for_file(&mut self, path: &str)
pub fn run_foreach_in_dir(&mut self, dir: &str)
pub fn finalize(&mut self)
Auto Trait Implementations
impl !RefUnwindSafe for Tester
impl !Send for Tester
impl !Sync for Tester
impl Unpin for Tester
impl !UnwindSafe for Tester
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more