Skip to content

Commit 94d69da

Browse files
committed
feat(gen:gulp): port updateFixtures to Gulp (hot damn is it faster 🔥)
[skip ci]
1 parent 11f5719 commit 94d69da

File tree

2 files changed

+48
-0
lines changed

2 files changed

+48
-0
lines changed

Diff for: gulpfile.js

+47
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,7 @@
11
'use strict';
2+
var fs = require('fs');
3+
var path = require('path');
4+
var Promise = require('bluebird');
25
var gulp = require('gulp');
36
var babel = require('gulp-babel');
47
var del = require('del');
@@ -31,3 +34,47 @@ gulp.task('build', cb => {
3134
cb
3235
);
3336
});
37+
38+
var processJson = function(src, dest, opt) {
39+
return new Promise((resolve, reject) => {
40+
// read file, strip all ejs conditionals, and parse as json
41+
fs.readFile(path.resolve(src), 'utf8', (err, data) => {
42+
if(err) return reject(err);
43+
44+
var json = JSON.parse(data.replace(/<%(.*)%>/g, ''));
45+
46+
// set properties
47+
json.name = opt.appName;
48+
json.version = opt.genVer;
49+
json.private = opt.private;
50+
51+
// stringify json and write it to the destination
52+
fs.writeFile(path.resolve(dest), JSON.stringify(json, null, 2), err => {
53+
if(err) reject(err);
54+
else resolve();
55+
});
56+
});
57+
});
58+
};
59+
60+
function updateFixtures(target) {
61+
const deps = target === 'deps';
62+
const genVer = require('./package.json').version;
63+
const dest = __dirname + (deps ? '/angular-fullstack-deps/' : '/test/fixtures/');
64+
const appName = deps ? 'angular-fullstack-deps' : 'tempApp';
65+
66+
return Promise.all([
67+
processJson('templates/app/_package.json', dest + 'package.json', {appName, genVer, private: !!deps}),
68+
processJson('templates/app/_bower.json', dest + 'bower.json', {appName, genVer, private: !!deps})
69+
]);
70+
}
71+
72+
gulp.task('updateFixtures', cb => {
73+
return runSequence(['updateFixtures:test', 'updateFixtures:deps'], cb);
74+
});
75+
gulp.task('updateFixtures:test', () => {
76+
return updateFixtures('test');
77+
});
78+
gulp.task('updateFixtures:deps', () => {
79+
return updateFixtures('deps');
80+
});

Diff for: package.json

+1
Original file line numberDiff line numberDiff line change
@@ -53,6 +53,7 @@
5353
"babel-plugin-transform-class-properties": "^6.6.0",
5454
"babel-preset-es2015": "^6.6.0",
5555
"babel-register": "^6.6.5",
56+
"bluebird": "^3.3.5",
5657
"chai": "^3.2.0",
5758
"del": "^2.2.0",
5859
"grunt": "^1.0.1",

0 commit comments

Comments
 (0)