mini_autobot 0.2.0 → 0.2.1

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: 85fd0829c123f45ea778120fc90ee5e2c04a627b
4
- data.tar.gz: 69a62bdef541daa9348ab6d8f3876f05d444836f
3
+ metadata.gz: a864370a8af44edb3db1b2e2d6b77cc4e282c107
4
+ data.tar.gz: cbe9a19f41b3a4cad20ae5d35120d5975899c634
5
5
  SHA512:
6
- metadata.gz: 3713ac9f4aafd4f19b2bb41c63446cf3cb397d77aa5dc0a96c6f31338e686e5c8c3c5cd67bc2f40af7ce8d1629f7591c8f341c5163a152a626054134271851c1
7
- data.tar.gz: 9130a15054e3edf435825f08060647d9c6f5e4ff9addc20333a8890792854fd7112e15631cd3a864caf6b3c869dfb6f7064763ef43d139c89b09f67920e50238
6
+ metadata.gz: f74a6acb6a6fc44f5fe1b46ff8b7e9f5c7d04f5cdaf35a1c474d744e9db8b4ff9bf9a09d47991b066300a1934b88520ad6ec73f4873fe443db115cffe4991ca2
7
+ data.tar.gz: 7f7fa03ba582576b16aa5b01228285e804b302b64613f9ea143af1134e74fe1fb54cbe76db2ed1c13cb98aa9951fe6cabecabb1844dd4ef2920e9707abf4d0c9
@@ -58,9 +58,9 @@ module MiniAutobot
58
58
  # @return [void]
59
59
  def teardown
60
60
  if !passed? && !skipped? && !@driver.nil?
61
- save_to_ever_failed if MiniAutobot.settings.rerun_failure
62
- take_screenshot
61
+ json_save_to_ever_failed if MiniAutobot.settings.rerun_failure
63
62
  print_sauce_link if connector_is_saucelabs?
63
+ take_screenshot
64
64
  end
65
65
  begin
66
66
  update_sauce_session if connector_is_saucelabs? && !@driver.nil?
@@ -73,6 +73,7 @@ module MiniAutobot
73
73
  super
74
74
  end
75
75
 
76
+ # Take screenshot and save as png with test name as file name
76
77
  def take_screenshot
77
78
  @driver.save_screenshot("logs/#{name}.png")
78
79
  end
@@ -88,6 +89,30 @@ module MiniAutobot
88
89
  end
89
90
  end
90
91
 
92
+ # Create new/override same file ever_failed_tests.json with fail count
93
+ def json_save_to_ever_failed
94
+ ever_failed_tests = 'logs/tap_results/ever_failed_tests.json'
95
+ data_hash = {}
96
+ if File.file?(ever_failed_tests) && !File.zero?(ever_failed_tests)
97
+ data_hash = JSON.parse(File.read(ever_failed_tests))
98
+ end
99
+
100
+ if data_hash[name]
101
+ data_hash[name]["fail_count"] += 1
102
+ else
103
+ data_hash[name] = { "fail_count" => 1 }
104
+ end
105
+ begin
106
+ data_hash[name]["last_fail_on_sauce"] = "saucelabs.com/tests/#{@driver.session_id}"
107
+ rescue
108
+ self.logger.debug "Failed setting last_fail_on_sauce, driver may not be available"
109
+ end
110
+
111
+ File.open(ever_failed_tests, 'w+') do |file|
112
+ file.write JSON.pretty_generate(data_hash)
113
+ end
114
+ end
115
+
91
116
  # Print out a link of a saucelabs's job when a test is not passed
92
117
  # Rescue to skip this step for tests like cube tracking
93
118
  def print_sauce_link
@@ -124,8 +149,7 @@ module MiniAutobot
124
149
  end
125
150
 
126
151
  def connector_is_saucelabs?
127
- return true if MiniAutobot.settings.connector.include?('saucelabs')
128
- return false
152
+ MiniAutobot.settings.connector.include? 'saucelabs'
129
153
  end
130
154
 
131
155
  # Generic page object helper method to clear and send keys to a web element found by driver
@@ -153,7 +177,7 @@ module MiniAutobot
153
177
  keys_array.each do |key|
154
178
  value = value[key]
155
179
  end
156
- return value
180
+ value
157
181
  end
158
182
 
159
183
  # Retry a block of code for a number of times
@@ -203,7 +227,7 @@ module MiniAutobot
203
227
  result = true if elements.size() > 0
204
228
  end
205
229
  @driver.manage.timeouts.implicit_wait = original_timeout
206
- return result
230
+ result
207
231
  end
208
232
 
209
233
  def wait_for_element_to_display(how, what, friendly_name = "element")
@@ -1,3 +1,3 @@
1
1
  module MiniAutobot
2
- VERSION = '0.2.0'
2
+ VERSION = '0.2.1'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mini_autobot
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ripta Pasay
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-10-06 00:00:00.000000000 Z
13
+ date: 2015-10-12 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: activesupport