8
8
9
9
'use strict' ;
10
10
11
- /* eslint-env node, mocha */
11
+ /* eslint-env node */
12
12
13
13
/*
14
14
* Module dependencies.
15
15
*/
16
16
17
- var assert = require ( 'assert ' ) ;
17
+ var test = require ( 'tape ' ) ;
18
18
var chalk = require ( 'chalk' ) ;
19
19
var retext = require ( 'retext' ) ;
20
20
var inspect = require ( './' ) ;
@@ -24,7 +24,6 @@ var inspect = require('./');
24
24
*/
25
25
26
26
var strip = chalk . stripColor ;
27
- var equal = assert . equal ;
28
27
29
28
/*
30
29
* Fixtures.
@@ -36,81 +35,75 @@ var paragraph = 'Some simple text. Other “sentence”.';
36
35
* Tests.
37
36
*/
38
37
39
- describe ( 'inspect' , function ( ) {
40
- it ( 'should be a `function`' , function ( ) {
41
- equal ( typeof inspect , 'function' ) ;
42
- } ) ;
38
+ test ( 'inspect' , function ( t ) {
39
+ t . equal ( typeof inspect , 'function' , 'should be a `function`' ) ;
40
+
41
+ t . test ( 'should have `color` and `noColor` properties' , function ( st ) {
42
+ st . equal ( typeof inspect . color , 'function' ) ;
43
+ st . equal ( typeof inspect . noColor , 'function' ) ;
43
44
44
- it ( 'should have `color` and `noColor` properties' , function ( ) {
45
- equal ( typeof inspect . color , 'function' ) ;
46
- equal ( typeof inspect . noColor , 'function' ) ;
45
+ st . equal ( typeof inspect . color . noColor , 'function' ) ;
46
+ st . equal ( typeof inspect . noColor . color , 'function' ) ;
47
47
48
- equal ( typeof inspect . color . noColor , 'function' ) ;
49
- equal ( typeof inspect . noColor . color , 'function' ) ;
48
+ st . end ( ) ;
50
49
} ) ;
50
+
51
+ t . end ( ) ;
51
52
} ) ;
52
53
53
54
/*
54
55
* Unit tests for `Node#inspect()`.
55
56
*/
56
57
57
- describe ( 'inspect()' , function ( ) {
58
- var tree ;
59
-
60
- before ( function ( ) {
61
- tree = retext ( ) . parse ( paragraph ) ;
62
- } ) ;
63
-
64
- it ( 'should work on `RootNode`' , function ( ) {
65
- equal (
66
- strip ( inspect ( tree ) ) ,
67
- [
68
- 'RootNode[1] (1:1-1:36, 0-35)' ,
69
- '└─ ParagraphNode[3] (1:1-1:36, 0-35)' ,
70
- ' ├─ SentenceNode[6] (1:1-1:18, 0-17)' ,
71
- ' │ ├─ WordNode[1] (1:1-1:5, 0-4)' ,
72
- ' │ │ └─ TextNode: "Some" (1:1-1:5, 0-4)' ,
73
- ' │ ├─ WhiteSpaceNode: " " (1:5-1:6, 4-5)' ,
74
- ' │ ├─ WordNode[1] (1:6-1:12, 5-11)' ,
75
- ' │ │ └─ TextNode: "simple" (1:6-1:12, 5-11)' ,
76
- ' │ ├─ WhiteSpaceNode: " " (1:12-1:13, 11-12)' ,
77
- ' │ ├─ WordNode[1] (1:13-1:17, 12-16)' ,
78
- ' │ │ └─ TextNode: "text" (1:13-1:17, 12-16)' ,
79
- ' │ └─ PunctuationNode: "." (1:17-1:18, 16-17)' ,
80
- ' ├─ WhiteSpaceNode: " " (1:18-1:19, 17-18)' ,
81
- ' └─ SentenceNode[6] (1:19-1:36, 18-35)' ,
82
- ' ├─ WordNode[1] (1:19-1:24, 18-23)' ,
83
- ' │ └─ TextNode: "Other" (1:19-1:24, 18-23)' ,
84
- ' ├─ WhiteSpaceNode: " " (1:24-1:25, 23-24)' ,
85
- ' ├─ PunctuationNode: "“" (1:25-1:26, 24-25)' ,
86
- ' ├─ WordNode[1] (1:26-1:34, 25-33)' ,
87
- ' │ └─ TextNode: "sentence" (1:26-1:34, 25-33)' ,
88
- ' ├─ PunctuationNode: "”" (1:34-1:35, 33-34)' ,
89
- ' └─ PunctuationNode: "." (1:35-1:36, 34-35)'
90
- ] . join ( '\n' )
91
- ) ;
92
- } ) ;
58
+ test ( 'inspect()' , function ( t ) {
59
+ t . equal (
60
+ strip ( inspect ( retext ( ) . parse ( paragraph ) ) ) ,
61
+ [
62
+ 'RootNode[1] (1:1-1:36, 0-35)' ,
63
+ '└─ ParagraphNode[3] (1:1-1:36, 0-35)' ,
64
+ ' ├─ SentenceNode[6] (1:1-1:18, 0-17)' ,
65
+ ' │ ├─ WordNode[1] (1:1-1:5, 0-4)' ,
66
+ ' │ │ └─ TextNode: "Some" (1:1-1:5, 0-4)' ,
67
+ ' │ ├─ WhiteSpaceNode: " " (1:5-1:6, 4-5)' ,
68
+ ' │ ├─ WordNode[1] (1:6-1:12, 5-11)' ,
69
+ ' │ │ └─ TextNode: "simple" (1:6-1:12, 5-11)' ,
70
+ ' │ ├─ WhiteSpaceNode: " " (1:12-1:13, 11-12)' ,
71
+ ' │ ├─ WordNode[1] (1:13-1:17, 12-16)' ,
72
+ ' │ │ └─ TextNode: "text" (1:13-1:17, 12-16)' ,
73
+ ' │ └─ PunctuationNode: "." (1:17-1:18, 16-17)' ,
74
+ ' ├─ WhiteSpaceNode: " " (1:18-1:19, 17-18)' ,
75
+ ' └─ SentenceNode[6] (1:19-1:36, 18-35)' ,
76
+ ' ├─ WordNode[1] (1:19-1:24, 18-23)' ,
77
+ ' │ └─ TextNode: "Other" (1:19-1:24, 18-23)' ,
78
+ ' ├─ WhiteSpaceNode: " " (1:24-1:25, 23-24)' ,
79
+ ' ├─ PunctuationNode: "“" (1:25-1:26, 24-25)' ,
80
+ ' ├─ WordNode[1] (1:26-1:34, 25-33)' ,
81
+ ' │ └─ TextNode: "sentence" (1:26-1:34, 25-33)' ,
82
+ ' ├─ PunctuationNode: "”" (1:34-1:35, 33-34)' ,
83
+ ' └─ PunctuationNode: "." (1:35-1:36, 34-35)'
84
+ ] . join ( '\n' ) ,
85
+ 'should work on `RootNode`'
86
+ ) ;
93
87
94
- it ( 'should work on `SentenceNode`' , function ( ) {
95
- equal (
96
- strip ( inspect ( tree . children [ 0 ] . children [ 0 ] ) ) ,
97
- [
98
- 'SentenceNode[6] (1:1-1:18, 0-17)' ,
99
- '├─ WordNode[1] (1:1-1:5, 0-4)' ,
100
- '│ └─ TextNode: "Some" (1:1-1:5, 0-4)' ,
101
- '├─ WhiteSpaceNode: " " (1:5-1:6, 4-5)' ,
102
- '├─ WordNode[1] (1:6-1:12, 5-11)' ,
103
- '│ └─ TextNode: "simple" (1:6-1:12, 5-11)' ,
104
- '├─ WhiteSpaceNode: " " (1:12-1:13, 11-12)' ,
105
- '├─ WordNode[1] (1:13-1:17, 12-16)' ,
106
- '│ └─ TextNode: "text" (1:13-1:17, 12-16)' ,
107
- '└─ PunctuationNode: "." (1:17-1:18, 16-17)'
108
- ] . join ( '\n' )
109
- ) ;
110
- } ) ;
88
+ t . equal (
89
+ strip ( inspect ( retext ( ) . parse ( paragraph ) . children [ 0 ] . children [ 0 ] ) ) ,
90
+ [
91
+ 'SentenceNode[6] (1:1-1:18, 0-17)' ,
92
+ '├─ WordNode[1] (1:1-1:5, 0-4)' ,
93
+ '│ └─ TextNode: "Some" (1:1-1:5, 0-4)' ,
94
+ '├─ WhiteSpaceNode: " " (1:5-1:6, 4-5)' ,
95
+ '├─ WordNode[1] (1:6-1:12, 5-11)' ,
96
+ '│ └─ TextNode: "simple" (1:6-1:12, 5-11)' ,
97
+ '├─ WhiteSpaceNode: " " (1:12-1:13, 11-12)' ,
98
+ '├─ WordNode[1] (1:13-1:17, 12-16)' ,
99
+ '│ └─ TextNode: "text" (1:13-1:17, 12-16)' ,
100
+ '└─ PunctuationNode: "." (1:17-1:18, 16-17)'
101
+ ] . join ( '\n' ) ,
102
+ 'should work on `SentenceNode`'
103
+ ) ;
111
104
112
- it ( 'should work with a list of nodes' , function ( ) {
113
- equal ( strip ( inspect ( [
105
+ t . equal (
106
+ strip ( inspect ( [
114
107
{
115
108
'type' : 'SymbolNode' ,
116
109
'value' : '$'
@@ -122,32 +115,38 @@ describe('inspect()', function () {
122
115
'value' : '5,00'
123
116
} ]
124
117
}
125
- ] ) ) , [
118
+ ] ) ) ,
119
+ [
126
120
'SymbolNode: "$"' ,
127
121
'WordNode[1]' ,
128
122
'└─ text: "5,00"'
129
- ] . join ( '\n' ) ) ;
130
- } ) ;
123
+ ] . join ( '\n' ) ,
124
+ 'should work with a list of nodes'
125
+ ) ;
126
+
127
+ t . test ( 'should work on non-nodes' , function ( st ) {
128
+ st . equal ( strip ( inspect ( 'foo' ) ) , 'foo' ) ;
129
+ st . equal ( strip ( inspect ( 'null' ) ) , 'null' ) ;
130
+ st . equal ( strip ( inspect ( NaN ) ) , 'NaN' ) ;
131
+ st . equal ( strip ( inspect ( 3 ) ) , '3' ) ;
131
132
132
- it ( 'should work on non-nodes' , function ( ) {
133
- equal ( strip ( inspect ( 'foo' ) ) , 'foo' ) ;
134
- equal ( strip ( inspect ( 'null' ) ) , 'null' ) ;
135
- equal ( strip ( inspect ( NaN ) ) , 'NaN' ) ;
136
- equal ( strip ( inspect ( 3 ) ) , '3' ) ;
133
+ st . end ( ) ;
137
134
} ) ;
138
135
139
- it ( 'should work with data attributes' , function ( ) {
140
- equal ( strip ( inspect ( {
136
+ t . equal (
137
+ strip ( inspect ( {
141
138
'type' : 'SymbolNode' ,
142
139
'value' : '$' ,
143
140
'data' : {
144
141
'test' : true
145
142
}
146
- } ) ) , 'SymbolNode: "$" [data={"test":true}]' ) ;
147
- } ) ;
143
+ } ) ) ,
144
+ 'SymbolNode: "$" [data={"test":true}]' ,
145
+ 'should work with data attributes'
146
+ ) ;
148
147
149
- it ( 'should work without `offset` in `position`' , function ( ) {
150
- equal ( strip ( inspect ( {
148
+ t . equal (
149
+ strip ( inspect ( {
151
150
'type' : 'foo' ,
152
151
'value' : 'foo\nbaar' ,
153
152
'position' : {
@@ -160,22 +159,26 @@ describe('inspect()', function () {
160
159
'column' : 5
161
160
}
162
161
}
163
- } ) ) , 'foo: "foo\\nbaar" (1:1-2:5)' ) ;
164
- } ) ;
162
+ } ) ) ,
163
+ 'foo: "foo\\nbaar" (1:1-2:5)' ,
164
+ 'should work without `offset` in `position`'
165
+ ) ;
165
166
166
- it ( 'should work without `line` and `column` in `position`' , function ( ) {
167
- equal ( strip ( inspect ( {
167
+ t . equal (
168
+ strip ( inspect ( {
168
169
'type' : 'foo' ,
169
170
'value' : 'foo\nbaar' ,
170
171
'position' : {
171
172
'start' : { } ,
172
173
'end' : { }
173
174
}
174
- } ) ) , 'foo: "foo\\nbaar" (1:1-1:1)' ) ;
175
- } ) ;
175
+ } ) ) ,
176
+ 'foo: "foo\\nbaar" (1:1-1:1)' ,
177
+ 'should work without `line` and `column` in `position`'
178
+ ) ;
176
179
177
- it ( 'should work with just `offset` in `position`' , function ( ) {
178
- equal ( strip ( inspect ( {
180
+ t . equal (
181
+ strip ( inspect ( {
179
182
'type' : 'foo' ,
180
183
'value' : 'foo\nbaar' ,
181
184
'position' : {
@@ -186,15 +189,18 @@ describe('inspect()', function () {
186
189
'offset' : 8
187
190
}
188
191
}
189
- } ) ) , 'foo: "foo\\nbaar" (1:1-1:1, 1-8)' ) ;
190
- } ) ;
191
- } ) ;
192
+ } ) ) ,
193
+ 'foo: "foo\\nbaar" (1:1-1:1, 1-8)' ,
194
+ 'should work with just `offset` in `position`'
195
+ ) ;
192
196
193
- describe ( 'inspect.noColor()' , function ( ) {
194
- it ( 'should work' , function ( ) {
195
- var sentence = retext ( ) . parse ( paragraph ) . children [ 0 ] . children [ 0 ] ;
197
+ t . end ( ) ;
198
+ } ) ;
196
199
197
- equal ( inspect . noColor ( sentence ) , [
200
+ test ( 'inspect.noColor()' , function ( t ) {
201
+ t . equal (
202
+ inspect . noColor ( retext ( ) . parse ( paragraph ) . children [ 0 ] . children [ 0 ] ) ,
203
+ [
198
204
'SentenceNode[6] (1:1-1:18, 0-17)' ,
199
205
'├─ WordNode[1] (1:1-1:5, 0-4)' ,
200
206
'│ └─ TextNode: "Some" (1:1-1:5, 0-4)' ,
@@ -205,15 +211,17 @@ describe('inspect.noColor()', function () {
205
211
'├─ WordNode[1] (1:13-1:17, 12-16)' ,
206
212
'│ └─ TextNode: "text" (1:13-1:17, 12-16)' ,
207
213
'└─ PunctuationNode: "." (1:17-1:18, 16-17)'
208
- ] . join ( '\n' ) ) ;
209
- } ) ;
210
- } ) ;
214
+ ] . join ( '\n' ) ,
215
+ 'should work'
216
+ ) ;
211
217
212
- describe ( 'inspect.color()' , function ( ) {
213
- it ( 'should work' , function ( ) {
214
- var sentence = retext ( ) . parse ( paragraph ) . children [ 0 ] . children [ 0 ] ;
218
+ t . end ( ) ;
219
+ } ) ;
215
220
216
- equal ( inspect . color ( sentence ) , [
221
+ test ( 'inspect.color()' , function ( t ) {
222
+ t . equal (
223
+ inspect . color ( retext ( ) . parse ( paragraph ) . children [ 0 ] . children [ 0 ] ) ,
224
+ [
217
225
'SentenceNode' +
218
226
chalk . dim ( '[' ) + chalk . yellow ( '6' ) + chalk . dim ( ']' ) +
219
227
' (1:1-1:18, 0-17)' ,
@@ -244,6 +252,9 @@ describe('inspect.color()', function () {
244
252
chalk . dim ( '└─ ' ) + 'PunctuationNode' +
245
253
chalk . dim ( ': ' ) + chalk . green ( '"."' ) +
246
254
' (1:17-1:18, 16-17)'
247
- ] . join ( '\n' ) ) ;
248
- } ) ;
255
+ ] . join ( '\n' ) ,
256
+ 'should work'
257
+ ) ;
258
+
259
+ t . end ( ) ;
249
260
} ) ;
0 commit comments