aboutsummaryrefslogtreecommitdiff
path: root/spec/inputs/test/anonymous_class_spec.yue
blob: 72854eeeebd3f1a40f0929ebdc1f6932f45b8843 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
describe "anonymous class", ->
	it "should create anonymous class", ->
		AnonymousClass = class
			value: 100
			getValue: => @value
		
		instance = AnonymousClass!
		assert.same instance\getValue!, 100
	
	it "should use assigned name", ->
		MyClass = class
			value: 50
		
		instance = MyClass!
		assert.is_true MyClass.__name == "MyClass"
		assert.same instance.value, 50
	
	it "should support anonymous subclass", ->
		Base = class
			baseMethod: => "base"
		
		Sub = class extends Base
			subMethod: => "sub"
		
		instance = Sub!
		assert.same instance\baseMethod!, "base"
		assert.same instance\subMethod!, "sub"