@@ -5,27 +5,16 @@ var assert = require('assert');
55var Base = require ( '../../lib/reporters/base' ) ;
66var Assert = require ( 'assert' ) . AssertionError ;
77
8- function makeTest ( err ) {
9- return {
10- err : err ,
11- titlePath : function ( ) {
12- return [ 'test title' ] ;
13- }
14- } ;
15- }
16-
17- function createElements ( argObj ) {
18- var res = [ ] ;
19- for ( var i = argObj . from ; i <= argObj . to ; i += 1 ) {
20- res . push ( 'element ' + i ) ;
21- }
22- return res ;
23- }
8+ var makeTest = require ( './helpers' ) . makeTest ;
9+ var createElements = require ( './helpers' ) . createElements ;
2410
2511describe ( 'Base reporter' , function ( ) {
2612 var stdout ;
2713 var stdoutWrite ;
2814 var useColors ;
15+ var err ;
16+ var errOut ;
17+ var test ;
2918
3019 beforeEach ( function ( ) {
3120 stdout = [ ] ;
@@ -43,11 +32,12 @@ describe('Base reporter', function () {
4332 } ) ;
4433
4534 describe ( 'showDiff' , function ( ) {
46- it ( 'should show diffs by default' , function ( ) {
47- var err = new Assert ( { actual : 'foo' , expected : 'bar' } ) ;
48- var errOut ;
35+ beforeEach ( function ( ) {
36+ err = new Assert ( { actual : 'foo' , expected : 'bar' } ) ;
37+ } ) ;
4938
50- var test = makeTest ( err ) ;
39+ it ( 'should show diffs by default' , function ( ) {
40+ test = makeTest ( err ) ;
5141
5242 Base . list ( [ test ] ) ;
5343
@@ -57,11 +47,8 @@ describe('Base reporter', function () {
5747 } ) ;
5848
5949 it ( 'should show diffs if property set to `true`' , function ( ) {
60- var err = new Assert ( { actual : 'foo' , expected : 'bar' } ) ;
61- var errOut ;
62-
6350 err . showDiff = true ;
64- var test = makeTest ( err ) ;
51+ test = makeTest ( err ) ;
6552
6653 Base . list ( [ test ] ) ;
6754
@@ -71,11 +58,8 @@ describe('Base reporter', function () {
7158 } ) ;
7259
7360 it ( 'should not show diffs when showDiff property set to `false`' , function ( ) {
74- var err = new Assert ( { actual : 'foo' , expected : 'bar' } ) ;
75- var errOut ;
76-
7761 err . showDiff = false ;
78- var test = makeTest ( err ) ;
62+ test = makeTest ( err ) ;
7963
8064 Base . list ( [ test ] ) ;
8165
@@ -85,10 +69,9 @@ describe('Base reporter', function () {
8569 } ) ;
8670
8771 it ( 'should not show diffs when expected is not defined' , function ( ) {
88- var err = new Error ( 'ouch' ) ;
89- var errOut ;
72+ err = new Error ( 'ouch' ) ;
9073
91- var test = makeTest ( err ) ;
74+ test = makeTest ( err ) ;
9275
9376 Base . list ( [ test ] ) ;
9477
@@ -98,10 +81,7 @@ describe('Base reporter', function () {
9881 } ) ;
9982
10083 it ( 'should not show diffs when hideDiff is set' , function ( ) {
101- var err = new Assert ( { actual : 'foo' , expected : 'bar' } ) ;
102- var errOut ;
103-
104- var test = makeTest ( err ) ;
84+ test = makeTest ( err ) ;
10585
10686 Base . hideDiff = true ;
10787 Base . list ( [ test ] ) ;
@@ -116,13 +96,12 @@ describe('Base reporter', function () {
11696 describe ( 'Getting two strings' , function ( ) {
11797 // Fix regression V1.2.1(see: issue #1241)
11898 it ( 'should show strings diff as is' , function ( ) {
119- var err = new Error ( 'test' ) ;
120- var errOut ;
99+ err = new Error ( 'test' ) ;
121100
122101 err . actual = 'foo\nbar' ;
123102 err . expected = 'foo\nbaz' ;
124103 err . showDiff = true ;
125- var test = makeTest ( err ) ;
104+ test = makeTest ( err ) ;
126105
127106 Base . list ( [ test ] ) ;
128107
@@ -138,6 +117,9 @@ describe('Base reporter', function () {
138117
139118 describe ( 'Diff generation' , function ( ) {
140119 var oldInlineDiffs ;
120+ var actual ;
121+ var expected ;
122+ var output ;
141123
142124 beforeEach ( function ( ) {
143125 oldInlineDiffs = Base . inlineDiffs ;
@@ -148,35 +130,34 @@ describe('Base reporter', function () {
148130 } ) ;
149131
150132 it ( 'should generate unified diffs if `inlineDiff === false`' , function ( ) {
151- var actual = 'a foo unified diff' ;
152- var expected = 'a bar unified diff' ;
133+ actual = 'a foo unified diff' ;
134+ expected = 'a bar unified diff' ;
153135
154136 Base . inlineDiffs = false ;
155- var output = Base . generateDiff ( actual , expected ) ;
137+ output = Base . generateDiff ( actual , expected ) ;
156138
157139 expect ( output ) . to . equal ( '\n + expected - actual\n\n -a foo unified diff\n +a bar unified diff\n ' ) ;
158140 } ) ;
159141
160142 it ( 'should generate inline diffs if `inlineDiffs === true`' , function ( ) {
161- var actual = 'a foo inline diff' ;
162- var expected = 'a bar inline diff' ;
143+ actual = 'a foo inline diff' ;
144+ expected = 'a bar inline diff' ;
163145
164146 Base . inlineDiffs = true ;
165- var output = Base . generateDiff ( actual , expected ) ;
147+ output = Base . generateDiff ( actual , expected ) ;
166148
167149 expect ( output ) . to . equal ( ' \n actual expected\n \n a foobar inline diff\n ' ) ;
168150 } ) ;
169151 } ) ;
170152
171153 describe ( 'Inline strings diff' , function ( ) {
172154 it ( 'should show single line diff if property set to `true`' , function ( ) {
173- var err = new Error ( 'test' ) ;
174- var errOut ;
155+ err = new Error ( 'test' ) ;
175156
176157 err . actual = 'a foo inline diff' ;
177158 err . expected = 'a bar inline diff' ;
178159 err . showDiff = true ;
179- var test = makeTest ( err ) ;
160+ test = makeTest ( err ) ;
180161
181162 Base . inlineDiffs = true ;
182163 Base . list ( [ test ] ) ;
@@ -190,13 +171,12 @@ describe('Base reporter', function () {
190171 } ) ;
191172
192173 it ( 'should split lines when string has more than 4 line breaks' , function ( ) {
193- var err = new Error ( 'test' ) ;
194- var errOut ;
174+ err = new Error ( 'test' ) ;
195175
196176 err . actual = 'a\nfoo\ninline\ndiff\nwith\nmultiple lines' ;
197177 err . expected = 'a\nbar\ninline\ndiff\nwith\nmultiple lines' ;
198178 err . showDiff = true ;
199- var test = makeTest ( err ) ;
179+ test = makeTest ( err ) ;
200180
201181 Base . inlineDiffs = true ;
202182 Base . list ( [ test ] ) ;
@@ -216,14 +196,15 @@ describe('Base reporter', function () {
216196 } ) ;
217197
218198 describe ( 'unified diff reporter' , function ( ) {
219- it ( 'should separate diff hunks by two dashes' , function ( ) {
220- var err = new Error ( 'test' ) ;
221- var errOut ;
199+ beforeEach ( function ( ) {
200+ err = new Error ( 'test' ) ;
201+ } ) ;
222202
203+ it ( 'should separate diff hunks by two dashes' , function ( ) {
223204 err . actual = createElements ( { from : 2 , to : 11 } ) ;
224205 err . expected = createElements ( { from : 1 , to : 10 } ) ;
225206 err . showDiff = true ;
226- var test = makeTest ( err ) ;
207+ test = makeTest ( err ) ;
227208
228209 Base . inlineDiffs = false ;
229210 Base . list ( [ test ] ) ;
@@ -256,13 +237,12 @@ describe('Base reporter', function () {
256237 } ) ;
257238
258239 it ( 'should stringify objects' , function ( ) {
259- var err = new Error ( 'test' ) ;
260- var errOut ;
240+ err = new Error ( 'test' ) ;
261241
262242 err . actual = { key : 'a1' } ;
263243 err . expected = { key : 'e1' } ;
264244 err . showDiff = true ;
265- var test = makeTest ( err ) ;
245+ test = makeTest ( err ) ;
266246
267247 Base . list ( [ test ] ) ;
268248
@@ -274,15 +254,14 @@ describe('Base reporter', function () {
274254 } ) ;
275255
276256 it ( 'should stringify Object.create(null)' , function ( ) {
277- var err = new Error ( 'test' ) ;
278- var errOut ;
257+ err = new Error ( 'test' ) ;
279258
280259 err . actual = Object . create ( null ) ;
281260 err . actual . hasOwnProperty = 1 ;
282261 err . expected = Object . create ( null ) ;
283262 err . expected . hasOwnProperty = 2 ;
284263 err . showDiff = true ;
285- var test = makeTest ( err ) ;
264+ test = makeTest ( err ) ;
286265
287266 Base . list ( [ test ] ) ;
288267
@@ -294,15 +273,13 @@ describe('Base reporter', function () {
294273 } ) ;
295274
296275 it ( 'should handle error messages that are not strings' , function ( ) {
297- var errOut ;
298-
299276 try {
300277 assert ( false , true ) ;
301278 } catch ( err ) {
302279 err . actual = false ;
303280 err . expected = true ;
304281 err . showDiff = true ;
305- var test = makeTest ( err ) ;
282+ test = makeTest ( err ) ;
306283
307284 Base . list ( [ test ] ) ;
308285
@@ -315,8 +292,6 @@ describe('Base reporter', function () {
315292 } ) ;
316293
317294 it ( 'should interpret chaijs custom error messages' , function ( ) {
318- var errOut ;
319-
320295 try {
321296 // expect(43, 'custom error message').to.equal(42);
322297 // AssertionError: custom error message: expected 43 to equal 42.
@@ -325,7 +300,7 @@ describe('Base reporter', function () {
325300 err . actual = 43 ;
326301 err . expected = 42 ;
327302 err . showDiff = true ;
328- var test = makeTest ( err ) ;
303+ test = makeTest ( err ) ;
329304
330305 Base . list ( [ test ] ) ;
331306
@@ -339,51 +314,51 @@ describe('Base reporter', function () {
339314 } ) ;
340315
341316 it ( 'should remove message from stack' , function ( ) {
342- var err = {
317+ err = {
343318 message : 'Error' ,
344319 stack : 'Error\nfoo\nbar' ,
345320 showDiff : false
346321 } ;
347- var test = makeTest ( err ) ;
322+ test = makeTest ( err ) ;
348323
349324 Base . list ( [ test ] ) ;
350325
351- var errOut = stdout . join ( '\n' ) . trim ( ) ;
326+ errOut = stdout . join ( '\n' ) . trim ( ) ;
352327 expect ( errOut ) . to . equal ( '1) test title:\n Error\n foo\n bar' ) ;
353328 } ) ;
354329
355330 it ( 'should use the inspect() property if `message` is not set' , function ( ) {
356- var err = {
331+ err = {
357332 showDiff : false ,
358333 inspect : function ( ) { return 'an error happened' ; }
359334 } ;
360- var test = makeTest ( err ) ;
335+ test = makeTest ( err ) ;
361336 Base . list ( [ test ] ) ;
362- var errOut = stdout . join ( '\n' ) . trim ( ) ;
337+ errOut = stdout . join ( '\n' ) . trim ( ) ;
363338 expect ( errOut ) . to . equal ( '1) test title:\n an error happened' ) ;
364339 } ) ;
365340
366341 it ( 'should set an empty message if `message` and `inspect()` are not set' , function ( ) {
367- var err = {
342+ err = {
368343 showDiff : false
369344 } ;
370- var test = makeTest ( err ) ;
345+ test = makeTest ( err ) ;
371346 Base . list ( [ test ] ) ;
372- var errOut = stdout . join ( '\n' ) . trim ( ) ;
347+ errOut = stdout . join ( '\n' ) . trim ( ) ;
373348 expect ( errOut ) . to . equal ( '1) test title:' ) ;
374349 } ) ;
375350
376351 it ( 'should not modify stack if it does not contain message' , function ( ) {
377- var err = {
352+ err = {
378353 message : 'Error' ,
379354 stack : 'foo\nbar' ,
380355 showDiff : false
381356 } ;
382- var test = makeTest ( err ) ;
357+ test = makeTest ( err ) ;
383358
384359 Base . list ( [ test ] ) ;
385360
386- var errOut = stdout . join ( '\n' ) . trim ( ) ;
361+ errOut = stdout . join ( '\n' ) . trim ( ) ;
387362 expect ( errOut ) . to . equal ( '1) test title:\n Error\n foo\n bar' ) ;
388363 } ) ;
389364} ) ;
0 commit comments