sauce_rspec 0.0.2 → 1.0.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 3bb983babbecb7b8c5baf66ee77401099cc8501d
4
- data.tar.gz: 2fd029516c2f91e1d03d520cebf3eafed7e33195
3
+ metadata.gz: 6118697de5f852ffb2ee30ca8283da7ea72cd15e
4
+ data.tar.gz: 890e2ee14a288fbe95e1fc9de22e1c0d12bddd3c
5
5
  SHA512:
6
- metadata.gz: f9b7f1bba283414da1f3f74ae9b0229715b9ce2d06492c49360d805a1bb30ea380854df917133c9c8eeda6fa6e99828067a26f338f94203825070bd81938c52b
7
- data.tar.gz: abb8ff4628badf727080a9fc06d8e5fc90624480445725aa4fbb85dc0dc26900ec714587400a7d303cd4cea90d0f2ac4d7eba5d9673f2d4e4356658c6017a14c
6
+ metadata.gz: 58517296edb033301ddcd1a7ea729b798bc19fa5e82f92431a4aa6b051eef889342469025b89141bd9aaaa7a81add86c522f0cff4b18ad7e0e77efad358a5a37
7
+ data.tar.gz: 6ca53ddbb1bfda50e4a822a5f76cbee74f9b263d17eae68628ee059d3dc50d9ef7f29405e6c5403e6f5a26d599819fa23cecbaa6539a8821c2465a5c85f147e3
data/Thorfile CHANGED
@@ -18,7 +18,7 @@ class ::Default < Thor
18
18
  exec 'bundle exec rspec spec'
19
19
  end
20
20
 
21
- desc 'cop', 'Executes rubocop'
21
+ desc 'cop', 'Execute rubocop'
22
22
  def cop
23
23
  exec 'bundle exec rubocop --display-cop-names'
24
24
  end
@@ -6,9 +6,16 @@ module SauceRSpec
6
6
  class << self
7
7
  attr_reader :driver
8
8
 
9
+ # Fully initialized Selenium Webdriver.
9
10
  def driver= driver
10
11
  fail 'Driver must not be nil' unless driver
11
- @driver = driver
12
+ @driver = driver
13
+
14
+ # Attach session_id to the current RSpec example.
15
+ example = RSpec.current_example
16
+ session_id = driver.session_id
17
+ example.metadata[:session_id] = session_id
18
+ example.metadata[:full_description] += " - https://saucelabs.com/beta/tests/#{session_id}"
12
19
  end
13
20
 
14
21
  def run_after_test_hooks timeout: 60, stdout: $stdout
@@ -16,6 +23,26 @@ module SauceRSpec
16
23
  update_job_status_on_sauce(timeout) if SauceRSpec.config.sauce?
17
24
  end
18
25
 
26
+ # Returns the caps for the current RSpec example with the Sauce Labs
27
+ # job name set.
28
+ def update_example_caps
29
+ example = RSpec.current_example
30
+ caps = example.metadata[:caps]
31
+ description = example.full_description
32
+ browser = caps[:browserName].capitalize
33
+ version = caps[:platformVersion] || caps[:version]
34
+ platform = caps[:platformName] || caps[:platform]
35
+
36
+ # Set Sauce Labs job_name
37
+ browser_version_platform = [browser, version, '-', platform].join ' '
38
+ caps[:name] = [description, '-', browser_version_platform].join ' '
39
+
40
+ # Add browser info to full description for RSpec progress reporter.
41
+ example.metadata[:full_description] += "\n#{' ' * 5 + browser_version_platform}"
42
+
43
+ caps
44
+ end
45
+
19
46
  private
20
47
 
21
48
  attr_reader :update_job
@@ -59,7 +86,7 @@ module SauceRSpec
59
86
 
60
87
  def jenkins stdout
61
88
  session_id = driver.session_id
