sauce 3.1.2 → 3.1.3
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.
- checksums.yaml +8 -8
- data/lib/sauce/capybara.rb +1 -1
- data/lib/sauce/config.rb +3 -3
- data/lib/sauce/selenium.rb +5 -0
- data/lib/sauce/test_unit.rb +2 -2
- data/lib/sauce/version.rb +1 -1
- data/spec/sauce/config/config_spec.rb +8 -0
- data/spec/sauce/file_detector_spec.rb +15 -0
- data/spec/sauce/selenium_spec.rb +41 -38
- metadata +4 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
N2JjYzUwNDFiY2E4NDk2ZWY3ODY2MjliMzE4YzUyMDlmYzA0Yzc1ZQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
N2Q2OTJlZTM3ODIzMjU2ZTM3ZGIzOWNiYmU5NTVlYWI0NDI0NTg0ZQ==
|
7
7
|
!binary "U0hBNTEy":
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
ZGMyODQ0YWZmZmE5NDA2Nzk2Y2QwY2MwZWFmZDM5MWE5NDNkMjY3MDhkMTNk
|
10
|
+
YjAwZGExMDRkZWE0NTBkZjFlNTkwZDRhNTk3ZTgwNTEzMzBiNzUyZGU0MjE3
|
11
|
+
NzIzMDkwNjgxZGRlZGUxY2ViM2FiMTM5NDA4OTU0OTZkOGI0ZWE=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
Zjg5Mjk4Zjg4YjhkYjVjOTU1ZTE3MWU1NjM5MWNhY2I2ZDRkOWQxMWEyYWIw
|
14
|
+
Nzc1NTkyZTkwNWEyOTkwZGQxM2VhM2MxZTBhMGNjNjRiMmIzZmUwOGU5ZDhi
|
15
|
+
Y2JjYjZmZDBmZGIyNWY3NzkyZDMxN2EwNGQzOTg5YWQxZTE3YmQ=
|
data/lib/sauce/capybara.rb
CHANGED
data/lib/sauce/config.rb
CHANGED
@@ -66,7 +66,7 @@ module Sauce
|
|
66
66
|
sauce-advisor single-window user-extensions-url firefox-profile-url
|
67
67
|
max-duration idle-timeout build custom-data tunnel-identifier
|
68
68
|
selenium-version command-timeout prerun prerun-args screen-resolution
|
69
|
-
disable-popup-handler avoid-proxy public}
|
69
|
+
disable-popup-handler avoid-proxy public name}
|
70
70
|
|
71
71
|
def self.get_application_port
|
72
72
|
port_index = ENV["TEST_ENV_NUMBER"].to_i
|
@@ -83,7 +83,7 @@ module Sauce
|
|
83
83
|
|
84
84
|
@undefaulted_opts.merge! load_options_from_yaml
|
85
85
|
@undefaulted_opts.merge! load_options_from_environment
|
86
|
-
@undefaulted_opts.merge! load_options_from_heroku
|
86
|
+
@undefaulted_opts.merge! load_options_from_heroku unless ENV["SAUCE_DISABLE_HEROKU_CONFIG"]
|
87
87
|
@undefaulted_opts.merge! Sauce.get_config.opts rescue {}
|
88
88
|
@undefaulted_opts.merge! opts
|
89
89
|
@opts.merge! @undefaulted_opts
|
@@ -143,7 +143,7 @@ module Sauce
|
|
143
143
|
:browserName => BROWSERS[browser] || browser,
|
144
144
|
:version => browser_version,
|
145
145
|
:platform => PLATFORMS[os] || os,
|
146
|
-
:name
|
146
|
+
:name =>@opts[:job_name],
|
147
147
|
:client_version => client_version
|
148
148
|
}
|
149
149
|
|
data/lib/sauce/selenium.rb
CHANGED
@@ -35,6 +35,11 @@ module Sauce
|
|
35
35
|
:desired_capabilities => @config.to_desired_capabilities,
|
36
36
|
:http_client => http_client)
|
37
37
|
http_client.timeout = 90 # Once the browser is up, commands should time out reasonably
|
38
|
+
|
39
|
+
@driver.file_detector = lambda do |args|
|
40
|
+
file_path = args.first.to_s
|
41
|
+
File.exist?(file_path) ? file_path : false
|
42
|
+
end
|
38
43
|
end
|
39
44
|
|
40
45
|
def method_missing(meth, *args)
|
data/lib/sauce/test_unit.rb
CHANGED
@@ -89,8 +89,8 @@ if defined?(ActiveSupport::TestCase)
|
|
89
89
|
end
|
90
90
|
|
91
91
|
begin
|
92
|
-
if Object.const_defined?
|
93
|
-
if Test.const_defined?
|
92
|
+
if Object.const_defined? :Test
|
93
|
+
if Test.const_defined? :Unit
|
94
94
|
require 'test/unit/testcase'
|
95
95
|
module Sauce
|
96
96
|
class TestCase < Test::Unit::TestCase
|
data/lib/sauce/version.rb
CHANGED
@@ -203,6 +203,14 @@ describe Sauce::Config do
|
|
203
203
|
end
|
204
204
|
end
|
205
205
|
|
206
|
+
context 'with a :name set' do
|
207
|
+
subject do
|
208
|
+
Sauce::Config.new(:name => 'As Sweet').to_desired_capabilities[:name]
|
209
|
+
end
|
210
|
+
|
211
|
+
it {should eq "As Sweet"}
|
212
|
+
end
|
213
|
+
|
206
214
|
context 'platforms' do
|
207
215
|
it 'should refer to Windows 2003 as WINDOWS' do
|
208
216
|
config = Sauce::Config.new(:os => "Windows 2003")
|
@@ -0,0 +1,15 @@
|
|
1
|
+
require "spec_helper"
|
2
|
+
|
3
|
+
describe Sauce::Selenium2 do
|
4
|
+
describe "#file_detector" do
|
5
|
+
it "should return the path of files when they exist" do
|
6
|
+
Selenium::WebDriver::Remote::Bridge.any_instance.stub(:create_session).and_return({})
|
7
|
+
|
8
|
+
path = __FILE__
|
9
|
+
|
10
|
+
client = Sauce::Selenium2.new()
|
11
|
+
bridge = client.driver.instance_variable_get(:@bridge)
|
12
|
+
bridge.file_detector.call([path]).should eq path
|
13
|
+
end
|
14
|
+
end
|
15
|
+
end
|
data/spec/sauce/selenium_spec.rb
CHANGED
@@ -1,56 +1,59 @@
|
|
1
1
|
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
|
2
2
|
|
3
3
|
describe Sauce::Selenium2 do
|
4
|
-
|
4
|
+
describe "itself" do
|
5
5
|
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
describe '#initialize' do
|
11
|
-
it 'should work without arguments' do
|
12
|
-
client = Sauce::Selenium2.new
|
13
|
-
client.should_not be nil
|
6
|
+
before :each do
|
7
|
+
mock_driver = double(::Selenium::WebDriver::Driver)
|
8
|
+
mock_driver.stub(:file_detector=)
|
9
|
+
::Selenium::WebDriver.should_receive(:for).and_return(mock_driver)
|
14
10
|
end
|
15
11
|
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
12
|
+
describe '#initialize' do
|
13
|
+
it 'should work without arguments' do
|
14
|
+
client = Sauce::Selenium2.new
|
15
|
+
client.should_not be nil
|
16
|
+
end
|
17
|
+
|
18
|
+
it 'should pass the job_name argument into the config' do
|
19
|
+
expected = 'Dummy Job Name'
|
20
|
+
client = Sauce::Selenium2.new(:job_name => expected)
|
21
|
+
client.config[:job_name].should == expected
|
22
|
+
end
|
20
23
|
end
|
21
|
-
end
|
22
24
|
|
23
25
|
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
|
26
|
+
context 'with an initialized object' do
|
27
|
+
before :each do
|
28
|
+
@client = Sauce::Selenium2.new
|
29
|
+
end
|
28
30
|
|
29
|
-
|
30
|
-
|
31
|
-
|
32
|
-
|
31
|
+
describe '#stop' do
|
32
|
+
it 'should call quit on the driver' do
|
33
|
+
@client.driver.should_receive(:quit).and_return(true)
|
34
|
+
@client.stop
|
35
|
+
end
|
33
36
|
end
|
34
|
-
end
|
35
37
|
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
38
|
+
describe '#session_id' do
|
39
|
+
it 'should query the driver for the session_id' do
|
40
|
+
expected = 101
|
41
|
+
bridge = double('bridge')
|
42
|
+
bridge.should_receive(:session_id).and_return(expected)
|
43
|
+
@client.driver.should_receive(:bridge).and_return(bridge)
|
44
|
+
@client.session_id.should == expected
|
45
|
+
end
|
43
46
|
end
|
44
|
-
end
|
45
47
|
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
48
|
+
describe '#method_missing' do
|
49
|
+
it 'should pass #navigate#to onto the driver' do
|
50
|
+
url = 'http://example.com'
|
51
|
+
navigator = double('navigator')
|
52
|
+
navigator.should_receive(:to).with(url).and_return(true)
|
53
|
+
@client.driver.should_receive(:navigate).and_return(navigator)
|
52
54
|
|
53
|
-
|
55
|
+
@client.navigate.to url
|
56
|
+
end
|
54
57
|
end
|
55
58
|
end
|
56
59
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: sauce
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.1.
|
4
|
+
version: 3.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Dylan Lacey
|
@@ -13,7 +13,7 @@ authors:
|
|
13
13
|
autorequire:
|
14
14
|
bindir: bin
|
15
15
|
cert_chain: []
|
16
|
-
date: 2013-08-
|
16
|
+
date: 2013-08-13 00:00:00.000000000 Z
|
17
17
|
dependencies:
|
18
18
|
- !ruby/object:Gem::Dependency
|
19
19
|
name: capybara
|
@@ -264,6 +264,7 @@ files:
|
|
264
264
|
- spec/sauce/config/load_defaults_spec.rb
|
265
265
|
- spec/sauce/cucumber_spec.rb
|
266
266
|
- spec/sauce/driver_pool_spec.rb
|
267
|
+
- spec/sauce/file_detector_spec.rb
|
267
268
|
- spec/sauce/jasmine_spec.rb
|
268
269
|
- spec/sauce/parallel/test_broker_spec.rb
|
269
270
|
- spec/sauce/selenium_spec.rb
|
@@ -317,6 +318,7 @@ test_files:
|
|
317
318
|
- spec/sauce/config/load_defaults_spec.rb
|
318
319
|
- spec/sauce/cucumber_spec.rb
|
319
320
|
- spec/sauce/driver_pool_spec.rb
|
321
|
+
- spec/sauce/file_detector_spec.rb
|
320
322
|
- spec/sauce/jasmine_spec.rb
|
321
323
|
- spec/sauce/parallel/test_broker_spec.rb
|
322
324
|
- spec/sauce/selenium_spec.rb
|