eyes_selenium 1.20.0 → 1.21.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +8 -8
- data/lib/eyes_selenium/eyes/agent_connector.rb +2 -2
- data/lib/eyes_selenium/eyes/eyes.rb +20 -8
- data/lib/eyes_selenium/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,15 +1,15 @@
|
|
1
1
|
---
|
2
2
|
!binary "U0hBMQ==":
|
3
3
|
metadata.gz: !binary |-
|
4
|
-
|
4
|
+
ZjJjMzY0ZjBhZDViOGY0ZDExODA1Nzg5ZjBlZmJjMjNkM2ZkYjg2OQ==
|
5
5
|
data.tar.gz: !binary |-
|
6
|
-
|
6
|
+
MGQ5M2JmZjI0MWM2MWRmNGFmYzAzZWIxOTIzNzAyMmQzZGQxOWYxMg==
|
7
7
|
SHA512:
|
8
8
|
metadata.gz: !binary |-
|
9
|
-
|
10
|
-
|
11
|
-
|
9
|
+
NzgwN2YyZDI2NzFkYWYwNWExMWNhODVlYTYxYTVmZDhmYjU0ZTJkM2M1YTkx
|
10
|
+
ZWIzZWRlYzJiY2ZjM2UxMjExNGMyNTU5NDU4YWU3NmE3ZThiMTY0NmQyZDE1
|
11
|
+
NzY3MTk1N2FiN2E0OWFiY2IyY2UxNzEyZDhlNjRkYTQyNTVjNzA=
|
12
12
|
data.tar.gz: !binary |-
|
13
|
-
|
14
|
-
|
15
|
-
|
13
|
+
OTU3YTNmMzE5YjhiMGE2ZjA3Y2Y0YjZjNDExNTY0NTk4MzMxNzdlZWQyNjJm
|
14
|
+
YzNjZTJkNDZmYzcxNGExZmMxZjcyMmQ2NWJlYThlMGU4ODljNmQzODA5M2Nj
|
15
|
+
ZmM5MDFkZjU5MTE2MWQwNDZjYzM1NzIxOTdhM2E4NGFjY2Q2ZmQ=
|
@@ -31,9 +31,9 @@ class Applitools::AgentConnector
|
|
31
31
|
Applitools::Session.new(parsed_res["id"], parsed_res["url"], status_code == "Created" )
|
32
32
|
end
|
33
33
|
|
34
|
-
def stop_session(session, aborted=nil)
|
34
|
+
def stop_session(session, aborted=nil, save=false)
|
35
35
|
self.class.headers 'Content-Type' => 'application/json'
|
36
|
-
res = self.class.delete(uri + "/#{session.id}", basic_auth: auth,
|
36
|
+
res = self.class.delete(uri + "/#{session.id}", basic_auth: auth, query: { aborted: aborted.to_s, updateBaseline: save.to_s })
|
37
37
|
parsed_res = res.parsed_response
|
38
38
|
parsed_res.delete("$id")
|
39
39
|
Applitools::TestResults.new(*parsed_res.values)
|
@@ -22,7 +22,8 @@ class Applitools::Eyes
|
|
22
22
|
|
23
23
|
public
|
24
24
|
attr_reader :disabled, :app_name, :test_name, :is_open, :viewport_size, :failure_reports, :match_level, :driver
|
25
|
-
attr_accessor :match_timeout, :batch, :host_os, :host_app, :branch_name, :parent_branch_name, :user_inputs
|
25
|
+
attr_accessor :match_timeout, :batch, :host_os, :host_app, :branch_name, :parent_branch_name, :user_inputs,
|
26
|
+
:save_new_tests, :save_failed_tests
|
26
27
|
|
27
28
|
def config
|
28
29
|
self.class.config
|
@@ -48,6 +49,8 @@ class Applitools::Eyes
|
|
48
49
|
@agent_connector = Applitools::AgentConnector.new(server_url, AGENT_ID, api_key)
|
49
50
|
@match_timeout = DEFAULT_MATCH_TIMEOUT
|
50
51
|
@failure_reports = Applitools::FailureReports::ON_CLOSE
|
52
|
+
@save_new_tests = true
|
53
|
+
@save_failed_tests = false
|
51
54
|
end
|
52
55
|
|
53
56
|
def open(params={})
|
@@ -113,20 +116,29 @@ class Applitools::Eyes
|
|
113
116
|
return Applitools::TestResults.new if !session
|
114
117
|
|
115
118
|
session_results_url = session.url
|
116
|
-
results = agent_connector.stop_session(session,false)
|
117
119
|
new_session = session.new_session?
|
120
|
+
save = (new_session && save_new_tests) || (!new_session && save_failed_tests)
|
121
|
+
results = agent_connector.stop_session(session, false, save)
|
118
122
|
self.session = nil
|
119
|
-
|
120
123
|
if new_session
|
121
|
-
|
124
|
+
if save
|
125
|
+
instructions = "Test was automatically accepted. You can review it at #{session_results_url}"
|
126
|
+
else
|
127
|
+
instructions = "Please approve the new baseline at #{session_results_url}"
|
128
|
+
end
|
122
129
|
EyesLogger.info "--- New test ended. #{instructions}"
|
123
130
|
message = "' #{session_start_info.scenario_id_or_name} of"\
|
124
131
|
" #{session_start_info.app_id_or_name}. #{instructions}"
|
125
132
|
raise Applitools::NewTestError.new(message, results)
|
126
|
-
elsif 0 < results.mismatches || 0 < results.missing
|
127
|
-
|
133
|
+
elsif 0 < results.mismatches || 0 < results.missing
|
134
|
+
if save
|
135
|
+
instructions = "Test was automatically accepted. You can review it at #{session_results_url}"
|
136
|
+
else
|
137
|
+
instructions = "Test failed. You can review it at #{session_results_url}"
|
138
|
+
end
|
139
|
+
EyesLogger.info "--- Failed test ended. #{instructions}"
|
128
140
|
message = "' #{session_start_info.scenario_id_or_name} of"\
|
129
|
-
" #{session_start_info.app_id_or_name}'.
|
141
|
+
" #{session_start_info.app_id_or_name}'. #{instructions}"
|
130
142
|
raise Applitools::TestFailedError.new(message, results)
|
131
143
|
end
|
132
144
|
|
@@ -158,7 +170,7 @@ class Applitools::Eyes
|
|
158
170
|
@is_open = false
|
159
171
|
if session
|
160
172
|
begin
|
161
|
-
agent_connector.stop_session(session,true)
|
173
|
+
agent_connector.stop_session(session, true, false)
|
162
174
|
rescue Applitools::EyesError => e
|
163
175
|
EyesLogger.info "Failed to abort server session -> #{e.message} "
|
164
176
|
ensure
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: eyes_selenium
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.21.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Applitools team
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2013-12-
|
11
|
+
date: 2013-12-08 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: selenium-webdriver
|