aboutsummaryrefslogtreecommitdiffstats
path: root/spec
diff options
context:
space:
mode:
Diffstat (limited to 'spec')
-rw-r--r--spec/lang/thread_spec.moon25
1 files changed, 25 insertions, 0 deletions
diff --git a/spec/lang/thread_spec.moon b/spec/lang/thread_spec.moon
new file mode 100644
index 0000000..aa30a1b
--- /dev/null
+++ b/spec/lang/thread_spec.moon
@@ -0,0 +1,25 @@
+import TestPilot from require 'spec.test_setup'
+import T, Struct, Array, Constant from require 'alv'
+
+describe "thread macros", ->
+ COPILOT = TestPilot ''
+
+ it "thread forward (->)", ->
+ rt = COPILOT\eval_once '
+ (import* math)
+ #((/ (+ 10 2) 2) = 6)
+ (-> 10
+ (+ 2)
+ (/ 2))'
+ assert.is.true rt\is_const!
+ assert.is.equal (Constant.num 6), rt.result
+
+ it "thread last forward (->>)", ->
+ rt = COPILOT\eval_once '
+ (import* math)
+ #((/ 10 (+ 2 3)) = 2)
+ (->> 3
+ (+ 2)
+ (/ 10))'
+ assert.is.true rt\is_const!
+ assert.is.equal (Constant.num 2), rt.result