ADB 0.5.2 → 0.5.3
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.
- data/ChangeLog +6 -0
- data/features/step_definitions/adb_steps.rb +2 -1
- data/features/support/.travis.yml +37 -0
- data/lib/ADB.rb +4 -4
- data/lib/ADB/version.rb +1 -1
- data/spec/lib/ADB_spec.rb +28 -15
- metadata +6 -4
data/ChangeLog
CHANGED
@@ -72,10 +72,11 @@ Then /^I can attain root privileges$/ do
|
|
72
72
|
end
|
73
73
|
|
74
74
|
Then /^I should be able to push a file to the local device$/ do
|
75
|
-
#
|
75
|
+
# be sure that the file doesn't already exist
|
76
76
|
sn = devices[0]
|
77
77
|
wait_for_device({:serial => sn}, 60)
|
78
78
|
remount({:serial => sn})
|
79
|
+
shell('rm /system/cuke_test_file.txt', {:serial => sn})
|
79
80
|
shell('ls /system/cuke_test_file.txt', {:serial => sn})
|
80
81
|
last_stdout.should include 'No such file or directory'
|
81
82
|
|
@@ -0,0 +1,37 @@
|
|
1
|
+
language: java
|
2
|
+
before_install:
|
3
|
+
# download the latest android sdk and unzip
|
4
|
+
- wget http://dl.google.com/android/android-sdk_r18-linux.tgz
|
5
|
+
- tar -zxf android-sdk_r18-linux.tgz
|
6
|
+
|
7
|
+
# This is a bit of a hack to get the android-15 arm abi installed
|
8
|
+
- wget http://dl.google.com/android/repository/sysimg_armv7a-15_r02.zip
|
9
|
+
- mkdir ~/builds/joelbyler/ADB/android-sdk-linux/system-images
|
10
|
+
- mkdir ~/builds/joelbyler/ADB/android-sdk-linux/system-images/android-15
|
11
|
+
- unzip sysimg_armv7a-15_r02.zip -d ~/builds/joelbyler/ADB/android-sdk-linux/system-images/android-15
|
12
|
+
|
13
|
+
# setup your ANDROID_HOME and PATH environment variables
|
14
|
+
# use ~/builds/[Github username]/[project]/android-sdk-linux
|
15
|
+
- export ANDROID_HOME=~/builds/joelbyler/ADB/android-sdk-linux
|
16
|
+
- export PATH=${PATH}:${ANDROID_HOME}/tools:${ANDROID_HOME}/platform-tools
|
17
|
+
|
18
|
+
# only update the sdk for the tools and platform-tools (1,2) and whatever api level
|
19
|
+
# you are building for android (run "android list sdk" to get the full list. 9 = 2.3.3 or API level 10
|
20
|
+
#- android list sdk --all
|
21
|
+
- android update sdk -u -f --filter 1,2
|
22
|
+
- android update sdk -u -f --filter android-15
|
23
|
+
|
24
|
+
# Create an emulator for testing against
|
25
|
+
- echo no | android create avd -n Android_4.0.3 -t 1 --force
|
26
|
+
- echo "hw.ramSize=2048" >> ~/.android/avd/Android_4.0.3.i
|
27
|
+
|
28
|
+
# Need to figure out how to get the emulator to start up properly
|
29
|
+
#- emulator -avd Android_4.0.3 -port 5554 -no-window -no-audio -no-boot-anim &
|
30
|
+
#- adb wait-for-device
|
31
|
+
|
32
|
+
language: ruby
|
33
|
+
rvm:
|
34
|
+
- 1.9.3
|
35
|
+
|
36
|
+
#after_script:
|
37
|
+
#- bundle exec rake test
|
data/lib/ADB.rb
CHANGED
@@ -11,7 +11,7 @@ require 'date'
|
|
11
11
|
module ADB
|
12
12
|
include ADB::Instrumentation
|
13
13
|
|
14
|
-
attr_reader :last_stdout, :last_stderr
|
14
|
+
attr_reader :last_stdout, :last_stderr
|
15
15
|
|
16
16
|
#
|
17
17
|
# start the server process
|
@@ -159,11 +159,11 @@ module ADB
|
|
159
159
|
# seconds.
|
160
160
|
#
|
161
161
|
def push(source, destination, target={}, timeout=30)
|
162
|
-
|
162
|
+
execute_adb_with_exactly(timeout, "#{which_one(target)} push", source, destination)
|
163
163
|
end
|
164
164
|
|
165
165
|
#
|
166
|
-
#
|
166
|
+
# pull a file
|
167
167
|
#
|
168
168
|
# @param the fully quanified source (device) file name
|
169
169
|
# @param the fully quanified destination (local) file name
|
@@ -173,7 +173,7 @@ module ADB
|
|
173
173
|
# seconds.
|
174
174
|
#
|
175
175
|
def pull(source, destination, target={}, timeout=30)
|
176
|
-
|
176
|
+
execute_adb_with_exactly(timeout, "#{which_one(target)} pull", source, destination)
|
177
177
|
end
|
178
178
|
|
179
179
|
#
|
data/lib/ADB/version.rb
CHANGED
data/spec/lib/ADB_spec.rb
CHANGED
@@ -46,24 +46,37 @@ describe ADB do
|
|
46
46
|
ADB.forward('src', 'dest')
|
47
47
|
end
|
48
48
|
|
49
|
-
|
50
|
-
should_call_adb_with('push', '/usr/foo.txt', '/sdcard/bar.txt')
|
51
|
-
ADB.push('/usr/foo.txt', '/sdcard/bar.txt')
|
52
|
-
end
|
49
|
+
context "when transferring files" do
|
53
50
|
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
51
|
+
it "should be able to push a file" do
|
52
|
+
should_call_adb_with(' push', '/usr/foo.txt', '/sdcard/bar.txt')
|
53
|
+
ADB.push('/usr/foo.txt', '/sdcard/bar.txt')
|
54
|
+
end
|
55
|
+
|
56
|
+
it "should be able to push a file with spaces in the name" do
|
57
|
+
should_call_adb_with(' push', '/usr/local file with spaces.txt', '/sdcard/remote file with spaces.txt')
|
58
|
+
ADB.push('/usr/local file with spaces.txt', '/sdcard/remote file with spaces.txt')
|
59
|
+
end
|
60
|
+
|
61
|
+
it "should be able to pull a file" do
|
62
|
+
should_call_adb_with(' pull', '/usr/foo.txt', '/sdcard/bar.txt')
|
63
|
+
ADB.pull('/usr/foo.txt', '/sdcard/bar.txt')
|
64
|
+
end
|
65
|
+
|
66
|
+
it "should be able to pull a file with spaces in the name" do
|
67
|
+
should_call_adb_with(' pull', '/usr/local file with spaces.txt', '/sdcard/remote file with spaces.txt')
|
68
|
+
ADB.pull('/usr/local file with spaces.txt', '/sdcard/remote file with spaces.txt')
|
69
|
+
end
|
58
70
|
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
71
|
+
it "should be able to remount the /system drive" do
|
72
|
+
should_call_adb_with('remount')
|
73
|
+
ADB.remount
|
74
|
+
end
|
63
75
|
|
64
|
-
|
65
|
-
|
66
|
-
|
76
|
+
it "should be able to provide root access" do
|
77
|
+
should_call_adb_with('root')
|
78
|
+
ADB.root
|
79
|
+
end
|
67
80
|
end
|
68
81
|
|
69
82
|
context "when connecting to a device" do
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ADB
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.5.
|
4
|
+
version: 0.5.3
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2012-09-
|
13
|
+
date: 2012-09-19 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: childprocess
|
@@ -81,6 +81,7 @@ files:
|
|
81
81
|
- cucumber.yml
|
82
82
|
- features/ADB.feature
|
83
83
|
- features/step_definitions/adb_steps.rb
|
84
|
+
- features/support/.travis.yml
|
84
85
|
- features/support/ApiDemos.apk
|
85
86
|
- features/support/env.rb
|
86
87
|
- lib/ADB.rb
|
@@ -104,7 +105,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
104
105
|
version: '0'
|
105
106
|
segments:
|
106
107
|
- 0
|
107
|
-
hash:
|
108
|
+
hash: 2790238866883201100
|
108
109
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
109
110
|
none: false
|
110
111
|
requirements:
|
@@ -113,7 +114,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
113
114
|
version: '0'
|
114
115
|
segments:
|
115
116
|
- 0
|
116
|
-
hash:
|
117
|
+
hash: 2790238866883201100
|
117
118
|
requirements: []
|
118
119
|
rubyforge_project:
|
119
120
|
rubygems_version: 1.8.24
|
@@ -123,6 +124,7 @@ summary: Simple wrapper over Android Debug Bridge command-line tool
|
|
123
124
|
test_files:
|
124
125
|
- features/ADB.feature
|
125
126
|
- features/step_definitions/adb_steps.rb
|
127
|
+
- features/support/.travis.yml
|
126
128
|
- features/support/ApiDemos.apk
|
127
129
|
- features/support/env.rb
|
128
130
|
- spec/lib/ADB/instrumentation_spec.rb
|