1mod aggregates;
2mod arrays1;
3mod arrays2;
4mod books;
5mod complex;
6mod documentation;
7mod full1;
8mod insane;
9mod interval;
10mod limits;
11mod multiple;
12mod readme;
13mod simple;
14mod trade;
15mod transaction1;
16mod user;
17
18use crate::{
19 books::books,
20 complex::complex,
21 documentation::documentation,
22 insane::insane,
23 limits::limits,
24 multiple::multiple,
25 simple::simple,
26 trade::{trade_multiple, trade_simple},
27 transaction1::transaction1,
28 user::users,
29};
30use aggregates::aggregates;
31
32#[cfg(not(feature = "disable-arrays"))]
33use arrays1::arrays1;
34#[cfg(not(feature = "disable-arrays"))]
35use arrays2::arrays2;
36#[cfg(not(feature = "disable-intervals"))]
37use interval::interval;
38use log::LevelFilter;
39use readme::readme;
40use std::env;
41use tank::Connection;
42
43pub fn init_logs() {
44 let mut logger = env_logger::builder();
45 logger
46 .is_test(true)
47 .format_file(true)
48 .format_line_number(true);
49 if env::var("RUST_LOG").is_err() {
50 logger.filter_level(LevelFilter::Warn);
51 }
52 let _ = logger.try_init();
53}
54
55pub async fn execute_tests<C: Connection>(mut connection: C) {
56 simple(&mut connection).await;
57 trade_simple(&mut connection).await;
58 trade_multiple(&mut connection).await;
59 users(&mut connection).await;
60 aggregates(&mut connection).await;
61 books(&mut connection).await;
62 complex(&mut connection).await;
63 insane(&mut connection).await;
64 limits(&mut connection).await;
65 multiple(&mut connection).await;
66 #[cfg(not(feature = "disable-transactions"))]
67 transaction1(&mut connection).await;
68 #[cfg(not(feature = "disable-intervals"))]
69 interval(&mut connection).await;
70 #[cfg(not(feature = "disable-arrays"))]
71 arrays1(&mut connection).await;
72 #[cfg(not(feature = "disable-arrays"))]
73 arrays2(&mut connection).await;
74 drop(readme(&mut connection).await);
75 documentation(&mut connection).await;
76}
77
78#[macro_export]
79macro_rules! silent_logs {
80 ($($code:tt)+) => {{
81 let level = log::max_level();
82 log::set_max_level(log::LevelFilter::Off);
83 $($code)+
84 log::set_max_level(level);
85 }};
86}