Add test for globbed files

Resolves #282

Resolves #278
master
Sam Richard 2015-07-15 11:00:56 -07:00
parent 2b0f446b9d
commit 2a4f945da9
4 changed files with 41 additions and 0 deletions

View File

@ -30,6 +30,7 @@
"devDependencies": {
"autoprefixer-core": "^5.1.11",
"eslint": "^0.17.1",
"globule": "^0.2.0",
"gulp": "^3.8.11",
"gulp-postcss": "^5.1.6",
"gulp-sourcemaps": "^1.5.2",

View File

@ -10,6 +10,7 @@ var sourcemaps = require('gulp-sourcemaps');
var postcss = require('gulp-postcss');
var autoprefixer = require('autoprefixer-core');
var tap = require('gulp-tap');
var globule = require('globule');
var createVinyl = function createVinyl(filename, contents) {
var base = path.join(__dirname, 'scss');
@ -415,6 +416,26 @@ describe('gulp-sass -- sync compile', function() {
.on('end', done);
});
it('should work with gulp-sourcemaps and a globbed source', function(done) {
var files, filesContent, actualContent, expectedContent, globPath;
files = globule.find(path.join(__dirname, '/scss/globbed/**/*.scss'));
filesContent = {};
files.forEach(function(file) {
globPath = file.replace(path.join(__dirname, '/scss/globbed/'), '');
filesContent[globPath] = fs.readFileSync(file, 'utf8');
});
gulp.src(path.join(__dirname, '/scss/globbed/**/*.scss'))
.pipe(sourcemaps.init())
.pipe(sass.sync())
.pipe(tap(function(file) {
should.exist(file.sourceMap);
actualContent = file.sourceMap.sourcesContent[0];
expectedContent = filesContent[file.sourceMap.sources[0]];
actualContent.should.eql(expectedContent);
}))
.on('end', done);
});
it('should work with gulp-sourcemaps and autoprefixer with different file.base', function(done) {
var expectedSources = [
'includes/_cats.scss',

View File

@ -0,0 +1,15 @@
p {
border: 1px solid red;
}
small {
font: {
size: 72px;
}
}
h1 {
font: {
size: 8px;
}
}

View File

@ -0,0 +1,4 @@
h1, h2, h3, h4, h5 {
color: green;
font-weight: 800;
}