tank_tests/
lib.rs

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}