@@ -10,10 +10,8 @@ ReactDOM = null
10
10
PropTypes = null
11
11
12
12
describe ' ReactCoffeeScriptClass' , ->
13
- div = null
14
- span = null
15
13
container = null
16
- Inner = null
14
+ InnerComponent = null
17
15
attachedListener = null ;
18
16
renderedName = null ;
19
17
@@ -24,15 +22,12 @@ describe 'ReactCoffeeScriptClass', ->
24
22
container = document .createElement ' div'
25
23
attachedListener = null
26
24
renderedName = null
27
- div = React .createFactory ' div'
28
- span = React .createFactory ' span'
29
- class InnerComponent extends React.Component
25
+ InnerComponent = class extends React.Component
30
26
getName : -> this .props .name
31
27
render : ->
32
28
attachedListener = this .props .onClick
33
29
renderedName = this .props .name
34
- return div className : this .props .name
35
- Inner = React .createFactory InnerComponent
30
+ return React .createElement (' div' , className : this .props .name )
36
31
37
32
test = (element , expectedTag , expectedClassName ) ->
38
33
instance = ReactDOM .render (element, container)
@@ -61,8 +56,9 @@ describe 'ReactCoffeeScriptClass', ->
61
56
it ' renders a simple stateless component with prop' , ->
62
57
class Foo extends React.Component
63
58
render : ->
64
- Inner
59
+ React . createElement (InnerComponent,
65
60
name : @props .bar
61
+ )
66
62
67
63
test React .createElement (Foo, bar : ' foo' ), ' DIV' , ' foo'
68
64
test React .createElement (Foo, bar : ' bar' ), ' DIV' , ' bar'
@@ -75,8 +71,9 @@ describe 'ReactCoffeeScriptClass', ->
75
71
@state = bar : @props .initialValue
76
72
77
73
render : ->
78
- span
74
+ React . createElement ( ' span' ,
79
75
className : @state .bar
76
+ )
80
77
81
78
test React .createElement (Foo, initialValue : ' foo' ), ' SPAN' , ' foo'
82
79
undefined
@@ -91,11 +88,12 @@ describe 'ReactCoffeeScriptClass', ->
91
88
92
89
render : ->
93
90
if @state .bar is ' foo'
94
- return div (
91
+ return React . createElement ( ' div ' ,
95
92
className : ' foo'
96
93
)
97
- span
94
+ React . createElement ( ' span' ,
98
95
className : @state .bar
96
+ )
99
97
100
98
instance = test React .createElement (Foo, initialValue : ' foo' ), ' DIV' , ' foo'
101
99
instance .changeState ()
@@ -108,8 +106,9 @@ describe 'ReactCoffeeScriptClass', ->
108
106
super props
109
107
@state = foo : null
110
108
render : ->
111
- div
109
+ React . createElement ( ' div' ,
112
110
className : " #{ @state .foo } #{ @state .bar } "
111
+ )
113
112
Foo .getDerivedStateFromProps = (nextProps , prevState ) ->
114
113
{
115
114
foo : nextProps .foo
@@ -121,7 +120,7 @@ describe 'ReactCoffeeScriptClass', ->
121
120
it ' warns if getDerivedStateFromProps is not static' , ->
122
121
class Foo extends React.Component
123
122
render : ->
124
- div ( )
123
+ React . createElement ( ' div ' )
125
124
getDerivedStateFromProps : ->
126
125
{}
127
126
expect (->
@@ -132,7 +131,7 @@ describe 'ReactCoffeeScriptClass', ->
132
131
it ' warns if getDerivedStateFromError is not static' , ->
133
132
class Foo extends React.Component
134
133
render : ->
135
- div ( )
134
+ React . createElement ( ' div ' )
136
135
getDerivedStateFromError : ->
137
136
{}
138
137
expect (->
@@ -143,7 +142,7 @@ describe 'ReactCoffeeScriptClass', ->
143
142
it ' warns if getSnapshotBeforeUpdate is static' , ->
144
143
class Foo extends React.Component
145
144
render : ->
146
- div ( )
145
+ React . createElement ( ' div ' )
147
146
Foo .getSnapshotBeforeUpdate = () ->
148
147
{}
149
148
expect (->
@@ -154,8 +153,9 @@ describe 'ReactCoffeeScriptClass', ->
154
153
it ' warns if state not initialized before static getDerivedStateFromProps' , ->
155
154
class Foo extends React.Component
156
155
render : ->
157
- div
156
+ React . createElement ( ' div' ,
158
157
className : " #{ @state .foo } #{ @state .bar } "
158
+ )
159
159
Foo .getDerivedStateFromProps = (nextProps , prevState ) ->
160
160
{
161
161
foo : nextProps .foo
@@ -179,8 +179,9 @@ describe 'ReactCoffeeScriptClass', ->
179
179
foo : ' foo'
180
180
bar : ' bar'
181
181
render : ->
182
- div
182
+ React . createElement ( ' div' ,
183
183
className : " #{ @state .foo } #{ @state .bar } "
184
+ )
184
185
Foo .getDerivedStateFromProps = (nextProps , prevState ) ->
185
186
{
186
187
foo : " not-#{ prevState .foo } "
@@ -195,8 +196,9 @@ describe 'ReactCoffeeScriptClass', ->
195
196
@state =
196
197
value : ' initial'
197
198
render : ->
198
- div
199
+ React . createElement ( ' div' ,
199
200
className : @state .value
201
+ )
200
202
Foo .getDerivedStateFromProps = (nextProps , prevState ) ->
201
203
if nextProps .update
202
204
return {
@@ -250,7 +252,7 @@ describe 'ReactCoffeeScriptClass', ->
250
252
251
253
render : ->
252
254
renderCount++
253
- span className : @state .bar
255
+ React . createElement ( ' span' , className : @state .bar )
254
256
255
257
test React .createElement (Foo, initialValue : ' foo' ), ' SPAN' , ' bar'
256
258
expect (renderCount).toBe 1
@@ -263,7 +265,7 @@ describe 'ReactCoffeeScriptClass', ->
263
265
@state = state
264
266
265
267
render : ->
266
- span ( )
268
+ React . createElement ( ' span ' )
267
269
268
270
expect (->
269
271
test React .createElement (Foo), ' SPAN' , ' '
@@ -276,7 +278,7 @@ describe 'ReactCoffeeScriptClass', ->
276
278
@state = null
277
279
278
280
render : ->
279
- span ( )
281
+ React . createElement ( ' span ' )
280
282
281
283
test React .createElement (Foo), ' SPAN' , ' '
282
284
undefined
@@ -290,9 +292,10 @@ describe 'ReactCoffeeScriptClass', ->
290
292
@ setState bar : ' bar'
291
293
292
294
render : ->
293
- Inner
295
+ React . createElement (InnerComponent,
294
296
name : @state .bar
295
297
onClick : @handleClick
298
+ )
296
299
297
300
test React .createElement (Foo, initialValue : ' foo' ), ' DIV' , ' foo'
298
301
attachedListener ()
@@ -308,9 +311,10 @@ describe 'ReactCoffeeScriptClass', ->
308
311
@ setState bar : ' bar'
309
312
310
313
render : ->
311
- Inner
314
+ React . createElement (InnerComponent,
312
315
name : @state .bar
313
316
onClick : @handleClick
317
+ )
314
318
315
319
test React .createElement (Foo, initialValue : ' foo' ), ' DIV' , ' foo'
316
320
expect (attachedListener).toThrow ()
@@ -326,9 +330,10 @@ describe 'ReactCoffeeScriptClass', ->
326
330
@ forceUpdate ()
327
331
328
332
render : ->
329
- Inner
333
+ React . createElement (InnerComponent,
330
334
name : @mutativeValue
331
335
onClick : @handleClick
336
+ )
332
337
333
338
test React .createElement (Foo, initialValue : ' foo' ), ' DIV' , ' foo'
334
339
attachedListener ()
@@ -364,8 +369,9 @@ describe 'ReactCoffeeScriptClass', ->
364
369
lifeCycles .push ' will-unmount'
365
370
366
371
render : ->
367
- span
372
+ React . createElement ( ' span' ,
368
373
className : @props .value
374
+ )
369
375
370
376
test React .createElement (Foo, value : ' foo' ), ' SPAN' , ' foo'
371
377
expect (lifeCycles).toEqual [
@@ -404,8 +410,9 @@ describe 'ReactCoffeeScriptClass', ->
404
410
{}
405
411
406
412
render : ->
407
- span
413
+ React . createElement ( ' span' ,
408
414
className : ' foo'
415
+ )
409
416
410
417
expect (->
411
418
test React .createElement (Foo), ' SPAN' , ' foo'
@@ -431,8 +438,9 @@ describe 'ReactCoffeeScriptClass', ->
431
438
{}
432
439
433
440
render : ->
434
- span
441
+ React . createElement ( ' span' ,
435
442
className : ' foo'
443
+ )
436
444
437
445
test React .createElement (Foo), ' SPAN' , ' foo'
438
446
undefined
@@ -443,8 +451,9 @@ describe 'ReactCoffeeScriptClass', ->
443
451
false
444
452
445
453
render : ->
446
- span
454
+ React . createElement ( ' span' ,
447
455
className : ' foo'
456
+ )
448
457
449
458
expect (->
450
459
test React .createElement (NamedComponent), ' SPAN' , ' foo'
@@ -461,8 +470,9 @@ describe 'ReactCoffeeScriptClass', ->
461
470
false
462
471
463
472
render : ->
464
- span
473
+ React . createElement ( ' span' ,
465
474
className : ' foo'
475
+ )
466
476
467
477
expect (->
468
478
test React .createElement (NamedComponent), ' SPAN' , ' foo'
@@ -478,8 +488,9 @@ describe 'ReactCoffeeScriptClass', ->
478
488
false
479
489
480
490
render : ->
481
- span
491
+ React . createElement ( ' span' ,
482
492
className : ' foo'
493
+ )
483
494
484
495
expect (->
485
496
test React .createElement (NamedComponent), ' SPAN' , ' foo'
@@ -491,7 +502,7 @@ describe 'ReactCoffeeScriptClass', ->
491
502
492
503
it ' should throw AND warn when trying to access classic APIs' , ->
493
504
instance =
494
- test Inner ( name : ' foo' ), ' DIV' , ' foo'
505
+ test React . createElement (InnerComponent, name : ' foo' ), ' DIV' , ' foo'
495
506
expect (->
496
507
expect (-> instance .replaceState {}).toThrow ()
497
508
).toWarnDev (
@@ -511,7 +522,7 @@ describe 'ReactCoffeeScriptClass', ->
511
522
@contextTypes :
512
523
bar : PropTypes .string
513
524
render : ->
514
- div className : @context .bar
525
+ React . createElement ( ' div' , className : @context .bar )
515
526
516
527
class Foo extends React.Component
517
528
@childContextTypes :
@@ -527,16 +538,17 @@ describe 'ReactCoffeeScriptClass', ->
527
538
it ' supports classic refs' , ->
528
539
class Foo extends React.Component
529
540
render : ->
530
- Inner
541
+ React . createElement (InnerComponent,
531
542
name : ' foo'
532
543
ref : ' inner'
544
+ )
533
545
534
546
instance = test (React .createElement (Foo), ' DIV' , ' foo' )
535
547
expect (instance .refs .inner .getName ()).toBe ' foo'
536
548
undefined
537
549
538
550
it ' supports drilling through to the DOM using findDOMNode' , ->
539
- instance = test Inner ( name : ' foo' ), ' DIV' , ' foo'
551
+ instance = test React . createElement (InnerComponent, name : ' foo' ), ' DIV' , ' foo'
540
552
node = ReactDOM .findDOMNode (instance)
541
553
expect (node).toBe container .firstChild
542
554
undefined
0 commit comments