Skip to main content

toasty_driver_integration_suite/
lib.rs

1#[macro_use]
2mod macros;
3#[macro_use]
4mod util;
5
6mod helpers;
7pub use helpers::{
8    column, column_storage_ty, columns, pop_filter, pop_insert, pop_update, table_id,
9};
10
11mod isolate;
12use isolate::Isolate;
13
14mod instrumented_driver;
15pub use instrumented_driver::{DriverOp, Fault, InstrumentedDriver, InstrumentedHandle};
16
17mod setup;
18pub use setup::Setup;
19
20mod test;
21pub use test::{Test, TestResult};
22
23pub mod scenarios;
24
25pub mod stmt;
26
27/// Test implementations
28pub mod tests;
29
30// Re-export the macros
31#[doc(hidden)]
32pub use toasty_driver_integration_suite_macros::generate_driver_test_variants;
33
34// Generate the test registry macro by scanning the test directory once at compile time
35// This creates a macro_rules! generate_driver_tests that can be called multiple times
36toasty_driver_integration_suite_macros::generate_test_registry!("src/tests");
37
38mod prelude {
39    pub(crate) use crate::{
40        Test, column_storage_ty, columns, pop_filter, pop_insert, pop_update,
41        stmt::{Any, ArgOr},
42        table_id,
43    };
44    pub(crate) use toasty::Result;
45    pub(crate) use toasty::models;
46    pub(crate) use toasty::schema::{Embed, Model};
47    pub(crate) use toasty::stmt::{IpCidr, IpInet, MacAddr6, MacAddr8};
48    pub(crate) type BoxError = Box<dyn std::error::Error + 'static>;
49
50    pub(crate) use crate::util::{NumUtil, SliceUtil};
51    pub(crate) use assert_struct::assert_struct;
52    pub(crate) use toasty_driver_integration_suite_macros::{driver_test, scenario};
53}