diff options
Diffstat (limited to 'tests')
-rw-r--r-- | tests/smoke.rs | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/tests/smoke.rs b/tests/smoke.rs new file mode 100644 index 0000000..059cf9f --- /dev/null +++ b/tests/smoke.rs | |||
@@ -0,0 +1,33 @@ | |||
1 | #![feature(type_alias_impl_trait)] | ||
2 | |||
3 | pub mod helper_functions { | ||
4 | use currying::curry; | ||
5 | |||
6 | #[curry] | ||
7 | pub fn product(x: u32, y: u32) -> u32 { | ||
8 | return x * y; | ||
9 | } | ||
10 | #[curry] | ||
11 | pub fn add(x: u32, y: u32) -> u32 { | ||
12 | x + y | ||
13 | } | ||
14 | } | ||
15 | |||
16 | #[cfg(test)] | ||
17 | mod tests { | ||
18 | use super::helper_functions::{add, product}; | ||
19 | #[test] | ||
20 | fn test_product() { | ||
21 | assert_eq!( | ||
22 | (1..=3).map(product(5)).collect::<Vec<u32>>(), | ||
23 | vec![5, 10, 15] | ||
24 | ); | ||
25 | } | ||
26 | |||
27 | #[test] | ||
28 | fn test_add() { | ||
29 | let increment = add(1); | ||
30 | let v: Vec<u32> = (1..=3).map(increment).collect(); | ||
31 | assert_eq!(v, vec![2, 3, 4]); | ||
32 | } | ||
33 | } | ||