jasmine-selenium-sauce 1.1.1 → 1.2.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/.travis.yml +1 -0
- data/CHANGELOG.md +16 -0
- data/README.md +65 -44
- data/jasmine-selenium-sauce.gemspec +5 -4
- data/lib/jasmine-selenium-sauce.rb +19 -1
- data/lib/jasmine-selenium-sauce/drivers/selenium_browser_driver.rb +0 -2
- data/lib/jasmine-selenium-sauce/drivers/selenium_saucelabs_driver.rb +0 -2
- data/lib/jasmine-selenium-sauce/local_sauce_config.rb +19 -0
- data/lib/jasmine-selenium-sauce/tasks/jasmine_selenium_sauce.rake +16 -0
- data/lib/jasmine-selenium-sauce/tasks/rake_browser_runner.rb +1 -1
- data/lib/jasmine-selenium-sauce/tasks/rake_local_sauce_runner.rb +22 -0
- data/lib/jasmine-selenium-sauce/tasks/rake_sauce_runner.rb +1 -1
- data/lib/jasmine-selenium-sauce/version.rb +1 -1
- data/lib/localtunnel_patch.rb +28 -0
- data/spec/fixtures/config_fixtures.rb +79 -0
- data/spec/fixtures/vcr_cassettes/jasmine_browser_success.yml +8 -8
- data/spec/fixtures/vcr_cassettes/jasmine_local_saucelabs_failures.yml +352 -0
- data/spec/fixtures/vcr_cassettes/jasmine_local_saucelabs_success.yml +340 -0
- data/spec/fixtures/vcr_cassettes/jasmine_saucelabs_failures.yml +55 -52
- data/spec/fixtures/vcr_cassettes/jasmine_saucelabs_success.yml +43 -41
- data/spec/jasmine-selenium-sauce/browser_config_spec.rb +41 -0
- data/spec/jasmine-selenium-sauce/drivers/selenium_browser_driver_spec.rb +1 -0
- data/spec/jasmine-selenium-sauce/local_sauce_config_spec.rb +61 -0
- data/spec/jasmine-selenium-sauce/sauce_config_spec.rb +3 -70
- data/spec/jasmine-selenium-sauce/selenium_runner_spec.rb +3 -3
- data/spec/jasmine-selenium-sauce_spec.rb +67 -36
- data/spec/support/reporter_fake.rb +2 -2
- data/spec/vcr_helper.rb +8 -1
- metadata +50 -70
- data/lib/jasmine-selenium-sauce/drivers.rb +0 -4
@@ -0,0 +1,41 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'config_fixtures'
|
3
|
+
require 'browser_config'
|
4
|
+
|
5
|
+
describe Jasmine::Sauce::CI::BrowserConfig do
|
6
|
+
|
7
|
+
after do
|
8
|
+
ENV.delete('JASMINE_URL')
|
9
|
+
ENV.delete('LOCAL_BROWSER')
|
10
|
+
end
|
11
|
+
|
12
|
+
describe "#validate" do
|
13
|
+
subject { Jasmine::Sauce::CI::BrowserConfig.new.validate }
|
14
|
+
|
15
|
+
context "when valid" do
|
16
|
+
before do
|
17
|
+
ENV['JASMINE_URL'] = 'jasmine'
|
18
|
+
ENV['LOCAL_BROWSER'] = 'browser'
|
19
|
+
end
|
20
|
+
specify { expect { subject }.not_to raise_error }
|
21
|
+
end
|
22
|
+
|
23
|
+
context "when jasmine url is not set" do
|
24
|
+
before do
|
25
|
+
ENV['LOCAL_BROWSER'] = 'browser'
|
26
|
+
end
|
27
|
+
specify { expect { subject }.to raise_error(ArgumentError) }
|
28
|
+
end
|
29
|
+
|
30
|
+
context "when browser is not set" do
|
31
|
+
before do
|
32
|
+
ENV['JASMINE_URL'] = 'jasmine'
|
33
|
+
end
|
34
|
+
specify { expect { subject }.to raise_error(ArgumentError) }
|
35
|
+
end
|
36
|
+
end
|
37
|
+
|
38
|
+
include_context "jasmine server url" do
|
39
|
+
subject { Jasmine::Sauce::CI::BrowserConfig.new }
|
40
|
+
end
|
41
|
+
end
|
@@ -0,0 +1,61 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'config_fixtures'
|
3
|
+
require 'sauce_config'
|
4
|
+
require 'local_sauce_config'
|
5
|
+
|
6
|
+
describe Jasmine::Sauce::CI::LocalSauceConfig do
|
7
|
+
|
8
|
+
after do
|
9
|
+
ENV.delete('SAUCELABS_URL')
|
10
|
+
ENV.delete('JASMINE_PORT')
|
11
|
+
ENV.delete('SAUCE_BROWSER')
|
12
|
+
end
|
13
|
+
|
14
|
+
describe "#validate" do
|
15
|
+
subject { Jasmine::Sauce::CI::LocalSauceConfig.new.validate }
|
16
|
+
|
17
|
+
context "when valid" do
|
18
|
+
before do
|
19
|
+
ENV['SAUCELABS_URL'] = 'sauce'
|
20
|
+
ENV['JASMINE_PORT'] = 'port'
|
21
|
+
ENV['SAUCE_BROWSER'] = 'browser'
|
22
|
+
end
|
23
|
+
specify { expect { subject }.not_to raise_error }
|
24
|
+
end
|
25
|
+
|
26
|
+
context "when saucelabs url is not set" do
|
27
|
+
before do
|
28
|
+
ENV['JASMINE_PORT'] = 'port'
|
29
|
+
ENV['SAUCE_BROWSER'] = 'browser'
|
30
|
+
end
|
31
|
+
specify { expect { subject }.to raise_error(ArgumentError) }
|
32
|
+
end
|
33
|
+
|
34
|
+
context "when jasmine url is not set" do
|
35
|
+
before do
|
36
|
+
ENV['SAUCELABS_URL'] = 'sauce'
|
37
|
+
ENV['SAUCE_BROWSER'] = 'browser'
|
38
|
+
end
|
39
|
+
specify { expect { subject }.to raise_error(ArgumentError) }
|
40
|
+
end
|
41
|
+
|
42
|
+
context "when browser is not set" do
|
43
|
+
before do
|
44
|
+
ENV['SAUCELABS_URL'] = 'sauce'
|
45
|
+
ENV['JASMINE_PORT'] = 'port'
|
46
|
+
end
|
47
|
+
specify { expect { subject }.to raise_error(ArgumentError) }
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
describe "#jasmine_server_port" do
|
52
|
+
let(:port) { "9843" }
|
53
|
+
before { ENV['JASMINE_PORT'] = port }
|
54
|
+
after { ENV.delete('JASMINE_PORT') }
|
55
|
+
its(:jasmine_server_port) { should eq(port)}
|
56
|
+
end
|
57
|
+
|
58
|
+
it_behaves_like 'sauce config' do
|
59
|
+
let(:under_test) { Jasmine::Sauce::CI::LocalSauceConfig.new }
|
60
|
+
end
|
61
|
+
end
|
@@ -1,4 +1,5 @@
|
|
1
1
|
require 'spec_helper'
|
2
|
+
require 'config_fixtures'
|
2
3
|
require 'sauce_config'
|
3
4
|
|
4
5
|
describe Jasmine::Sauce::CI::SauceConfig do
|
@@ -45,76 +46,8 @@ describe Jasmine::Sauce::CI::SauceConfig do
|
|
45
46
|
specify { expect { subject }.to raise_error(ArgumentError) }
|
46
47
|
end
|
47
48
|
end
|
48
|
-
|
49
|
-
shared_examples_for "overridable configuration setting" do |env_setting, default|
|
50
|
-
context "when not specified" do
|
51
|
-
it { should eq(default) }
|
52
|
-
end
|
53
|
-
|
54
|
-
context "when specified" do
|
55
|
-
let(:value) { "random value" }
|
56
|
-
before { ENV[env_setting] = value }
|
57
|
-
after { ENV.delete(env_setting) }
|
58
|
-
it { should eq(value) }
|
59
|
-
end
|
60
|
-
end
|
61
|
-
|
62
|
-
describe "#saucelabs_server_url" do
|
63
|
-
let(:url) { "http://user:password@ondemand.saucelabs.com:80/wd/hub" }
|
64
|
-
before { ENV['SAUCELABS_URL'] = url }
|
65
|
-
after { ENV.delete('SAUCELABS_URL') }
|
66
|
-
its(:saucelabs_server_url) { should eq(url)}
|
67
|
-
end
|
68
|
-
|
69
|
-
describe "#jasmine_server_url" do
|
70
|
-
let(:url) { "http://my.host.com/jasmine" }
|
71
|
-
before { ENV['JASMINE_URL'] = url }
|
72
|
-
after { ENV.delete('JASMINE_URL') }
|
73
|
-
its(:jasmine_server_url) { should eq(url)}
|
74
|
-
end
|
75
|
-
|
76
|
-
describe "#sauce_browser" do
|
77
|
-
let(:browser) { "Chrome" }
|
78
|
-
before { ENV['SAUCE_BROWSER'] = browser }
|
79
|
-
after { ENV.delete('SAUCE_BROWSER') }
|
80
|
-
its(:browser) { should eq(browser)}
|
81
|
-
end
|
82
|
-
|
83
|
-
describe "#sauce_platform" do
|
84
|
-
context "when not specified" do
|
85
|
-
its(:platform) { should eq(:VISTA) }
|
86
|
-
end
|
87
|
-
|
88
|
-
context "when specified" do
|
89
|
-
let(:platform) { "WIN_7" }
|
90
|
-
before { ENV['SAUCE_PLATFORM'] = platform }
|
91
|
-
after { ENV.delete('SAUCE_PLATFORM') }
|
92
|
-
its(:platform) { should eq(platform.to_sym) }
|
93
|
-
end
|
94
|
-
end
|
95
|
-
|
96
|
-
describe "#browser_version" do
|
97
|
-
subject { Jasmine::Sauce::CI::SauceConfig.new.browser_version }
|
98
|
-
it_behaves_like "overridable configuration setting", 'SAUCE_BROWSER_VERSION', nil
|
99
|
-
end
|
100
|
-
|
101
|
-
describe "#record_screenshots" do
|
102
|
-
subject { Jasmine::Sauce::CI::SauceConfig.new.record_screenshots }
|
103
|
-
it_behaves_like "overridable configuration setting", 'SAUCE_SCREENSHOTS', false
|
104
|
-
end
|
105
|
-
|
106
|
-
describe "#record_video" do
|
107
|
-
subject { Jasmine::Sauce::CI::SauceConfig.new.record_video }
|
108
|
-
it_behaves_like "overridable configuration setting", 'SAUCE_VIDEO', false
|
109
|
-
end
|
110
|
-
|
111
|
-
describe "#idle_timeout" do
|
112
|
-
subject { Jasmine::Sauce::CI::SauceConfig.new.idle_timeout }
|
113
|
-
it_behaves_like "overridable configuration setting", 'SAUCE_IDLE_TIMEOUT', 90
|
114
|
-
end
|
115
49
|
|
116
|
-
|
117
|
-
|
118
|
-
it_behaves_like "overridable configuration setting", 'SAUCE_MAX_DURATION', 180
|
50
|
+
it_behaves_like 'sauce config' do
|
51
|
+
let(:under_test) { Jasmine::Sauce::CI::SauceConfig.new }
|
119
52
|
end
|
120
53
|
end
|
@@ -83,9 +83,9 @@ describe Jasmine::Sauce::CI::SeleniumRunner do
|
|
83
83
|
|
84
84
|
before {
|
85
85
|
driver.should_receive(:evaluate_js).and_return(load_result, suites, jasmine_finished_result,
|
86
|
-
suite_results.
|
87
|
-
suite_results.
|
88
|
-
suite_results.
|
86
|
+
suite_results.reject {|k,_| k != '0'},
|
87
|
+
suite_results.reject {|k,_| k != '1'},
|
88
|
+
suite_results.reject {|k,_| k != '2'})
|
89
89
|
}
|
90
90
|
end
|
91
91
|
end
|
@@ -1,5 +1,5 @@
|
|
1
|
-
|
2
|
-
|
1
|
+
require 'spec_helper'
|
2
|
+
require 'vcr_helper'
|
3
3
|
require 'jasmine-selenium-sauce'
|
4
4
|
require 'browser_config'
|
5
5
|
require 'sauce_config'
|
@@ -14,17 +14,18 @@ describe Jasmine::Sauce::CI::Main do
|
|
14
14
|
let(:config) { Jasmine::Sauce::CI::BrowserConfig.new }
|
15
15
|
let(:reporter) { ReporterFake.new }
|
16
16
|
subject { Jasmine::Sauce::CI::Main.run_via_browser(config, reporter) }
|
17
|
+
|
18
|
+
before do
|
19
|
+
ENV['JASMINE_URL'] = 'http://localhost:3000/jasmine'
|
20
|
+
ENV['LOCAL_BROWSER'] = 'firefox'
|
21
|
+
end
|
17
22
|
after do
|
18
23
|
ENV.delete('JASMINE_URL')
|
19
24
|
ENV.delete('LOCAL_BROWSER')
|
20
25
|
end
|
21
26
|
|
22
27
|
context "when there are no failures" do
|
23
|
-
use_vcr_cassette 'jasmine_browser_success',
|
24
|
-
before do
|
25
|
-
ENV['JASMINE_URL'] = 'http://localhost:3000/jasmine'
|
26
|
-
ENV['LOCAL_BROWSER'] = 'firefox'
|
27
|
-
end
|
28
|
+
use_vcr_cassette 'jasmine_browser_success', :match_requests_on => [:host, :path], :record => :none
|
28
29
|
|
29
30
|
describe "passing tests" do
|
30
31
|
xit { subject[:passed].should eq([0,1,2,3,4]) }
|
@@ -35,11 +36,7 @@ describe Jasmine::Sauce::CI::Main do
|
|
35
36
|
end
|
36
37
|
|
37
38
|
context "when there are failures" do
|
38
|
-
use_vcr_cassette 'jasmine_browser_failures',
|
39
|
-
before do
|
40
|
-
ENV['JASMINE_URL'] = 'http://localhost:3000/jasmine'
|
41
|
-
ENV['LOCAL_BROWSER'] = 'firefox'
|
42
|
-
end
|
39
|
+
use_vcr_cassette 'jasmine_browser_failures', :match_requests_on => [:host, :path], :record => :none
|
43
40
|
|
44
41
|
describe "passing tests" do
|
45
42
|
xit { subject[:passed].should eq([0,2,3,4]) }
|
@@ -51,12 +48,35 @@ describe Jasmine::Sauce::CI::Main do
|
|
51
48
|
|
52
49
|
end
|
53
50
|
|
51
|
+
shared_examples_for 'when all tests pass' do
|
52
|
+
describe "passing tests" do
|
53
|
+
it { subject[:passed].should eq([0,1,2,3,4]) }
|
54
|
+
end
|
55
|
+
describe "failing tests" do
|
56
|
+
it { subject[:failed].should be_empty }
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
shared_examples_for 'when some tests fail' do
|
61
|
+
describe "passing tests" do
|
62
|
+
it { subject[:passed].should eq([0,2,3,4]) }
|
63
|
+
end
|
64
|
+
describe "failing tests" do
|
65
|
+
it { subject[:failed].should eq([1]) }
|
66
|
+
end
|
67
|
+
end
|
68
|
+
|
54
69
|
describe "#run_via_saucelabs" do
|
55
70
|
|
56
71
|
let(:config) { Jasmine::Sauce::CI::SauceConfig.new }
|
57
72
|
let(:reporter) { ReporterFake.new }
|
58
73
|
subject { Jasmine::Sauce::CI::Main.run_via_saucelabs(config, reporter) }
|
59
74
|
|
75
|
+
before do
|
76
|
+
ENV['SAUCELABS_URL'] = 'http://username:password@ondemand.saucelabs.com:80/wd/hub'
|
77
|
+
ENV['JASMINE_URL'] = 'http://jasmine.server.com/jasmine'
|
78
|
+
ENV['SAUCE_BROWSER'] = 'chrome'
|
79
|
+
end
|
60
80
|
after do
|
61
81
|
ENV.delete('SAUCELABS_URL')
|
62
82
|
ENV.delete('JASMINE_URL')
|
@@ -64,36 +84,47 @@ describe Jasmine::Sauce::CI::Main do
|
|
64
84
|
end
|
65
85
|
|
66
86
|
context "when there are no failures" do
|
67
|
-
use_vcr_cassette 'jasmine_saucelabs_success', record
|
87
|
+
use_vcr_cassette 'jasmine_saucelabs_success', :record => :none
|
88
|
+
it_behaves_like 'when all tests pass'
|
89
|
+
end
|
68
90
|
|
69
|
-
|
70
|
-
|
71
|
-
|
72
|
-
|
73
|
-
end
|
91
|
+
context "when there are failures" do
|
92
|
+
use_vcr_cassette 'jasmine_saucelabs_failures', :record => :none
|
93
|
+
it_behaves_like 'when some tests fail'
|
94
|
+
end
|
74
95
|
|
75
|
-
|
76
|
-
|
77
|
-
|
78
|
-
|
79
|
-
|
96
|
+
end
|
97
|
+
|
98
|
+
describe "#run_local_via_saucelabs" do
|
99
|
+
|
100
|
+
let(:config) { Jasmine::Sauce::CI::LocalSauceConfig.new }
|
101
|
+
let(:reporter) { ReporterFake.new }
|
102
|
+
let(:ssh_gateway) { double("Net::SSH::Gateway") }
|
103
|
+
subject { Jasmine::Sauce::CI::Main.run_local_via_saucelabs(config, reporter) }
|
104
|
+
|
105
|
+
before do
|
106
|
+
ENV['SAUCELABS_URL'] = 'http://username:password@ondemand.saucelabs.com:80/wd/hub'
|
107
|
+
ENV['JASMINE_PORT'] = '3000'
|
108
|
+
ENV['SAUCE_BROWSER'] = 'chrome'
|
109
|
+
Net::SSH::Gateway.should_receive(:new).with("3pts.localtunnel.com","localtunnel").and_return(ssh_gateway)
|
110
|
+
ssh_gateway.stub(:open_remote) do |_,_,_,&blk|
|
111
|
+
blk.call
|
80
112
|
end
|
81
113
|
end
|
114
|
+
after do
|
115
|
+
ENV.delete('SAUCELABS_URL')
|
116
|
+
ENV.delete('JASMINE_PORT')
|
117
|
+
ENV.delete('SAUCE_BROWSER')
|
118
|
+
end
|
82
119
|
|
83
|
-
context "when there are failures" do
|
84
|
-
use_vcr_cassette '
|
85
|
-
|
86
|
-
|
87
|
-
ENV['JASMINE_URL'] = 'http://jasmine.server.com/jasmine'
|
88
|
-
ENV['SAUCE_BROWSER'] = 'chrome'
|
89
|
-
end
|
120
|
+
context "when there are no failures" do
|
121
|
+
use_vcr_cassette 'jasmine_local_saucelabs_success', :record => :none
|
122
|
+
it_behaves_like 'when all tests pass'
|
123
|
+
end
|
90
124
|
|
91
|
-
|
92
|
-
|
93
|
-
|
94
|
-
describe "failing tests" do
|
95
|
-
it { subject[:failed].should eq([1]) }
|
96
|
-
end
|
125
|
+
context "when there are failures" do
|
126
|
+
use_vcr_cassette 'jasmine_local_saucelabs_failures', :record => :none
|
127
|
+
it_behaves_like 'when some tests fail'
|
97
128
|
end
|
98
129
|
|
99
130
|
end
|
@@ -2,7 +2,7 @@
|
|
2
2
|
class ReporterFake
|
3
3
|
|
4
4
|
def report(jasmine_results)
|
5
|
-
results = { passed
|
5
|
+
results = { :passed => [], :failed => []}
|
6
6
|
jasmine_results.suites.each do |suite|
|
7
7
|
child_results = process_children(suite["children"], jasmine_results)
|
8
8
|
results[:passed].concat(child_results[:passed]) if child_results[:passed]
|
@@ -12,7 +12,7 @@ class ReporterFake
|
|
12
12
|
end
|
13
13
|
|
14
14
|
def process_children(children, jasmine_results)
|
15
|
-
results = { passed
|
15
|
+
results = { :passed => [], :failed => []}
|
16
16
|
children.each do |node|
|
17
17
|
type = node["type"]
|
18
18
|
if type == "suite"
|
data/spec/vcr_helper.rb
CHANGED
@@ -1,9 +1,16 @@
|
|
1
1
|
require 'vcr'
|
2
2
|
|
3
|
+
# Parameters in 1.8.7 are not ordered like in 1.9, so we first
|
4
|
+
# check if the body's are the same and then fallback to comparing
|
5
|
+
# as JSON structures
|
6
|
+
json_body_matcher = lambda do |request_1, request_2|
|
7
|
+
request_1.body == request_2.body || JSON.parse(request_1.body) == JSON.parse(request_2.body)
|
8
|
+
end
|
9
|
+
|
3
10
|
VCR.configure do |config|
|
4
11
|
config.cassette_library_dir = 'spec/fixtures/vcr_cassettes'
|
5
12
|
config.hook_into :fakeweb
|
6
|
-
config.default_cassette_options = {match_requests_on
|
13
|
+
config.default_cassette_options = {:match_requests_on => [:method, :uri, json_body_matcher], :record => :none}
|
7
14
|
end
|
8
15
|
|
9
16
|
RSpec.configure do |config|
|
metadata
CHANGED
@@ -1,19 +1,19 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: jasmine-selenium-sauce
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.2.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
8
|
-
- Daren
|
8
|
+
- Daren Desjardins
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-
|
12
|
+
date: 2012-10-01 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: fakeweb
|
16
|
-
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirement: &70134878450920 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,15 +21,10 @@ dependencies:
|
|
21
21
|
version: '0'
|
22
22
|
type: :development
|
23
23
|
prerelease: false
|
24
|
-
version_requirements:
|
25
|
-
none: false
|
26
|
-
requirements:
|
27
|
-
- - ! '>='
|
28
|
-
- !ruby/object:Gem::Version
|
29
|
-
version: '0'
|
24
|
+
version_requirements: *70134878450920
|
30
25
|
- !ruby/object:Gem::Dependency
|
31
26
|
name: guard
|
32
|
-
requirement: !ruby/object:Gem::Requirement
|
27
|
+
requirement: &70134878450500 !ruby/object:Gem::Requirement
|
33
28
|
none: false
|
34
29
|
requirements:
|
35
30
|
- - ! '>='
|
@@ -37,15 +32,10 @@ dependencies:
|
|
37
32
|
version: '0'
|
38
33
|
type: :development
|
39
34
|
prerelease: false
|
40
|
-
version_requirements:
|
41
|
-
none: false
|
42
|
-
requirements:
|
43
|
-
- - ! '>='
|
44
|
-
- !ruby/object:Gem::Version
|
45
|
-
version: '0'
|
35
|
+
version_requirements: *70134878450500
|
46
36
|
- !ruby/object:Gem::Dependency
|
47
37
|
name: guard-rspec
|
48
|
-
requirement: !ruby/object:Gem::Requirement
|
38
|
+
requirement: &70134878450080 !ruby/object:Gem::Requirement
|
49
39
|
none: false
|
50
40
|
requirements:
|
51
41
|
- - ! '>='
|
@@ -53,15 +43,10 @@ dependencies:
|
|
53
43
|
version: '0'
|
54
44
|
type: :development
|
55
45
|
prerelease: false
|
56
|
-
version_requirements:
|
57
|
-
none: false
|
58
|
-
requirements:
|
59
|
-
- - ! '>='
|
60
|
-
- !ruby/object:Gem::Version
|
61
|
-
version: '0'
|
46
|
+
version_requirements: *70134878450080
|
62
47
|
- !ruby/object:Gem::Dependency
|
63
48
|
name: json_pure
|
64
|
-
requirement: !ruby/object:Gem::Requirement
|
49
|
+
requirement: &70134878449660 !ruby/object:Gem::Requirement
|
65
50
|
none: false
|
66
51
|
requirements:
|
67
52
|
- - ! '>='
|
@@ -69,15 +54,10 @@ dependencies:
|
|
69
54
|
version: '0'
|
70
55
|
type: :development
|
71
56
|
prerelease: false
|
72
|
-
version_requirements:
|
73
|
-
none: false
|
74
|
-
requirements:
|
75
|
-
- - ! '>='
|
76
|
-
- !ruby/object:Gem::Version
|
77
|
-
version: '0'
|
57
|
+
version_requirements: *70134878449660
|
78
58
|
- !ruby/object:Gem::Dependency
|
79
59
|
name: rake
|
80
|
-
requirement: !ruby/object:Gem::Requirement
|
60
|
+
requirement: &70134878449240 !ruby/object:Gem::Requirement
|
81
61
|
none: false
|
82
62
|
requirements:
|
83
63
|
- - ! '>='
|
@@ -85,15 +65,10 @@ dependencies:
|
|
85
65
|
version: '0'
|
86
66
|
type: :development
|
87
67
|
prerelease: false
|
88
|
-
version_requirements:
|
89
|
-
none: false
|
90
|
-
requirements:
|
91
|
-
- - ! '>='
|
92
|
-
- !ruby/object:Gem::Version
|
93
|
-
version: '0'
|
68
|
+
version_requirements: *70134878449240
|
94
69
|
- !ruby/object:Gem::Dependency
|
95
70
|
name: rb-fsevent
|
96
|
-
requirement: !ruby/object:Gem::Requirement
|
71
|
+
requirement: &70134878448820 !ruby/object:Gem::Requirement
|
97
72
|
none: false
|
98
73
|
requirements:
|
99
74
|
- - ! '>='
|
@@ -101,15 +76,10 @@ dependencies:
|
|
101
76
|
version: '0'
|
102
77
|
type: :development
|
103
78
|
prerelease: false
|
104
|
-
version_requirements:
|
105
|
-
none: false
|
106
|
-
requirements:
|
107
|
-
- - ! '>='
|
108
|
-
- !ruby/object:Gem::Version
|
109
|
-
version: '0'
|
79
|
+
version_requirements: *70134878448820
|
110
80
|
- !ruby/object:Gem::Dependency
|
111
81
|
name: vcr
|
112
|
-
requirement: !ruby/object:Gem::Requirement
|
82
|
+
requirement: &70134878448400 !ruby/object:Gem::Requirement
|
113
83
|
none: false
|
114
84
|
requirements:
|
115
85
|
- - ! '>='
|
@@ -117,15 +87,21 @@ dependencies:
|
|
117
87
|
version: '0'
|
118
88
|
type: :development
|
119
89
|
prerelease: false
|
120
|
-
version_requirements:
|
90
|
+
version_requirements: *70134878448400
|
91
|
+
- !ruby/object:Gem::Dependency
|
92
|
+
name: localtunnel
|
93
|
+
requirement: &70134878447900 !ruby/object:Gem::Requirement
|
121
94
|
none: false
|
122
95
|
requirements:
|
123
|
-
- -
|
96
|
+
- - ~>
|
124
97
|
- !ruby/object:Gem::Version
|
125
|
-
version: '0'
|
98
|
+
version: '0.3'
|
99
|
+
type: :runtime
|
100
|
+
prerelease: false
|
101
|
+
version_requirements: *70134878447900
|
126
102
|
- !ruby/object:Gem::Dependency
|
127
103
|
name: rspec
|
128
|
-
requirement: !ruby/object:Gem::Requirement
|
104
|
+
requirement: &70134878447400 !ruby/object:Gem::Requirement
|
129
105
|
none: false
|
130
106
|
requirements:
|
131
107
|
- - ! '>='
|
@@ -133,29 +109,19 @@ dependencies:
|
|
133
109
|
version: '2.0'
|
134
110
|
type: :runtime
|
135
111
|
prerelease: false
|
136
|
-
version_requirements:
|
137
|
-
none: false
|
138
|
-
requirements:
|
139
|
-
- - ! '>='
|
140
|
-
- !ruby/object:Gem::Version
|
141
|
-
version: '2.0'
|
112
|
+
version_requirements: *70134878447400
|
142
113
|
- !ruby/object:Gem::Dependency
|
143
114
|
name: selenium-webdriver
|
144
|
-
requirement: !ruby/object:Gem::Requirement
|
115
|
+
requirement: &70134878446940 !ruby/object:Gem::Requirement
|
145
116
|
none: false
|
146
117
|
requirements:
|
147
|
-
- - ! '
|
118
|
+
- - ! '>'
|
148
119
|
- !ruby/object:Gem::Version
|
149
|
-
version:
|
120
|
+
version: 2.0.0
|
150
121
|
type: :runtime
|
151
122
|
prerelease: false
|
152
|
-
version_requirements:
|
153
|
-
|
154
|
-
requirements:
|
155
|
-
- - ! '>='
|
156
|
-
- !ruby/object:Gem::Version
|
157
|
-
version: '0'
|
158
|
-
description: Rake tasks for running your Jasmine suite via a local browse or through
|
123
|
+
version_requirements: *70134878446940
|
124
|
+
description: Rake tasks for running your Jasmine suite via a local browser or through
|
159
125
|
SauceLabs
|
160
126
|
email:
|
161
127
|
- darend@gmail.com
|
@@ -166,6 +132,7 @@ files:
|
|
166
132
|
- .gitignore
|
167
133
|
- .rspec
|
168
134
|
- .travis.yml
|
135
|
+
- CHANGELOG.md
|
169
136
|
- Gemfile
|
170
137
|
- Guardfile
|
171
138
|
- LICENSE
|
@@ -174,27 +141,34 @@ files:
|
|
174
141
|
- jasmine-selenium-sauce.gemspec
|
175
142
|
- lib/jasmine-selenium-sauce.rb
|
176
143
|
- lib/jasmine-selenium-sauce/browser_config.rb
|
177
|
-
- lib/jasmine-selenium-sauce/drivers.rb
|
178
144
|
- lib/jasmine-selenium-sauce/drivers/selenium_browser_driver.rb
|
179
145
|
- lib/jasmine-selenium-sauce/drivers/selenium_driver.rb
|
180
146
|
- lib/jasmine-selenium-sauce/drivers/selenium_saucelabs_driver.rb
|
181
147
|
- lib/jasmine-selenium-sauce/jasmine_results.rb
|
148
|
+
- lib/jasmine-selenium-sauce/local_sauce_config.rb
|
182
149
|
- lib/jasmine-selenium-sauce/rspec_reporter.rb
|
183
150
|
- lib/jasmine-selenium-sauce/sauce_config.rb
|
184
151
|
- lib/jasmine-selenium-sauce/selenium_runner.rb
|
185
152
|
- lib/jasmine-selenium-sauce/tasks/jasmine_selenium_sauce.rake
|
186
153
|
- lib/jasmine-selenium-sauce/tasks/railtie.rb
|
187
154
|
- lib/jasmine-selenium-sauce/tasks/rake_browser_runner.rb
|
155
|
+
- lib/jasmine-selenium-sauce/tasks/rake_local_sauce_runner.rb
|
188
156
|
- lib/jasmine-selenium-sauce/tasks/rake_sauce_runner.rb
|
189
157
|
- lib/jasmine-selenium-sauce/version.rb
|
158
|
+
- lib/localtunnel_patch.rb
|
159
|
+
- spec/fixtures/config_fixtures.rb
|
190
160
|
- spec/fixtures/selenium_driver_fixtures.rb
|
191
161
|
- spec/fixtures/vcr_cassettes/jasmine_browser_failures.yml
|
192
162
|
- spec/fixtures/vcr_cassettes/jasmine_browser_success.yml
|
163
|
+
- spec/fixtures/vcr_cassettes/jasmine_local_saucelabs_failures.yml
|
164
|
+
- spec/fixtures/vcr_cassettes/jasmine_local_saucelabs_success.yml
|
193
165
|
- spec/fixtures/vcr_cassettes/jasmine_saucelabs_failures.yml
|
194
166
|
- spec/fixtures/vcr_cassettes/jasmine_saucelabs_success.yml
|
167
|
+
- spec/jasmine-selenium-sauce/browser_config_spec.rb
|
195
168
|
- spec/jasmine-selenium-sauce/drivers/selenium_browser_driver_spec.rb
|
196
169
|
- spec/jasmine-selenium-sauce/drivers/selenium_saucelabs_driver_spec.rb
|
197
170
|
- spec/jasmine-selenium-sauce/jasmine_results_spec.rb
|
171
|
+
- spec/jasmine-selenium-sauce/local_sauce_config_spec.rb
|
198
172
|
- spec/jasmine-selenium-sauce/sauce_config_spec.rb
|
199
173
|
- spec/jasmine-selenium-sauce/selenium_runner_spec.rb
|
200
174
|
- spec/jasmine-selenium-sauce_spec.rb
|
@@ -222,20 +196,25 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
222
196
|
version: '0'
|
223
197
|
requirements: []
|
224
198
|
rubyforge_project:
|
225
|
-
rubygems_version: 1.8.
|
199
|
+
rubygems_version: 1.8.15
|
226
200
|
signing_key:
|
227
201
|
specification_version: 3
|
228
|
-
summary: Rake tasks for running your Jasmine suite via a local
|
229
|
-
Can be used in your CI builds to enable running Jasmine suites
|
202
|
+
summary: Rake tasks for running your Jasmine suite via a local browser or through
|
203
|
+
SauceLabs. Can be used in your CI builds to enable running Jasmine suites
|
230
204
|
test_files:
|
205
|
+
- spec/fixtures/config_fixtures.rb
|
231
206
|
- spec/fixtures/selenium_driver_fixtures.rb
|
232
207
|
- spec/fixtures/vcr_cassettes/jasmine_browser_failures.yml
|
233
208
|
- spec/fixtures/vcr_cassettes/jasmine_browser_success.yml
|
209
|
+
- spec/fixtures/vcr_cassettes/jasmine_local_saucelabs_failures.yml
|
210
|
+
- spec/fixtures/vcr_cassettes/jasmine_local_saucelabs_success.yml
|
234
211
|
- spec/fixtures/vcr_cassettes/jasmine_saucelabs_failures.yml
|
235
212
|
- spec/fixtures/vcr_cassettes/jasmine_saucelabs_success.yml
|
213
|
+
- spec/jasmine-selenium-sauce/browser_config_spec.rb
|
236
214
|
- spec/jasmine-selenium-sauce/drivers/selenium_browser_driver_spec.rb
|
237
215
|
- spec/jasmine-selenium-sauce/drivers/selenium_saucelabs_driver_spec.rb
|
238
216
|
- spec/jasmine-selenium-sauce/jasmine_results_spec.rb
|
217
|
+
- spec/jasmine-selenium-sauce/local_sauce_config_spec.rb
|
239
218
|
- spec/jasmine-selenium-sauce/sauce_config_spec.rb
|
240
219
|
- spec/jasmine-selenium-sauce/selenium_runner_spec.rb
|
241
220
|
- spec/jasmine-selenium-sauce_spec.rb
|
@@ -243,3 +222,4 @@ test_files:
|
|
243
222
|
- spec/support/reporter_fake.rb
|
244
223
|
- spec/support/sample_results.rb
|
245
224
|
- spec/vcr_helper.rb
|
225
|
+
has_rdoc:
|