guard-jasmine-headless-webkit 0.0.1 → 0.0.2
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile +1 -0
- data/README.md +3 -0
- data/Rakefile +6 -0
- data/lib/guard/jasmine-headless-webkit.rb +1 -1
- data/lib/guard/jasmine-headless-webkit/runner.rb +42 -2
- data/lib/guard/jasmine-headless-webkit/version.rb +1 -1
- metadata +10 -4
data/Gemfile
CHANGED
data/README.md
CHANGED
@@ -9,6 +9,9 @@ Add running your Jasmine specs to your `Guardfile` via [`jasmine-headless-webkit
|
|
9
9
|
`gem install guard-jasmine-headless-webkit` and then `guard init jasmine-headless-webkit` in your project directory to get started.
|
10
10
|
You should also put it in your `Gemfile` because, hey, why not, right?
|
11
11
|
|
12
|
+
Output is colored by default. If you want it not colored, place a `--no-colors` option into the project's or your
|
13
|
+
home folder's `.jasmine-headless-webkit` file.
|
14
|
+
|
12
15
|
## `guard` options
|
13
16
|
|
14
17
|
* `:all_on_start => false` to not run everything when starting, just like `guard-rspec`
|
data/Rakefile
CHANGED
@@ -1,9 +1,49 @@
|
|
1
|
+
require 'guard/notifier'
|
2
|
+
|
1
3
|
module Guard
|
2
4
|
class JasmineHeadlessWebkitRunner
|
3
5
|
class << self
|
4
6
|
def run(paths = [])
|
5
|
-
|
6
|
-
|
7
|
+
lines = [""]
|
8
|
+
|
9
|
+
Open3.popen3(%{jasmine-headless-webkit -c #{paths.join(" ")}}) do |stdin, stdout, stderr|
|
10
|
+
stdin.close
|
11
|
+
stderr.close
|
12
|
+
while !stdout.eof?
|
13
|
+
$stdout.print (char = stdout.getc)
|
14
|
+
$stdout.flush
|
15
|
+
|
16
|
+
if char.chr == "\n"
|
17
|
+
lines << ""
|
18
|
+
else
|
19
|
+
lines.last << char.chr
|
20
|
+
end
|
21
|
+
end
|
22
|
+
end
|
23
|
+
|
24
|
+
total, fails, secs = lines[-2].scan(%r{.* (\d+) tests, (\d+) failures, (.+) secs..*}).flatten
|
25
|
+
|
26
|
+
any_console = lines.any? { |line| line['[console] '] }
|
27
|
+
|
28
|
+
Notifier.notify(message(total, fails, secs, any_console), :title => 'Jasmine results', :image => image(any_console, fails))
|
29
|
+
fails.to_i
|
30
|
+
end
|
31
|
+
|
32
|
+
private
|
33
|
+
def message(total, fails, secs, any_console)
|
34
|
+
"#{total} tests, #{fails} failures, #{secs} secs#{any_console ? ', console.log used' : ''}."
|
35
|
+
end
|
36
|
+
|
37
|
+
def image(any_console, fails)
|
38
|
+
if any_console
|
39
|
+
:pending
|
40
|
+
else
|
41
|
+
if fails.to_i == 0
|
42
|
+
:success
|
43
|
+
else
|
44
|
+
:failed
|
45
|
+
end
|
46
|
+
end
|
7
47
|
end
|
8
48
|
end
|
9
49
|
end
|
metadata
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
name: guard-jasmine-headless-webkit
|
3
3
|
version: !ruby/object:Gem::Version
|
4
4
|
prerelease:
|
5
|
-
version: 0.0.
|
5
|
+
version: 0.0.2
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
8
|
- John Bintz
|
@@ -10,12 +10,11 @@ autorequire:
|
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
12
|
|
13
|
-
date: 2011-05-
|
13
|
+
date: 2011-05-26 00:00:00 -04:00
|
14
14
|
default_executable:
|
15
15
|
dependencies:
|
16
16
|
- !ruby/object:Gem::Dependency
|
17
17
|
name: guard
|
18
|
-
prerelease: false
|
19
18
|
requirement: &id001 !ruby/object:Gem::Requirement
|
20
19
|
none: false
|
21
20
|
requirements:
|
@@ -23,10 +22,10 @@ dependencies:
|
|
23
22
|
- !ruby/object:Gem::Version
|
24
23
|
version: 0.2.2
|
25
24
|
type: :runtime
|
25
|
+
prerelease: false
|
26
26
|
version_requirements: *id001
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: jasmine-headless-webkit
|
29
|
-
prerelease: false
|
30
29
|
requirement: &id002 !ruby/object:Gem::Requirement
|
31
30
|
none: false
|
32
31
|
requirements:
|
@@ -34,6 +33,7 @@ dependencies:
|
|
34
33
|
- !ruby/object:Gem::Version
|
35
34
|
version: "0"
|
36
35
|
type: :runtime
|
36
|
+
prerelease: false
|
37
37
|
version_requirements: *id002
|
38
38
|
description: Run jasmine-headless-webkit using guard
|
39
39
|
email:
|
@@ -71,12 +71,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
71
71
|
requirements:
|
72
72
|
- - ">="
|
73
73
|
- !ruby/object:Gem::Version
|
74
|
+
hash: -152352298797570042
|
75
|
+
segments:
|
76
|
+
- 0
|
74
77
|
version: "0"
|
75
78
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
76
79
|
none: false
|
77
80
|
requirements:
|
78
81
|
- - ">="
|
79
82
|
- !ruby/object:Gem::Version
|
83
|
+
hash: -152352298797570042
|
84
|
+
segments:
|
85
|
+
- 0
|
80
86
|
version: "0"
|
81
87
|
requirements: []
|
82
88
|
|