Merge lp:~vishalbhoj/lava-android-test/CTS-update-for-juice into lp:lava-android-test

Proposed by vishal
Status: Merged
Merged at revision: 240
Proposed branch: lp:~vishalbhoj/lava-android-test/CTS-update-for-juice
Merge into: lp:lava-android-test
Diff against target: 162 lines (+25/-37)
3 files modified
lava_android_test/test_definitions/cts.py (+2/-2)
lava_android_test/test_definitions/cts/cts_prepare.sh (+11/-3)
lava_android_test/test_definitions/cts/cts_wrapper.py (+12/-32)
To merge this branch: bzr merge lp:~vishalbhoj/lava-android-test/CTS-update-for-juice
Reviewer Review Type Date Requested Status
Yongqin Liu Approve
Review via email: mp+154280@code.launchpad.net

Description of the change

Updates to CTS. Enables few settings needed for CTS. Runs CTS in foreground and doesn't invoke from shell script anymore.

To post a comment you must log in.
Revision history for this message
Yongqin Liu (liuyq0307) wrote :

will approve this after my local test finished

Revision history for this message
Yongqin Liu (liuyq0307) wrote :

from source it's ok.
and this change is related to CTS test only,
so will merge it first,
and test it on other builds.

review: Approve

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'lava_android_test/test_definitions/cts.py'
2--- lava_android_test/test_definitions/cts.py 2012-06-28 11:29:49 +0000
3+++ lava_android_test/test_definitions/cts.py 2013-03-20 08:29:31 +0000
4@@ -33,7 +33,7 @@
5
6 curdir = os.path.realpath(os.path.dirname(__file__))
7
8-RUN_STEPS_HOST_PRE = ['python %s/cts/cts_wrapper.py $(SERIAL)' % curdir]
9+RUN_STEPS_HOST_PRE = ['python %s/cts/cts_wrapper.py $(SERIAL) $(OPTIONS)' % curdir]
10
11 inst = lava_android_test.testdef.AndroidTestInstaller()
12 run = lava_android_test.testdef.AndroidTestRunner(
13@@ -41,7 +41,7 @@
14
15 #01-16 14:24:16 I/0123456789ABCDEF: android.telephony.cts.
16 #TelephonyManagerTest#testGetNetworkCountryIso PASS
17-pattern = ("^\s*[\d-]+\s+[\d:]+\s+I\/\S+\:\s+(?P<test_case_id>\S+#\S+)"
18+pattern = ("\s*[\d-]+\s+[\d:]+\s+I\/\S+\:\s+(?P<test_case_id>\S+#\S+)"
19 "\s+(?P<result>\S+)\s*$")
20 parser = lava_android_test.testdef.AndroidTestParser(pattern=pattern,
21 fixupdict={'PASS': 'pass', 'FAIL': 'fail'})
22
23=== modified file 'lava_android_test/test_definitions/cts/cts_prepare.sh'
24--- lava_android_test/test_definitions/cts/cts_prepare.sh 2012-11-15 05:40:30 +0000
25+++ lava_android_test/test_definitions/cts/cts_prepare.sh 2013-03-20 08:29:31 +0000
26@@ -19,8 +19,9 @@
27 # along with this program. If not, see <http://www.gnu.org/licenses/>.
28
29 #http://source.android.com/compatibility/downloads.html
30-
31+if [ -z "$cts_pkg" ]; then
32 cts_pkg="android-cts-linux_x86-arm-latest.zip"
33+fi
34 media_pkg="android-cts-media-latest.zip"
35 site_url="http://testdata.validation.linaro.org/cts/"
36 #site_url="http://192.168.1.127/images/cts/"
37@@ -106,7 +107,11 @@
38 echo "Faild to install CtsDelegatingAccessibilityService.apk"
39 exit 1
40 fi
41- ##TODO On the device, enable Settings > Accessibility > DelegatingAccessibility Service
42+ ## On the device, enable Settings > Accessibility > DelegatingAccessibility Service
43+ ${ADB_CMD} push $2 /data/local/tmp/
44+ ${ADB_CMD} shell am start -a android.intent.action.VIEW -n com.android.settings/.Settings
45+ ${ADB_CMD} shell uiautomator runtest ctshelper.jar -c com.linaro.ctshelper#AccessibilityHelper
46+
47
48 #16. Set up device administration tests:
49 echo "${ADB_CMD} install -r android-cts/repository/testcases/CtsDeviceAdmin.apk"
50@@ -115,7 +120,10 @@
51 echo "Faild to install CtsDeviceAdmin.apk"
52 exit 1
53 fi
54- ##TODO On the device, enable Settings > Security > Device Administrators >android.deviceadmin.cts.CtsDeviceAdmin* settings
55+ ## On the device, enable Settings > Security > Device Administrators >android.deviceadmin.cts.CtsDeviceAdmin* settings
56+ ${ADB_CMD} shell am start -a android.intent.action.VIEW -n com.android.settings/.Settings
57+ ${ADB_CMD} shell uiautomator runtest ctshelper.jar -c com.linaro.ctshelper#SecurityHelper
58+ ${ADB_CMD} shell am start -a android.intent.action.VIEW -n com.android.launcher/com.android.launcher2.Launcher
59
60 exit 0
61 }
62
63=== modified file 'lava_android_test/test_definitions/cts/cts_wrapper.py'
64--- lava_android_test/test_definitions/cts/cts_wrapper.py 2013-02-19 16:54:47 +0000
65+++ lava_android_test/test_definitions/cts/cts_wrapper.py 2013-03-20 08:29:31 +0000
66@@ -43,18 +43,14 @@
67
68 result = True
69 proc_cts = pexpect.spawn(command, logfile=sys.stdout)
70- time.sleep(20)
71- dump_log_cmd = "tail -f ./cts_output.log"
72- proc = pexpect.spawn(dump_log_cmd, logfile=sys.stdout)
73+ time.sleep(200)
74 try:
75- match_id = proc.expect(response, timeout=timeout)
76+ match_id = proc_cts.expect(response, timeout=timeout)
77 if match_id == 0:
78 time.sleep(5)
79 except pexpect.TIMEOUT:
80 result = False
81 finally:
82- proc.sendcontrol('C')
83- proc.sendline('')
84 proc_cts.sendcontrol('C')
85 proc_cts.sendline('')
86
87@@ -84,9 +80,10 @@
88
89 def prepare_cts():
90 cts_prepare_path = os.path.join(curdir, 'cts_prepare.sh')
91+ cts_helper_jar_path = os.path.join(curdir, 'ctshelper.jar')
92 cts_prepare_cmd = "bash %s" % cts_prepare_path
93- if not stop_at_pattern(command="%s %s" % (cts_prepare_cmd,
94- adb.get_serial()),
95+ if not stop_at_pattern(command="%s %s %s" % (cts_prepare_cmd,
96+ adb.get_serial(),cts_helper_jar_path),
97 timeout=18000):
98 print "Preapration for CTS test times out"
99 return False
100@@ -97,7 +94,7 @@
101 pattern = "Time:"
102 plan_command = '--plan CTS'
103 if cts_cmd:
104- plan_command = "%s %s" % (cts_cmd, plan_command)
105+ plan_command = "%s %s --disable-reboot" % (cts_cmd, plan_command)
106 if not stop_at_cts_pattern(command=plan_command, pattern=pattern,
107 timeout=36000):
108 print "CTS test times out"
109@@ -106,21 +103,6 @@
110 return True
111
112
113-def run_cts_with_package(cts_cmd=None, package=None):
114- pattern = "I/CommandScheduler: All done"
115- if not package:
116- return False
117- package_command = '--package %s' % package
118- if cts_cmd:
119- cts_command = "%s %s" % (cts_cmd, package_command)
120- if not stop_at_cts_pattern(command=cts_command, pattern=pattern,
121- timeout=36000):
122- print "CTS test times out"
123- return False
124-
125- return True
126-
127-
128 def run_cts_continue(cts_cmd=None):
129 pattern = "Time:"
130 continue_command = '--continue-session 0'
131@@ -214,8 +196,11 @@
132
133
134 def main():
135- run_wrapper_path = os.path.join(curdir, 'cts_run_wrapper.sh')
136- run_wrapper_cmd = "bash %s" % run_wrapper_path
137+
138+ if len(sys.argv) == 3:
139+ os.environ["cts_pkg"] = sys.argv[2]
140+ run_wrapper_path = os.path.join('./android-cts/tools/cts-tradefed ')
141+ run_wrapper_cmd = "%s" % run_wrapper_path
142 run_wrapper_cmd = '%s run cts --serial %s' % (run_wrapper_cmd,
143 adb.get_serial())
144
145@@ -223,13 +208,8 @@
146 if not prepare_cts():
147 sys.exit(1)
148
149- cts_plan = './android-cts/repository/plans/CTS.xml'
150- pkg_list = get_all_packages(plan_file=cts_plan)
151 try:
152- for pkg in pkg_list:
153- run_cts_with_package(cts_cmd=run_wrapper_cmd, package=pkg)
154- #if not run_cts_with_package(cts_cmd=run_wrapper_cmd, package=pkg):
155- #run_cts_continue(run_wrapper_cmd)
156+ run_cts_with_plan(cts_cmd=run_wrapper_cmd)
157 finally:
158 for log in logs:
159 pid = log.get('pid')
160
161=== added file 'lava_android_test/test_definitions/cts/ctshelper.jar'
162Binary files lava_android_test/test_definitions/cts/ctshelper.jar 1970-01-01 00:00:00 +0000 and lava_android_test/test_definitions/cts/ctshelper.jar 2013-03-20 08:29:31 +0000 differ

Subscribers

People subscribed via source and target branches