optimus-runner 1.1.1 → 1.1.2

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
  SHA256:
3
- metadata.gz: 9aee4a32d29f86625b1fe69b4adc2f38e9f5cb571236ea34e945c210a053646a
4
- data.tar.gz: 57fcca313204e22ce2c16d90c6ff5f28958e3103d57273a3782208a62c67a7a7
3
+ metadata.gz: d939e4827c75b5b0db3bf358f90f68d213f889d023b7efc82f485e9016f46777
4
+ data.tar.gz: 78371bb76052b9a9412b08b21cf3ecdfcea7ae246ca128ffae35fb186ff382a6
5
5
  SHA512:
6
- metadata.gz: 1dcaef25504404d0c26dde10824152eab2a4c825dca0f1c4c1bf3a68fcdbd3d4de5556875301f07b6e53294c9bf1bd0bd7fc2a84371733f40a78885085ec95ea
7
- data.tar.gz: 5241afbbed38b255ba26ad49dd3f37feb78d4f0b4ec4db37f97a925b5e8471000324ed22cda15367f39b6172ed566d76ca25065ee7234e6f7e20d44781026bae
6
+ metadata.gz: 8bf2d1fd6e3e56ab3d0d7bffb7367019fe9d5c9dc94cdc0d9044968065a0d1c663212f62f142e01e10e1c60d6ad4e97d0bd1846e6d01ad82b12b68db81769dc2
7
+ data.tar.gz: d5cab378ed06e833d727332a46585d6f2809e5ce55f9993a8f03995040ecaf1c7fc89cbfe0dbc91e84947a45701c1dec8ff8eea6b83648c00de395d2a6c54e5a
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- optimus-runner (1.1.0)
4
+ optimus-runner (1.1.1)
5
5
  aasm (~> 5.0)
6
6
  daemons (~> 1.3)
7
7
  dotenv (~> 2.1, >= 2.1.1)
@@ -18,5 +18,6 @@ scheduler.interval '5s', :first_in => 0.1 do
18
18
  optimus_runner_sm.add if optimus_runner_sm.new_device_added?
19
19
  optimus_runner_sm.remove if optimus_runner_sm.device_removed?
20
20
  optimus_runner_sm.restart if optimus_runner_sm.session_terminated?
21
+ optimus_runner_sm.empty if optimus_runner_sm.cloud_session_empty? # You have done FLUSHALL in akira
21
22
  end
22
23
  scheduler.join
@@ -39,6 +39,14 @@ class AkriaClient
39
39
  return session_info
40
40
  end
41
41
 
42
+ def get_all_sessions
43
+ uri = "#{@base_uri}/sessionsList"
44
+ puts uri
45
+ response = HTTParty.get(uri, headers: get_default_headers)
46
+ sessions = JSON.parse(response.to_s)
47
+ return sessions
48
+ end
49
+
42
50
 
43
51
  def get_default_headers
44
52
  headers = {
@@ -51,6 +51,12 @@ class OptimusRunnerSM
51
51
  transitions :from => [:created, :added, :removed, :restarted], :to => :created, :guard => :devices_available?
52
52
  transitions :from => [:created, :added, :removed, :restarted], :to => :idle
53
53
  end
54
+
55
+ event :empty, :before => :empty_sessions do
56
+ transitions :from => [:created, :added, :removed, :restarted], :to => :added, :guard => :cloud_session_empty?
57
+ transitions :from => [:created, :added, :removed, :restarted], :to => :created, :guard => :devices_available?
58
+ transitions :from => [:created, :added, :removed, :restarted], :to => :idle
59
+ end
54
60
  end
55
61
 
56
62
  def devices_available?
@@ -76,6 +82,10 @@ class OptimusRunnerSM
76
82
  @session_restarted
77
83
  end
78
84
 
85
+ def session_empty?
86
+ @sessions_empty
87
+ end
88
+
79
89
  def gather_devices
80
90
  details = DeviceDetails.new
81
91
  @device_details = details.get_device_details
@@ -86,7 +96,6 @@ class OptimusRunnerSM
86
96
  return unless devices_available?
87
97
  @logger.info "Device details found are #{@device_details}"
88
98
  sessions = AppiumLocalService.new.launch_appium_sessions(@device_details)
89
- puts sessions
90
99
  @session_info = sessions
91
100
  AkriaClient.new.save_sessions(@session_info)
92
101
  end
@@ -98,7 +107,6 @@ class OptimusRunnerSM
98
107
  # session_info = SessionInfo.new(session,device_details).create_session_info
99
108
  AkriaClient.new.save_sessions(session_info)
100
109
  @session_info.push session_info[0]
101
- p @session_info
102
110
  end
103
111
 
104
112
  def add_sessions
@@ -127,8 +135,6 @@ class OptimusRunnerSM
127
135
  @initial_device_set = @device_details
128
136
  end
129
137
  end
130
-
131
-
132
138
  end
133
139
 
134
140
  def session_terminated?
@@ -162,6 +168,20 @@ class OptimusRunnerSM
162
168
  @session_restarted = true
163
169
  end
164
170
 
171
+ def empty_sessions
172
+ return unless devices_available?
173
+ if cloud_session_empty?
174
+ p "Session Info #{@session_info}"
175
+ AkriaClient.new.save_sessions(@session_info)
176
+ end
177
+ end
178
+
179
+ def cloud_session_empty?
180
+ sessions = AkriaClient.new.get_all_sessions
181
+ return false if sessions.instance_of? Array
182
+ return true if sessions.key?("errorCode")
183
+ end
184
+
165
185
  def new_device_added?
166
186
  added_device = get_added_devices
167
187
  p "Is new devices added #{added_device.length>0}"
@@ -203,5 +223,4 @@ class OptimusRunnerSM
203
223
  removed_device = @initial_device_set - @device_details
204
224
  return removed_device
205
225
  end
206
- end
207
-
226
+ end
@@ -1,3 +1,3 @@
1
1
  module Gandalf
2
- VERSION = "1.1.1"
2
+ VERSION = "1.1.2"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: optimus-runner
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.1.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - KrishnanandB
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-02-27 00:00:00.000000000 Z
11
+ date: 2020-03-10 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: bundler
@@ -224,9 +224,6 @@ files:
224
224
  - lib/optimus-runner/utils/optimuscloudenv.rb
225
225
  - lib/optimus-runner/version.rb
226
226
  - lib/optimus_runner_control.rb
227
- - optimus-runner-0.12.0.gem
228
- - optimus-runner-0.13.0.gem
229
- - optimus-runner-0.14.0.gem
230
227
  - optimus-runner.gemspec
231
228
  - pids/optimus-runner.log
232
229
  - pids/optimus_runner_outputfile.txt
Binary file
Binary file
Binary file