aboutsummaryrefslogtreecommitdiffstats
path: root/test
diff options
context:
space:
mode:
Diffstat (limited to 'test')
-rw-r--r--test/Spec.hs10
-rw-r--r--test/scripts/record1.milch15
2 files changed, 24 insertions, 1 deletions
diff --git a/test/Spec.hs b/test/Spec.hs
index 6cb9fac..a17f344 100644
--- a/test/Spec.hs
+++ b/test/Spec.hs
@@ -101,7 +101,7 @@ e2eTests = testGroup "e2e" [
let expectedLastAST = astInteger 12586269025
assertEqual "" expectedLastAST (last gotASTs),
- do let env = makeEnv [builtinAdd2, builtinEq2]
+ do let env = builtinEnv
let script1 = "(let a :thing)\
\(let b :thing)\
\(eq? a b)"
@@ -109,6 +109,14 @@ e2eTests = testGroup "e2e" [
runInlineScript "<test>" script1
let expectedLastAST = astBoolean True
+ assertEqual "" expectedLastAST (last gotASTs),
+
+ do let env = builtinEnv
+ script1 <- readFile "test/scripts/record1.milch"
+ (gotASTs, _) <- expectSuccessL env $
+ runInlineScript "<test>" script1
+
+ let expectedLastAST = astInteger 369
assertEqual "" expectedLastAST (last gotASTs)
]
diff --git a/test/scripts/record1.milch b/test/scripts/record1.milch
new file mode 100644
index 0000000..8594179
--- /dev/null
+++ b/test/scripts/record1.milch
@@ -0,0 +1,15 @@
+(import "core/common")
+
+(record A
+ foo
+ bar)
+
+(let a (A/create "123" 456))
+
+(pipe a [
+ A/get-foo
+ parse-int
+ (* 3)
+ (A/create (A/get-foo a))
+ (A/get-bar)
+])