aboutsummaryrefslogtreecommitdiff
path: root/spec/inputs/test/class_expression_spec.yue
diff options
context:
space:
mode:
Diffstat (limited to 'spec/inputs/test/class_expression_spec.yue')
-rw-r--r--spec/inputs/test/class_expression_spec.yue27
1 files changed, 27 insertions, 0 deletions
diff --git a/spec/inputs/test/class_expression_spec.yue b/spec/inputs/test/class_expression_spec.yue
new file mode 100644
index 0000000..13c1d23
--- /dev/null
+++ b/spec/inputs/test/class_expression_spec.yue
@@ -0,0 +1,27 @@
1describe "class expression", ->
2 it "should support class expression assignment", ->
3 MyClass = class
4 value: 100
5
6 assert.same MyClass.value, 100
7
8 it "should support class expression in table", ->
9 classes = {
10 Alpha: class
11 new: => @value = 1
12 Beta: class
13 new: => @value = 2
14 }
15
16 a = classes.Alpha!
17 b = classes.Beta!
18 assert.same a.value, 1
19 assert.same b.value, 2
20
21 it "should work with return", ->
22 fn = ->
23 return class
24 value: 50
25
26 Instance = fn!
27 assert.same Instance!.value, 50