UNPKG

gulp-replace-assets

Version:
75 lines (63 loc) 2.04 kB
var replacePlugin = require('../'); var fs = require('fs'); var path = require('path'); var es = require('event-stream'); var should = require('should'); var gutil = require('gulp-util'); require('mocha'); var replaceThisString = { 'world': 'person', 'old': 'weird', 'new': 'funky', 'kind': 'lovely', 'cruel': 'amazing' }; var makeFile = function(contents) { return new gutil.File({ path: 'test/file.txt', cwd: 'test/', base: 'test/', contents: contents }); }; describe('gulp-replace-assets', function() { describe('replacePlugin()', function() { it('should replace string with string on a stream (1)', function(done) { var file = new gutil.File({ path: 'test/fixtures/helloworld.txt', cwd: 'test/', base: 'test/fixtures', contents: fs.createReadStream('test/fixtures/helloworld.txt') }); var stream = replacePlugin(replaceThisString); stream.on('data', function(newFile) { should.exist(newFile); should.exist(newFile.contents); newFile.contents.pipe(es.wait(function(err, data) { should.not.exist(err); data.equals(fs.readFileSync('test/expected/helloworld.txt')).should.be.true done(); })); }); stream.write(file); stream.end(); }); it('should replace string with string on a buffer (3)', function(done) { var file = new gutil.File({ path: 'test/fixtures/helloworld.txt', cwd: 'test/', base: 'test/fixtures', contents: fs.readFileSync('test/fixtures/helloworld.txt') }); var stream = replacePlugin(replaceThisString); stream.on('data', function(newFile) { should.exist(newFile); should.exist(newFile.contents); String(newFile.contents).should.equal(fs.readFileSync('test/expected/helloworld.txt', 'utf8')); done(); }); stream.write(file); stream.end(); }); }); });