sauce_rspec 0.0.2 → 1.0.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.
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