@@ -422,3 +422,42 @@ describe('gulp-sass -- sync compile', function() {
422
422
. on ( 'end' , done ) ;
423
423
} ) ;
424
424
} ) ;
425
+
426
+ describe ( 'gulp-sass -- source comments' , function ( ) {
427
+ var testPath = '/test/path/' ;
428
+
429
+ // Replace comment path from current users filesystem to something we can test consistently
430
+ var swapPathForTesting = function ( contents ) {
431
+ return contents . replace ( / ( .* ) ( , ) ( .* ?) ( \w + \. (?: s c s s | s a s s ) ) ( \* \/ ) / g, '$1$2' + testPath + '$4$5' ) ;
432
+ } ;
433
+
434
+ it ( 'should properly add file path comment' , function ( done ) {
435
+ var sassFile = createVinyl ( 'variables.scss' ) ;
436
+ var stream = sass ( { 'sourceComments' : true } ) ;
437
+ stream . on ( 'data' , function ( cssFile ) {
438
+ var contents ;
439
+ should . exist ( cssFile . contents ) ;
440
+ contents = swapPathForTesting ( cssFile . contents . toString ( ) ) ;
441
+ contents . should . equal (
442
+ fs . readFileSync ( path . join ( __dirname , 'expected/source-comments/variables.css' ) , 'utf8' )
443
+ ) ;
444
+ done ( ) ;
445
+ } ) ;
446
+ stream . write ( sassFile ) ;
447
+ } ) ;
448
+
449
+ it ( 'should properly add file path comment with includes' , function ( done ) {
450
+ var sassFile = createVinyl ( 'inheritance.scss' ) ;
451
+ var stream = sass ( { 'sourceComments' : true } ) ;
452
+ stream . on ( 'data' , function ( cssFile ) {
453
+ var contents ;
454
+ should . exist ( cssFile . contents ) ;
455
+ contents = swapPathForTesting ( cssFile . contents . toString ( ) ) ;
456
+ contents . should . equal (
457
+ fs . readFileSync ( path . join ( __dirname , 'expected/source-comments/inheritance.css' ) , 'utf8' )
458
+ ) ;
459
+ done ( ) ;
460
+ } ) ;
461
+ stream . write ( sassFile ) ;
462
+ } ) ;
463
+ } ) ;
0 commit comments