Add initial tests

This commit is contained in:
Ayaz Hafiz 2023-07-12 13:41:16 -05:00
parent 667a69279e
commit cb56872566
No known key found for this signature in database
GPG key ID: 0E2A37416A25EF58

View file

@ -3,6 +3,25 @@ use crate::helpers::llvm::assert_evals_to_erased;
use indoc::indoc; use indoc::indoc;
#[test]
#[cfg(any(feature = "gen-llvm"))]
fn capture_multiple() {
assert_evals_to_erased!(
indoc!(
r#"
app "test" provides [main] to "./platform"
f = \n, m ->
\{} -> n + m + 15u8
main = (f 10u8 20u8) {}
"#
),
45,
u8
);
}
#[test] #[test]
#[cfg(any(feature = "gen-llvm"))] #[cfg(any(feature = "gen-llvm"))]
fn multi_branch_capturing() { fn multi_branch_capturing() {
@ -13,13 +32,13 @@ fn multi_branch_capturing() {
f = \t, s -> f = \t, s ->
if t if t
then \{} -> 0 then \{} -> 15nat
else \{} -> Str.countGraphemes s else \{} -> Str.countGraphemes s
main = ((f Bool.true "abc") {}, (f Bool.false "abc") {}) main = ((f Bool.true "abc") {}, (f Bool.false "abc") {})
"# "#
), ),
(0, 3), (15, 3),
(usize, usize) (usize, usize)
); );
} }