guard-jasmine 1.18.1 → 1.18.2
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/lib/guard/jasmine/cli.rb +1 -0
- data/lib/guard/jasmine/phantomjs/guard-jasmine.js +11 -1
- data/lib/guard/jasmine/phantomjs/lib/console.js +9 -1
- data/lib/guard/jasmine/phantomjs/lib/reporter.js +5 -1
- data/lib/guard/jasmine/phantomjs/lib/result.js +9 -1
- data/lib/guard/jasmine/runner.rb +19 -6
- data/lib/guard/jasmine/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: dad3977ff6ae64bcbfadd40d745008ac7e7d4f8f
|
4
|
+
data.tar.gz: 833453756677888df558cb1135bc631044385f98
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: c63479cc2526d6747ed95099b8940f96ee0a58092b056461ddcab834e6f0cdb9181883703e9d6016f9e77445934d3883290db031af416dd41e2226b7ed0cbf58
|
7
|
+
data.tar.gz: b56f521141ed31168f4c698e58a949f34b149c89a2b64643051d53e42f5326fa07b4554d28bbf61b72929b146c90e279d0189b4d9d882ec02255eb172133d9a7
|
data/lib/guard/jasmine/cli.rb
CHANGED
@@ -193,6 +193,7 @@ module Guard
|
|
193
193
|
runner_options[:junit] = options.junit
|
194
194
|
runner_options[:junit_consolidate] = options.junit_consolidate
|
195
195
|
runner_options[:junit_save_path] = options.junit_save_path
|
196
|
+
runner_options[:is_cli] = true
|
196
197
|
|
197
198
|
::Guard::UI.options = ::Guard::UI.options.merge({ :template => ':message' })
|
198
199
|
|
@@ -1,4 +1,3 @@
|
|
1
|
-
// Generated by CoffeeScript 1.6.3
|
2
1
|
(function() {
|
3
2
|
var currentSpecId, errors, fs, getXmlResults, jasmineAvailable, jasmineMissing, jasmineReady, logs, options, overloadPageEvaluate, page, replaceFunctionPlaceholders, resultsKey, setupWriteFileFunction, specsDone, specsReady, specsTimedout, waitFor;
|
4
3
|
|
@@ -40,6 +39,7 @@
|
|
40
39
|
|
41
40
|
page.onConsoleMessage = function(msg, line, source) {
|
42
41
|
var result;
|
42
|
+
|
43
43
|
if (/^RUNNER_END$/.test(msg)) {
|
44
44
|
result = page.evaluate(function() {
|
45
45
|
return window.reporter.runnerResult;
|
@@ -58,6 +58,7 @@
|
|
58
58
|
|
59
59
|
page.onInitialized = function() {
|
60
60
|
var setupReporters;
|
61
|
+
|
61
62
|
overloadPageEvaluate(page);
|
62
63
|
setupWriteFileFunction(page, resultsKey, fs.separator);
|
63
64
|
page.injectJs('lib/console.js');
|
@@ -82,6 +83,7 @@
|
|
82
83
|
|
83
84
|
getXmlResults = function(page, key) {
|
84
85
|
var getWindowObj;
|
86
|
+
|
85
87
|
getWindowObj = function() {
|
86
88
|
return window["%resultsObj%"] || {};
|
87
89
|
};
|
@@ -92,6 +94,7 @@
|
|
92
94
|
|
93
95
|
replaceFunctionPlaceholders = function(fn, replacements) {
|
94
96
|
var match, p;
|
97
|
+
|
95
98
|
if (replacements && typeof replacements === 'object') {
|
96
99
|
fn = fn.toString();
|
97
100
|
for (p in replacements) {
|
@@ -119,6 +122,7 @@
|
|
119
122
|
|
120
123
|
setupWriteFileFunction = function(page, key, path_separator) {
|
121
124
|
var saveData;
|
125
|
+
|
122
126
|
saveData = function() {
|
123
127
|
window["%resultsObj%"] = {};
|
124
128
|
window.fs_path_separator = "%fs_path_separator%";
|
@@ -156,8 +160,10 @@
|
|
156
160
|
|
157
161
|
jasmineMissing = function() {
|
158
162
|
var error, text;
|
163
|
+
|
159
164
|
text = page.evaluate(function() {
|
160
165
|
var _ref;
|
166
|
+
|
161
167
|
return (_ref = document.getElementsByTagName('body')[0]) != null ? _ref.innerText : void 0;
|
162
168
|
});
|
163
169
|
if (text) {
|
@@ -180,8 +186,10 @@
|
|
180
186
|
|
181
187
|
specsTimedout = function() {
|
182
188
|
var error, text;
|
189
|
+
|
183
190
|
text = page.evaluate(function() {
|
184
191
|
var _ref;
|
192
|
+
|
185
193
|
return (_ref = document.getElementsByTagName('body')[0]) != null ? _ref.innerText : void 0;
|
186
194
|
});
|
187
195
|
if (text) {
|
@@ -198,6 +206,7 @@
|
|
198
206
|
|
199
207
|
specsDone = function() {
|
200
208
|
var filename, output, xml_results;
|
209
|
+
|
201
210
|
if (options.junit === true) {
|
202
211
|
xml_results = getXmlResults(page, resultsKey);
|
203
212
|
for (filename in xml_results) {
|
@@ -211,6 +220,7 @@
|
|
211
220
|
|
212
221
|
waitFor = function(test, ready, timeout, timeoutFunction) {
|
213
222
|
var condition, interval, start, wait;
|
223
|
+
|
214
224
|
if (timeout == null) {
|
215
225
|
timeout = 10000;
|
216
226
|
}
|
@@ -1,4 +1,3 @@
|
|
1
|
-
// Generated by CoffeeScript 1.6.3
|
2
1
|
(function() {
|
3
2
|
var Console,
|
4
3
|
__slice = [].slice;
|
@@ -6,29 +5,35 @@
|
|
6
5
|
Console = (function() {
|
7
6
|
function Console(console) {
|
8
7
|
var log;
|
8
|
+
|
9
9
|
log = console.log;
|
10
10
|
console.log = function() {
|
11
11
|
var args;
|
12
|
+
|
12
13
|
args = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
|
13
14
|
return log.call(console, Console.format.apply(Console, args));
|
14
15
|
};
|
15
16
|
console.info = function() {
|
16
17
|
var args;
|
18
|
+
|
17
19
|
args = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
|
18
20
|
return log.call(console, "INFO: " + (Console.format.apply(Console, args)));
|
19
21
|
};
|
20
22
|
console.warn = function() {
|
21
23
|
var args;
|
24
|
+
|
22
25
|
args = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
|
23
26
|
return log.call(console, "WARN: " + (Console.format.apply(Console, args)));
|
24
27
|
};
|
25
28
|
console.error = function() {
|
26
29
|
var args;
|
30
|
+
|
27
31
|
args = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
|
28
32
|
return log.call(console, "ERROR: " + (Console.format.apply(Console, args)));
|
29
33
|
};
|
30
34
|
console.debug = function() {
|
31
35
|
var args;
|
36
|
+
|
32
37
|
args = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
|
33
38
|
return log.call(console, "DEBUG: " + (Console.format.apply(Console, args)));
|
34
39
|
};
|
@@ -39,6 +44,7 @@
|
|
39
44
|
Console.format = function() {
|
40
45
|
var arg, args, result, _i, _len,
|
41
46
|
_this = this;
|
47
|
+
|
42
48
|
args = 1 <= arguments.length ? __slice.call(arguments, 0) : [];
|
43
49
|
result = [];
|
44
50
|
if (typeof args[0] === 'string' && /%[sdifo]/gi.test(args[0])) {
|
@@ -56,6 +62,7 @@
|
|
56
62
|
|
57
63
|
Console.inspect = function(object, type) {
|
58
64
|
var match, result;
|
65
|
+
|
59
66
|
switch (type) {
|
60
67
|
case '%s':
|
61
68
|
result = String(object);
|
@@ -93,6 +100,7 @@
|
|
93
100
|
|
94
101
|
Console.pp = function(object, depth) {
|
95
102
|
var key, result, type, value, _i, _len;
|
103
|
+
|
96
104
|
if (depth == null) {
|
97
105
|
depth = 0;
|
98
106
|
}
|
@@ -1,4 +1,3 @@
|
|
1
|
-
// Generated by CoffeeScript 1.6.3
|
2
1
|
(function() {
|
3
2
|
var ConsoleReporter;
|
4
3
|
|
@@ -27,6 +26,7 @@
|
|
27
26
|
|
28
27
|
ConsoleReporter.prototype.reportSpecResults = function(spec) {
|
29
28
|
var messages, result, specResult, _base, _i, _len, _name, _ref;
|
29
|
+
|
30
30
|
if (!spec.results().skipped) {
|
31
31
|
specResult = {
|
32
32
|
id: spec.id,
|
@@ -52,6 +52,7 @@
|
|
52
52
|
|
53
53
|
ConsoleReporter.prototype.reportSuiteResults = function(suite) {
|
54
54
|
var parent, suiteResult, _base, _ref;
|
55
|
+
|
55
56
|
if (!suite.results().skipped) {
|
56
57
|
suiteResult = {
|
57
58
|
id: suite.id,
|
@@ -77,6 +78,7 @@
|
|
77
78
|
|
78
79
|
ConsoleReporter.prototype.reportRunnerResults = function(runner) {
|
79
80
|
var end, runtime;
|
81
|
+
|
80
82
|
runtime = (new Date().getTime() - this.startTime) / 1000;
|
81
83
|
this.runnerResult['passed'] = runner.results().failedCount === 0;
|
82
84
|
this.runnerResult['stats'] = {
|
@@ -99,6 +101,7 @@
|
|
99
101
|
|
100
102
|
ConsoleReporter.prototype.addNestedSuites = function(suiteResult) {
|
101
103
|
var suite, _i, _len, _ref, _results;
|
104
|
+
|
102
105
|
if (this.nestedSuiteResults[suiteResult.id]) {
|
103
106
|
_ref = this.nestedSuiteResults[suiteResult.id];
|
104
107
|
_results = [];
|
@@ -113,6 +116,7 @@
|
|
113
116
|
|
114
117
|
ConsoleReporter.prototype.removeEmptySuites = function(suiteResult) {
|
115
118
|
var suite, suites, _i, _len, _ref;
|
119
|
+
|
116
120
|
suites = [];
|
117
121
|
_ref = suiteResult.suites;
|
118
122
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -1,4 +1,3 @@
|
|
1
|
-
// Generated by CoffeeScript 1.6.3
|
2
1
|
(function() {
|
3
2
|
var Result;
|
4
3
|
|
@@ -12,8 +11,10 @@
|
|
12
11
|
|
13
12
|
Result.prototype.addLogs = function(suite) {
|
14
13
|
var id, s, spec;
|
14
|
+
|
15
15
|
suite.suites = (function() {
|
16
16
|
var _i, _len, _ref, _results;
|
17
|
+
|
17
18
|
_ref = suite.suites;
|
18
19
|
_results = [];
|
19
20
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -25,6 +26,7 @@
|
|
25
26
|
if (suite.specs) {
|
26
27
|
suite.specs = (function() {
|
27
28
|
var _i, _len, _ref, _results;
|
29
|
+
|
28
30
|
_ref = suite.specs;
|
29
31
|
_results = [];
|
30
32
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -45,8 +47,10 @@
|
|
45
47
|
|
46
48
|
Result.prototype.addErrors = function(suite) {
|
47
49
|
var id, s, spec;
|
50
|
+
|
48
51
|
suite.suites = (function() {
|
49
52
|
var _i, _len, _ref, _results;
|
53
|
+
|
50
54
|
_ref = suite.suites;
|
51
55
|
_results = [];
|
52
56
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -58,6 +62,7 @@
|
|
58
62
|
if (suite.specs) {
|
59
63
|
suite.specs = (function() {
|
60
64
|
var _i, _len, _ref, _results;
|
65
|
+
|
61
66
|
_ref = suite.specs;
|
62
67
|
_results = [];
|
63
68
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
@@ -78,6 +83,7 @@
|
|
78
83
|
|
79
84
|
Result.prototype.addGlobalError = function(suite) {
|
80
85
|
var b, err, errMsg, globalErrors, noSpecs, noSuites, _i, _len, _ref;
|
86
|
+
|
81
87
|
noSuites = !suite.suites || suite.suites.length === 0;
|
82
88
|
noSpecs = !suite.specs || suite.specs.length === 0;
|
83
89
|
globalErrors = this.errors[-1] && this.errors[-1].length !== 0;
|
@@ -96,8 +102,10 @@
|
|
96
102
|
|
97
103
|
Result.prototype.cleanResult = function(suite) {
|
98
104
|
var s, spec, _i, _len, _ref;
|
105
|
+
|
99
106
|
suite.suites = (function() {
|
100
107
|
var _i, _len, _ref, _results;
|
108
|
+
|
101
109
|
_ref = suite.suites;
|
102
110
|
_results = [];
|
103
111
|
for (_i = 0, _len = _ref.length; _i < _len; _i++) {
|
data/lib/guard/jasmine/runner.rb
CHANGED
@@ -180,15 +180,20 @@ module Guard
|
|
180
180
|
|
181
181
|
begin
|
182
182
|
result = MultiJson.decode(json, { max_nesting: false })
|
183
|
+
raise 'No response from Jasmine runner' if !result && options[:is_cli]
|
183
184
|
|
184
185
|
if result['error']
|
185
|
-
|
186
|
-
|
186
|
+
if options[:is_cli]
|
187
|
+
raise 'An error occurred in the Jasmine runner'
|
188
|
+
else
|
189
|
+
notify_runtime_error(result, options)
|
190
|
+
end
|
191
|
+
elsif result
|
187
192
|
result['file'] = file
|
188
193
|
notify_spec_result(result, options)
|
189
194
|
end
|
190
195
|
|
191
|
-
if result['coverage'] && options[:coverage]
|
196
|
+
if result && result['coverage'] && options[:coverage]
|
192
197
|
notify_coverage_result(result['coverage'], file, options)
|
193
198
|
end
|
194
199
|
|
@@ -196,10 +201,18 @@ module Guard
|
|
196
201
|
|
197
202
|
rescue MultiJson::DecodeError => e
|
198
203
|
if e.data == ''
|
199
|
-
|
204
|
+
if options[:is_cli]
|
205
|
+
raise 'No response from Jasmine runner'
|
206
|
+
else
|
207
|
+
Formatter.error('No response from the Jasmine runner!')
|
208
|
+
end
|
200
209
|
else
|
201
|
-
|
202
|
-
|
210
|
+
if options[:is_cli]
|
211
|
+
raise 'Cannot decode JSON from PhantomJS runner'
|
212
|
+
else
|
213
|
+
Formatter.error("Cannot decode JSON from PhantomJS runner: #{ e.message }")
|
214
|
+
Formatter.error("JSON response: #{ e.data }")
|
215
|
+
end
|
203
216
|
end
|
204
217
|
ensure
|
205
218
|
output.close
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: guard-jasmine
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.18.
|
4
|
+
version: 1.18.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Michael Kessler
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-08-
|
11
|
+
date: 2013-08-26 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: guard
|