62
- job_name = RSpec.current_example.description
89
+ job_name = RSpec.current_example.full_description
63
90
  # https://github.com/jenkinsci/sauce-ondemand-plugin/blob/2dbf9cf057d03480d020050a842aa23f595e4a3d/src/main/java/hudson/plugins/sauce_ondemand/SauceOnDemandBuildAction.java#L44
64
91
  stdout.puts "SauceOnDemandSessionID=#{session_id} job-name=#{job_name}"
65
92
  end
@@ -22,7 +22,7 @@ module RSpec
22
22
  ex_with_cap = ex.clone
23
23
  new_id = "#{ex_with_cap.id}_#{index}_#{cap}"
24
24
  ex_with_cap.instance_variable_set(:@id, new_id)
25
- ex_with_cap.instance_eval "def caps; #{cap}; end"
25
+ ex_with_cap.metadata[:caps] = cap
26
26
  new_examples << ex_with_cap
27
27
  end
28
28
  end
@@ -1,4 +1,4 @@
1
1
  module SauceRSpec
2
- VERSION = '0.0.2' unless defined? ::SauceRSpec::VERSION
3
- DATE = '2015-10-07' unless defined? ::SauceRSpec::DATE
2
+ VERSION = '1.0.0' unless defined? ::SauceRSpec::VERSION
3
+ DATE = '2015-10-08' unless defined? ::SauceRSpec::DATE
4
4
  end
@@ -1,3 +1,9 @@
1
+ #### v1.0.0 2015-10-08
2
+
3
+ - [2f88cc8](https://github.com/bootstraponline/sauce_rspec/commit/2f88cc8df603b184074d14454a7e96636c4e1114) Release 1.0.0
4
+ - [e5f9e29](https://github.com/bootstraponline/sauce_rspec/commit/e5f9e297347124b95b96c17c6f1056d7ebb2775d) Add Sauce caps and job link to example full description
5
+
6
+
1
7
  #### v0.0.2 2015-10-07
2
8
 
3
9
  - [d9ed4c5](https://github.com/bootstraponline/sauce_rspec/commit/d9ed4c5401c4a3917b6cc572ae7032056c655bee) Release 0.0.2
@@ -27,10 +27,10 @@ Gem::Specification.new do |spec|
27
27
 
28
28
  spec.add_development_dependency 'webmock', '~> 1.21.0'
29
29
  spec.add_development_dependency 'appium_thor', '~> 1.0.1'
30
- spec.add_development_dependency 'coveralls', '~> 0.8.2'
30
+ spec.add_development_dependency 'coveralls', '~> 0.8.3'
31
31
  spec.add_development_dependency 'pry', '~> 0.10.2'
32
32
  spec.add_development_dependency 'sauce_platforms', '~> 2.0.0'
33
33
  spec.add_development_dependency 'bundler', '~> 1.10.6'
34
34
  spec.add_development_dependency 'rake', '~> 10.4.2'
35
- spec.add_development_dependency 'rubocop', '~> 0.33.0'
35
+ spec.add_development_dependency 'rubocop', '~> 0.34.2'
36
36
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sauce_rspec
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 1.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - code@bootstraponline.com
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-10-07 00:00:00.000000000 Z
11
+ date: 2015-10-08 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rspec
@@ -100,14 +100,14 @@ dependencies:
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 0.8.2
103
+ version: 0.8.3
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 0.8.2
110
+ version: 0.8.3
111
111
  - !ruby/object:Gem::Dependency
112
112
  name: pry
113
113
  requirement: !ruby/object:Gem::Requirement
@@ -170,14 +170,14 @@ dependencies:
170
170
  requirements:
171
171
  - - "~>"
172
172
  - !ruby/object:Gem::Version
173
- version: 0.33.0
173
+ version: 0.34.2
174
174
  type: :development
175
175
  prerelease: false
176
176
  version_requirements: !ruby/object:Gem::Requirement
177
177
  requirements:
178
178
  - - "~>"
179
179
  - !ruby/object:Gem::Version
180
- version: 0.33.0
180
+ version: 0.34.2
181
181
  description: Sauce rspec integration.
182
182
  email:
183
183
  - code@bootstraponline.com