genymotion 0.1 → 1.0

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