UNPKG

4.18 kBJavaScriptView Raw
1"use strict";
2
3var grunt = require('grunt');
4var fs = require('fs');
5
6exports['test-text-replace'] = {
7
8 'Test error handling': {
9 setUp: function (done) {
10 grunt.file.copy('test/text_files/test.txt', 'test/temp/testA.txt');
11 grunt.file.copy('test/text_files/test.txt', 'test/temp/testB.txt');
12 done();
13 },
14
15 tearDown: function (done) {
16 fs.unlinkSync('test/temp/testA.txt');
17 fs.unlinkSync('test/temp/testB.txt');
18 fs.rmdirSync('test/temp');
19 done();
20 },
21
22 'Test no source files': function (test) {
23 var warnCountBefore = grunt.fail.warncount;
24 grunt.helper('replace', {
25 dest: 'test/temp/',
26 replacements: [{ from: 'Hello', to: 'Good bye' }]
27 });
28 test.equal(grunt.fail.warncount - warnCountBefore, 1);
29 grunt.helper('replace', {
30 src: 'test/noSuchFile.txt',
31 dest: 'test/temp/',
32 replacements: [{ from: 'Hello', to: 'Good bye' }]
33 });
34 test.equal(grunt.fail.warncount - warnCountBefore, 2);
35 grunt.helper('replace', {
36 src: 'test/temp/testA.txt',
37 dest: 'test/temp/',
38 replacements: [{ from: 'Hello', to: 'Good bye' }]
39 });
40 test.equal(grunt.fail.warncount - warnCountBefore, 2);
41 test.done();
42 },
43
44 'Test no destination found': function (test) {
45 var warnCountBefore = grunt.fail.warncount;
46 grunt.helper('replace', {
47 src: 'test/temp/testA.txt',
48 replacements: [{ from: 'Hello', to: 'Good bye' }]
49 });
50 test.equal(grunt.fail.warncount - warnCountBefore, 1);
51 grunt.helper('replace', {
52 src: 'test/temp/testA.txt',
53 overwrite: true,
54 replacements: [{ from: 'Hello', to: 'Good bye' }]
55 });
56 test.equal(grunt.fail.warncount - warnCountBefore, 1);
57 grunt.helper('replace', {
58 src: 'test/temp/testA.txt',
59 dest: 'test/temp/',
60 replacements: [{ from: 'Hello', to: 'Good bye' }]
61 });
62 test.equal(grunt.fail.warncount - warnCountBefore, 1);
63 test.done();
64 },
65
66 'Test no replacements found': function (test) {
67 var warnCountBefore = grunt.fail.warncount;
68 grunt.helper('replace', {
69 src: 'test/temp/testA.txt',
70 dest: 'test/temp/'
71 });
72 test.equal(grunt.fail.warncount - warnCountBefore, 1);
73 grunt.helper('replace', {
74 src: 'test/temp/testA.txt',
75 dest: 'test/temp/',
76 replacements: [{ from: 'Hello', to: 'Good bye' }]
77 });
78 test.equal(grunt.fail.warncount - warnCountBefore, 1);
79 test.done();
80 },
81
82 'Test overwrite failure': function (test) {
83 var warnCountBefore = grunt.fail.warncount;
84 grunt.helper('replace', {
85 src: 'test/temp/testA.txt',
86 dest: 'test/temp/',
87 overwrite: true,
88 replacements: [{ from: 'Hello', to: 'Good bye' }]
89 });
90 test.equal(grunt.fail.warncount - warnCountBefore, 1);
91 grunt.helper('replace', {
92 src: 'test/temp/*',
93 overwrite: true,
94 replacements: [{ from: 'Hello', to: 'Good bye' }]
95 });
96 test.equal(grunt.fail.warncount - warnCountBefore, 1);
97 grunt.helper('replace', {
98 src: 'test/temp/testA.txt',
99 overwrite: true,
100 replacements: [{ from: 'Hello', to: 'Good bye' }]
101 });
102 test.equal(grunt.fail.warncount - warnCountBefore, 1);
103 test.done();
104 },
105
106 'Test destination error': function (test) {
107 var warnCountBefore = grunt.fail.warncount;
108 grunt.helper('replace', {
109 src: 'test/temp/*',
110 dest: 'test/temp',
111 replacements: [{ from: 'Hello', to: 'Good bye' }]
112 });
113 test.equal(grunt.fail.warncount - warnCountBefore, 1);
114 grunt.helper('replace', {
115 src: 'test/temp/*',
116 dest: 'test/temp/testA.txt',
117 replacements: [{ from: 'Hello', to: 'Good bye' }]
118 });
119 test.equal(grunt.fail.warncount - warnCountBefore, 2);
120 grunt.helper('replace', {
121 src: 'test/temp/testA.txt',
122 dest: 'test/temp/testB.txt',
123 replacements: [{ from: 'Hello', to: 'Good bye' }]
124 });
125 test.equal(grunt.fail.warncount - warnCountBefore, 2);
126 test.done();
127 }
128
129 }
130
131};
\No newline at end of file