genymotion 0.1 → 1.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: cc1c086553d301c58c8e1763e7dc0fc1fd1ae3f6
4
- data.tar.gz: b261afe36ac6b13da96f2d404ab7defbe14518d3
3
+ metadata.gz: b5ad9b30f1ce985c9e9992ba56cc9b6a81e46b1d
4
+ data.tar.gz: 4b182a9b6fbfefd6a3b725b2949a25dc70c82aa6
5
5
  SHA512:
6
- metadata.gz: 5364c7a60381ddc109e9fa87fcfee908b54d3673cb31a992c6301cbf00e35ef6f2739812e50f21fabd7201afb8b25ce53c6e394cf7b75b3b9287255cb8a3e26d
7
- data.tar.gz: b29a77d4f443f2c6088b4f8f82c5f4de6d6e41c0838ba61a424c0c4f61d082a536894800940c738265ce9af3ef85531032b937df751f1eecadb1a682cfd8798a
6
+ metadata.gz: 8b80c114791d9817d205a286fddc4b5b2592d61932c28100faf0cf8e6633bcf544a071d4f82ffd6e2ced5f393c46b02ee0ed8b71b349e909d03b95cd343075be
7
+ data.tar.gz: d49d94238cc5b48bb727a85c5daf797b198fc1fd33138db76d84dd2767312ae849601b278599b4d480f39a21ed37f0b57fd611cce908c1a54097fff1f0f86bf6
@@ -0,0 +1,37 @@
1
+ module GENYMOTION
2
+ class DeviceManager
3
+ class << self
4
+ def device_ids
5
+ `VBoxManage list vms | awk '{print $(NF)}' | sed 's/[{}]//g'`.split
6
+ end
7
+
8
+ def devices
9
+ `VBoxManage list vms`
10
+ end
11
+
12
+ def launch(device)
13
+ p "launching #{device}"
14
+ player = GENYMOTION.player_app.nil? ? '/Applications/Genymotion.app/Contents/MacOS/player.app/Contents/MacOS/player' : GENYMOTION.player_app
15
+ `#{player} --vm-name #{device} &`
16
+ end
17
+
18
+ def adb_devices
19
+ `adb devices | tail -n +2 | awk '{print $1}'`.split
20
+ end
21
+
22
+ def device_running?(device)
23
+ `adb -s #{device} shell getprop sys.boot_completed`.to_i == 1
24
+ end
25
+
26
+ def kill_all
27
+ `ps -ef | grep '[p]layer' | awk '{print $2}' | xargs kill`
28
+ `ps -ef | grep '[V]BoxHeadless' | awk '{print $2}' | xargs kill`
29
+ end
30
+
31
+ def all_devices_operational?
32
+ return false if adb_devices.nil? || adb_devices.empty?
33
+ adb_devices.select { |d| !device_running?(d) }.empty?
34
+ end
35
+ end
36
+ end
37
+ end
@@ -0,0 +1,9 @@
1
+ module GENYMOTION
2
+ def self.player_app=(player_app_path)
3
+ @player_app = player_app_path
4
+ end
5
+
6
+ def self.player_app
7
+ @player_app
8
+ end
9
+ end
@@ -1,3 +1,3 @@
1
1
  module GENYMOTION
2
- VERSION = '0.1'
2
+ VERSION = '1.0'
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: genymotion
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.1'
4
+ version: '1.0'
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ajit Singh
@@ -19,6 +19,8 @@ files:
19
19
  - ".gitignore"
20
20
  - genymotion.gemspec
21
21
  - lib/genymotion.rb
22
+ - lib/genymotion/emulator.rb
23
+ - lib/genymotion/executables.rb
22
24
  - lib/genymotion/version.rb
23
25
  homepage: https://github.com/ajitsing/genymotion.git
24
26
  licenses:
@@ -40,7 +42,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
40
42
  version: '0'
41
43
  requirements: []
42
44
  rubyforge_project:
43
- rubygems_version: 2.4.6
45
+ rubygems_version: 2.6.7
44
46
  signing_key:
45
47
  specification_version: 4
46
48
  summary: Manage genymotion instances