guard-jasmine 1.9.4 → 1.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +2 -2
- data/lib/guard/jasmine.rb +1 -1
- data/lib/guard/jasmine/server.rb +22 -10
- data/lib/guard/jasmine/version.rb +1 -1
- metadata +2 -2
data/README.md
CHANGED
@@ -353,8 +353,8 @@ The server options configures the server environment that is needed to run Guard
|
|
353
353
|
:server_timeout => 30 # The number of seconds to wait for the Jasmine spec server
|
354
354
|
# default: 15
|
355
355
|
|
356
|
-
:port =>
|
357
|
-
# default:
|
356
|
+
:port => 8888 # Jasmine server port to use.
|
357
|
+
# default: a random, free server port
|
358
358
|
|
359
359
|
:phantomjs_bin => '~/bin/phantomjs' # Path to phantomjs.
|
360
360
|
# default: auto-detect 'phantomjs'
|
data/lib/guard/jasmine.rb
CHANGED
data/lib/guard/jasmine/server.rb
CHANGED
@@ -28,14 +28,14 @@ module Guard
|
|
28
28
|
def start(options)
|
29
29
|
server = options[:server]
|
30
30
|
server = detect_server(options[:spec_dir]) if server == :auto
|
31
|
-
port = options[:port]
|
31
|
+
port = options[:port] || detect_server_port
|
32
32
|
timeout = options[:server_timeout]
|
33
33
|
|
34
34
|
case server
|
35
35
|
when :webrick, :mongrel, :thin
|
36
|
-
start_rack_server(server, options)
|
36
|
+
start_rack_server(server, port, options)
|
37
37
|
when :unicorn
|
38
|
-
start_unicorn_server(options)
|
38
|
+
start_unicorn_server(port, options)
|
39
39
|
when :jasmine_gem
|
40
40
|
start_rake_server(port, 'jasmine')
|
41
41
|
else
|
@@ -61,15 +61,14 @@ module Guard
|
|
61
61
|
# in the current directory.
|
62
62
|
#
|
63
63
|
# @param [Symbol] server the server name
|
64
|
+
# @param [Integer] port the server port
|
64
65
|
# @param [Hash] options the server options
|
65
66
|
# @option options [Symbol] server the rack server to use
|
66
67
|
# @option options [String] server_env the Rails environment
|
67
|
-
# @option options [Number] port the server port
|
68
68
|
# @option options [String] rackup_config custom rackup config to use (i.e. spec/dummy/config.ru for mountable engines)
|
69
69
|
#
|
70
|
-
def start_rack_server(server, options)
|
70
|
+
def start_rack_server(server, port, options)
|
71
71
|
environment = options[:server_env]
|
72
|
-
port = options[:port]
|
73
72
|
rackup_config = options[:rackup_config]
|
74
73
|
|
75
74
|
::Guard::UI.info "Guard::Jasmine starts #{ server } test server on port #{ port } in #{ environment } environment."
|
@@ -90,9 +89,8 @@ module Guard
|
|
90
89
|
# @option options [String] server_env the Rails environment
|
91
90
|
# @option options [Number] port the server port
|
92
91
|
#
|
93
|
-
def start_unicorn_server(options)
|
92
|
+
def start_unicorn_server(port, options)
|
94
93
|
environment = options[:server_env]
|
95
|
-
port = options[:port]
|
96
94
|
|
97
95
|
::Guard::UI.info "Guard::Jasmine starts Unicorn test server on port #{ port } in #{ environment } environment."
|
98
96
|
|
@@ -103,7 +101,7 @@ module Guard
|
|
103
101
|
rescue => e
|
104
102
|
::Guard::UI.error "Cannot start Unicorn server: #{ e.message }"
|
105
103
|
end
|
106
|
-
|
104
|
+
|
107
105
|
# Start the Jasmine gem server of the current project.
|
108
106
|
#
|
109
107
|
# @param [Number] port the server port
|
@@ -143,6 +141,20 @@ module Guard
|
|
143
141
|
end
|
144
142
|
end
|
145
143
|
|
144
|
+
# Detect the server port to use
|
145
|
+
#
|
146
|
+
# @return [Integer] a free server port
|
147
|
+
#
|
148
|
+
def detect_server_port
|
149
|
+
server = TCPServer.new('127.0.0.1', 0)
|
150
|
+
port = server.addr[1]
|
151
|
+
server.close
|
152
|
+
|
153
|
+
port
|
154
|
+
rescue Errno::EADDRINUSE
|
155
|
+
retry
|
156
|
+
end
|
157
|
+
|
146
158
|
# Wait until the Jasmine test server is running.
|
147
159
|
#
|
148
160
|
# @param [Number] port the server port
|
@@ -160,7 +172,7 @@ module Guard
|
|
160
172
|
sleep 0.1
|
161
173
|
end
|
162
174
|
end
|
163
|
-
|
175
|
+
|
164
176
|
rescue Timeout::Error
|
165
177
|
::Guard::UI.warning 'Timeout while waiting for the server startup. You may need to increase the `:server_timeout` option.'
|
166
178
|
throw :task_has_failed
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: guard-jasmine
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.10.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-11-
|
12
|
+
date: 2012-11-19 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: guard
|