2016-04-14 14:46:33 +08:00
|
|
|
'use strict';
|
|
|
|
|
2012-09-11 02:12:23 +08:00
|
|
|
var grunt = require('grunt');
|
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
exports.jst = {
|
2012-09-11 02:12:23 +08:00
|
|
|
main: function(test) {
|
|
|
|
|
2012-09-12 23:34:53 +08:00
|
|
|
var expect, result;
|
2012-09-11 02:12:23 +08:00
|
|
|
|
2013-03-06 21:56:40 +08:00
|
|
|
test.expect(10);
|
2012-09-12 23:34:53 +08:00
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
expect = grunt.file.read('test/expected/jst.js');
|
|
|
|
result = grunt.file.read('tmp/jst.js');
|
|
|
|
test.equal(expect, result, 'should compile underscore templates into JST');
|
2012-09-11 02:12:23 +08:00
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
expect = grunt.file.read('test/expected/uglyfile.js');
|
|
|
|
result = grunt.file.read('tmp/uglyfile.js');
|
|
|
|
test.equal(expect, result, 'should escape single quotes in filenames');
|
2012-09-12 23:34:53 +08:00
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
expect = grunt.file.read('test/expected/ns_nested.js');
|
|
|
|
result = grunt.file.read('tmp/ns_nested.js');
|
|
|
|
test.equal(expect, result, 'should define parts of nested namespaces');
|
2012-09-15 07:32:44 +08:00
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
expect = grunt.file.read('test/expected/ns_nested.js'); // same as previous test
|
|
|
|
result = grunt.file.read('tmp/ns_nested_this.js');
|
|
|
|
test.equal(expect, result, 'should define parts of nested namespaces, ignoring this.');
|
2012-09-15 07:32:44 +08:00
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
expect = grunt.file.read('test/expected/pretty.js');
|
|
|
|
result = grunt.file.read('tmp/pretty.js');
|
|
|
|
test.equal(expect, result, 'should make the output be 1 line per template, making the output less ugly');
|
2012-11-27 02:02:20 +08:00
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
expect = grunt.file.read('test/expected/amd_wrapper.js');
|
|
|
|
result = grunt.file.read('tmp/amd_wrapper.js');
|
|
|
|
test.equal(expect, result, 'should wrap the template with define for AMD pattern');
|
2012-11-27 02:02:20 +08:00
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
expect = grunt.file.read('test/expected/amd_wrapper_no_ns.js');
|
|
|
|
result = grunt.file.read('tmp/amd_wrapper_no_ns.js');
|
|
|
|
test.equal(expect, result, 'should wrap the template with define for AMD pattern and return the function itself with no namespace');
|
2013-03-06 21:56:40 +08:00
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
expect = grunt.file.read('test/expected/pretty_amd.js');
|
|
|
|
result = grunt.file.read('tmp/pretty_amd.js');
|
|
|
|
test.equal(expect, result, 'should make the AMD wrapper output pretty');
|
2012-11-27 02:02:20 +08:00
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
expect = grunt.file.read('test/expected/process_content.js');
|
|
|
|
result = grunt.file.read('tmp/process_content.js');
|
|
|
|
test.equal(expect, result, 'should convert file content');
|
2012-12-29 21:18:21 +08:00
|
|
|
|
2016-04-14 14:46:33 +08:00
|
|
|
expect = grunt.file.read('test/expected/local_scope.js');
|
|
|
|
result = grunt.file.read('tmp/local_scope.js');
|
|
|
|
test.equal(expect, result, 'should add `with` block when templateSettings.variable is undefined');
|
2013-02-16 02:45:54 +08:00
|
|
|
|
2012-09-11 02:12:23 +08:00
|
|
|
test.done();
|
|
|
|
}
|
2012-11-27 02:02:20 +08:00
|
|
|
};
|