|
@@ -80,27 +80,11 @@ module.exports = function(grunt) {
|
|
dev: {
|
|
dev: {
|
|
src: ['front/src/css']
|
|
src: ['front/src/css']
|
|
},
|
|
},
|
|
- coverage: {
|
|
|
|
- src: ['.tmp', 'coverage/']
|
|
|
|
- },
|
|
|
|
build: {
|
|
build: {
|
|
src: ['front/build']
|
|
src: ['front/build']
|
|
}
|
|
}
|
|
},
|
|
},
|
|
copy: {
|
|
copy: {
|
|
- beforeCoverage: {
|
|
|
|
- files: [
|
|
|
|
- {src: ['bin/server.js'], dest: '.tmp/'}
|
|
|
|
- ]
|
|
|
|
- },
|
|
|
|
- coverage: {
|
|
|
|
- files: [
|
|
|
|
- {cwd: 'test', src: '**/*', dest: 'coverage/test', expand: true},
|
|
|
|
- {cwd: 'lib/metadata', src: '**/*', dest: 'coverage/lib/metadata', expand: true},
|
|
|
|
- {cwd: 'node_modules/phantomas', src: '**/*', dest: 'coverage/node_modules/phantomas', expand: true},
|
|
|
|
- {cwd: 'lib/tools/phantomas/custom_modules', src: '**/*', dest: 'coverage/lib/tools/phantomas/custom_modules', expand: true}
|
|
|
|
- ]
|
|
|
|
- },
|
|
|
|
build: {
|
|
build: {
|
|
files: [
|
|
files: [
|
|
{src: ['./front/src/img/favicon.png'], dest: './front/build/img/favicon.png'},
|
|
{src: ['./front/src/img/favicon.png'], dest: './front/build/img/favicon.png'},
|
|
@@ -108,50 +92,18 @@ module.exports = function(grunt) {
|
|
]
|
|
]
|
|
}
|
|
}
|
|
},
|
|
},
|
|
- lineremover: {
|
|
|
|
- beforeCoverage: {
|
|
|
|
- files: {
|
|
|
|
- '.tmp/bin/cli.js': 'bin/cli.js'
|
|
|
|
- },
|
|
|
|
- options: {
|
|
|
|
- exclusionPattern: /#!\/usr\/bin\/env node/
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
- blanket: {
|
|
|
|
- coverageApp: {
|
|
|
|
- src: ['app/'],
|
|
|
|
- dest: 'coverage/app/'
|
|
|
|
- },
|
|
|
|
- coverageLib: {
|
|
|
|
- src: ['lib/'],
|
|
|
|
- dest: 'coverage/lib/'
|
|
|
|
- },
|
|
|
|
- coverageBin: {
|
|
|
|
- src: ['.tmp/bin/'],
|
|
|
|
- dest: 'coverage/bin/'
|
|
|
|
- }
|
|
|
|
- },
|
|
|
|
mochaTest: {
|
|
mochaTest: {
|
|
test: {
|
|
test: {
|
|
options: {
|
|
options: {
|
|
reporter: 'spec',
|
|
reporter: 'spec',
|
|
},
|
|
},
|
|
- src: ['coverage/test/core/*.js', 'coverage/test/api/*.js']
|
|
|
|
|
|
+ src: ['test/core/*.js', 'test/api/*.js']
|
|
},
|
|
},
|
|
'test-current-work': {
|
|
'test-current-work': {
|
|
options: {
|
|
options: {
|
|
reporter: 'spec',
|
|
reporter: 'spec',
|
|
},
|
|
},
|
|
src: ['test/core/contentTypeCheckerTest.js']
|
|
src: ['test/core/contentTypeCheckerTest.js']
|
|
- },
|
|
|
|
- coverage: {
|
|
|
|
- options: {
|
|
|
|
- reporter: 'html-cov',
|
|
|
|
- quiet: true,
|
|
|
|
- captureFile: 'coverage/coverage.html'
|
|
|
|
- },
|
|
|
|
- src: ['coverage/test/core/*.js', 'coverage/test/api/*.js']
|
|
|
|
}
|
|
}
|
|
},
|
|
},
|
|
env: {
|
|
env: {
|
|
@@ -182,7 +134,7 @@ module.exports = function(grunt) {
|
|
test: {
|
|
test: {
|
|
options: {
|
|
options: {
|
|
port: 8387,
|
|
port: 8387,
|
|
- server: './coverage/bin/server.js',
|
|
|
|
|
|
+ server: './bin/server.js',
|
|
showStack: true
|
|
showStack: true
|
|
}
|
|
}
|
|
},
|
|
},
|
|
@@ -266,34 +218,6 @@ module.exports = function(grunt) {
|
|
});
|
|
});
|
|
|
|
|
|
|
|
|
|
- // Custom task: copies the test settings.json file to the coverage folder, and checks if there's no missing fields
|
|
|
|
- grunt.registerTask('copy-test-server-settings', function() {
|
|
|
|
- var mainSettingsFile = './server_config/settings.json';
|
|
|
|
- var testSettingsFile = './test/fixtures/settings.json';
|
|
|
|
-
|
|
|
|
- var mainSettings = grunt.file.readJSON(mainSettingsFile);
|
|
|
|
- var testSettings = grunt.file.readJSON(testSettingsFile);
|
|
|
|
-
|
|
|
|
- // Recursively compare keys of two objects (not the values)
|
|
|
|
- function compareKeys(original, copy, context) {
|
|
|
|
- for (var key in original) {
|
|
|
|
- if (!copy[key] && copy[key] !== '' && copy[key] !== 0) {
|
|
|
|
- grunt.fail.warn('Settings file ' + testSettingsFile + ' doesn\'t contain key ' + context + '.' + key);
|
|
|
|
- }
|
|
|
|
- if (original[key] !== null && typeof original[key] === 'object') {
|
|
|
|
- compareKeys(original[key], copy[key], context + '.' + key);
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
- compareKeys(mainSettings, testSettings, 'settings');
|
|
|
|
-
|
|
|
|
- var outputFile = './coverage/server_config/settings.json';
|
|
|
|
- grunt.file.write(outputFile, JSON.stringify(testSettings, null, 4));
|
|
|
|
- grunt.log.ok('File ' + outputFile + ' created');
|
|
|
|
- });
|
|
|
|
-
|
|
|
|
-
|
|
|
|
grunt.registerTask('icons', [
|
|
grunt.registerTask('icons', [
|
|
'webfont:icons',
|
|
'webfont:icons',
|
|
'less',
|
|
'less',
|
|
@@ -335,12 +259,6 @@ module.exports = function(grunt) {
|
|
grunt.registerTask('test', [
|
|
grunt.registerTask('test', [
|
|
'build',
|
|
'build',
|
|
'express:testSuite',
|
|
'express:testSuite',
|
|
- 'clean:coverage',
|
|
|
|
- 'copy-test-server-settings',
|
|
|
|
- 'lineremover:beforeCoverage',
|
|
|
|
- 'copy:beforeCoverage',
|
|
|
|
- 'blanket',
|
|
|
|
- 'copy:coverage',
|
|
|
|
'express:test',
|
|
'express:test',
|
|
'mochaTest:test',
|
|
'mochaTest:test',
|
|
'clean:tmp'
|
|
'clean:tmp'
|
|
@@ -349,8 +267,6 @@ module.exports = function(grunt) {
|
|
grunt.registerTask('test-current-work', [
|
|
grunt.registerTask('test-current-work', [
|
|
'jshint',
|
|
'jshint',
|
|
'express:testSuite',
|
|
'express:testSuite',
|
|
- 'clean:coverage',
|
|
|
|
- 'copy-test-server-settings',
|
|
|
|
'express:test-current-work',
|
|
'express:test-current-work',
|
|
'mochaTest:test-current-work',
|
|
'mochaTest:test-current-work',
|
|
'clean:tmp'
|
|
'clean:tmp'
|