1use crate::redis::types::Generic;
4pub type Tusize = Generic<usize>;
5pub type Tu8 = Generic<u8>;
6pub type Tu16 = Generic<u16>;
7pub type Tu32 = Generic<u32>;
8pub type Tu64 = Generic<u64>;
9
10pub type Tisize = Generic<isize>;
11
12pub type Ti8 = Generic<i8>;
13pub type Ti16 = Generic<i16>;
14pub type Ti32 = Generic<i32>;
15pub type Ti64 = Generic<i64>;
16
17#[cfg(test)]
18mod tests {
19 use super::*;
20
21 #[allow(clippy::assign_op_pattern)]
22 #[test]
23 fn test_add() {
24 let client = redis::Client::open("redis://localhost:6379").unwrap();
25 let mut i32 = Ti32::with_value(1, "test_add", client.clone());
26 i32 = i32 + Ti32::with_value(2, "test_add2", client.clone());
27 assert_eq!(i32, 3);
28 }
29
30 #[test]
31 fn test_sub() {
32 let client = redis::Client::open("redis://localhost:6379").unwrap();
33 let mut i32 = Ti32::with_value(1, "test_sub", client.clone());
34 i32 = i32 - Ti32::with_value(2, "test_sub2", client.clone());
35 assert_eq!(i32, -1);
36 }
37
38 #[test]
39 fn test_mul() {
40 let client = redis::Client::open("redis://localhost:6379").unwrap();
41 let mut i32 = Ti32::with_value(1, "test_mul", client.clone());
42 i32 = i32 * Ti32::with_value(2, "test_mul2", client.clone());
43 assert_eq!(i32, 2);
44 }
45
46 #[test]
47 fn test_div() {
48 let client = redis::Client::open("redis://localhost:6379").unwrap();
49 let mut i32 = Ti32::with_value(1, "test_div", client.clone());
50 i32 = i32 / Ti32::with_value(2, "test_div2", client.clone());
51 assert_eq!(i32, 0);
52 }
53
54 #[test]
55 fn test_multiple_calculations() {
56 let client = redis::Client::open("redis://localhost:6379").unwrap();
57 let mut i32 = Ti32::with_value(1, "test_multiple_calculations", client.clone());
58 i32 = i32 + Ti32::with_value(2, "test_multiple_calculations2", client.clone());
59 i32 = i32 - Ti32::with_value(3, "test_multiple_calculations3", client.clone());
60 i32 = i32 * Ti32::with_value(4, "test_multiple_calculations4", client.clone());
61 i32 = i32 / Ti32::with_value(5, "test_multiple_calculations5", client.clone());
62 assert_eq!(i32, 0);
63 }
64
65 #[test]
66 fn test_add_assign() {
67 let client = redis::Client::open("redis://localhost:6379").unwrap();
68 let mut i32 = Ti32::with_value(1, "test_add_assign", client.clone());
69 i32 += Ti32::with_value(2, "test_add_assign2", client.clone());
70 assert_eq!(i32, 3);
71 }
72}