optimus-runner 1.1.1 → 1.1.2

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
  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