mirror of
https://github.com/JuanCanham/HackMyResume.git
synced 2024-12-23 05:37:23 +00:00
Tests: Add ICE detection test.
ICE is the internal boilerplate we use to freeze/unfreeze themes when trying to force-feed them Markdown or other formatted data.
This commit is contained in:
parent
d8b9d86896
commit
e4a549ed30
12
src/utils/file-contains.js
Normal file
12
src/utils/file-contains.js
Normal file
@ -0,0 +1,12 @@
|
||||
/**
|
||||
Definition of the SyntaxErrorEx class.
|
||||
@module file-contains.js
|
||||
*/
|
||||
|
||||
(function(){
|
||||
|
||||
module.exports = function( file, needle ) {
|
||||
return require('fs').readFileSync(file,'utf-8').indexOf( needle ) > -1;
|
||||
};
|
||||
|
||||
}());
|
@ -7,7 +7,10 @@ var SPAWNWATCHER = require('../src/core/spawn-watch')
|
||||
, _ = require('underscore')
|
||||
, FRESHResume = require('../src/core/fresh-resume')
|
||||
, FCMD = require( '../src/hackmycmd')
|
||||
, validator = require('is-my-json-valid');
|
||||
, validator = require('is-my-json-valid')
|
||||
, READFILES = require('recursive-readdir-sync')
|
||||
, fileContains = require('../src/utils/file-contains')
|
||||
, FS = require('fs');
|
||||
|
||||
chai.config.includeStack = false;
|
||||
|
||||
@ -51,6 +54,23 @@ function genThemes( title, src, fmt ) {
|
||||
|
||||
}
|
||||
|
||||
function folderContains( needle, haystack ) {
|
||||
return _.some( READFILES( path.join(__dirname, haystack) ), function( absPath ) {
|
||||
if( FS.lstatSync( absPath ).isFile() ) {
|
||||
if( fileContains( absPath, needle ) ) {
|
||||
console.log('Found invalid metadata in ' + absPath);
|
||||
return true;
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
genThemes( 'jane-q-fullstacker', ['node_modules/jane-q-fullstacker/resume/jane-resume.json'], 'FRESH' );
|
||||
genThemes( 'johnny-trouble', ['node_modules/johnny-trouble-resume/src/johnny-trouble.fresh.json'], 'FRESH' );
|
||||
genThemes( 'richard-hendriks', ['test/resumes/jrs-0.0.0/richard-hendriks.json'], 'JRS' );
|
||||
|
||||
describe('Verifying generated theme files...', function() {
|
||||
it('Generated files should not contain ICE.', function() {
|
||||
expect( folderContains('@@@@', 'sandbox') ).to.be.false;
|
||||
});
|
||||
});
|
||||
|
Loading…
Reference in New Issue
Block a user