1#![feature(assert_matches)]
2#![feature(box_patterns)]
3mod aggregates;
4mod books;
5mod complex;
6mod documentation;
7mod insane;
8mod limits;
9mod multiple;
10mod readme;
11mod simple;
12mod trade;
13mod transaction1;
14mod user;
15
16use std::env;
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;
31use log::LevelFilter;
32use readme::readme;
33use tank::Connection;
34
35pub fn init_logs() {
36 let mut logger = env_logger::builder();
37 logger
38 .is_test(true)
39 .format_file(true)
40 .format_line_number(true);
41 if env::var("RUST_LOG").is_err() {
42 logger.filter_level(LevelFilter::Warn);
43 }
44 let _ = logger.try_init();
45}
46
47pub async fn execute_tests<C: Connection>(mut connection: C) {
48 simple(&mut connection).await;
49 trade_simple(&mut connection).await;
50 trade_multiple(&mut connection).await;
51 users(&mut connection).await;
52 aggregates(&mut connection).await;
53 books(&mut connection).await;
54 complex(&mut connection).await;
55 insane(&mut connection).await;
56 limits(&mut connection).await;
57 multiple(&mut connection).await;
58 #[cfg(not(feature = "disable-transactions"))]
59 transaction1(&mut connection).await;
60 drop(readme(&mut connection).await);
61 documentation(&mut connection).await;
62}