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
=== modified file 'lava_android_test/test_definitions/cts.py'
--- lava_android_test/test_definitions/cts.py 2012-06-28 11:29:49 +0000
+++ lava_android_test/test_definitions/cts.py 2013-03-20 08:29:31 +0000
@@ -33,7 +33,7 @@
3333
34curdir = os.path.realpath(os.path.dirname(__file__))34curdir = os.path.realpath(os.path.dirname(__file__))
3535
36RUN_STEPS_HOST_PRE = ['python %s/cts/cts_wrapper.py $(SERIAL)' % curdir]36RUN_STEPS_HOST_PRE = ['python %s/cts/cts_wrapper.py $(SERIAL) $(OPTIONS)' % curdir]
3737
38inst = lava_android_test.testdef.AndroidTestInstaller()38inst = lava_android_test.testdef.AndroidTestInstaller()
39run = lava_android_test.testdef.AndroidTestRunner(39run = lava_android_test.testdef.AndroidTestRunner(
@@ -41,7 +41,7 @@
4141
42#01-16 14:24:16 I/0123456789ABCDEF: android.telephony.cts.42#01-16 14:24:16 I/0123456789ABCDEF: android.telephony.cts.
43#TelephonyManagerTest#testGetNetworkCountryIso PASS43#TelephonyManagerTest#testGetNetworkCountryIso PASS
44pattern = ("^\s*[\d-]+\s+[\d:]+\s+I\/\S+\:\s+(?P<test_case_id>\S+#\S+)"44pattern = ("\s*[\d-]+\s+[\d:]+\s+I\/\S+\:\s+(?P<test_case_id>\S+#\S+)"
45 "\s+(?P<result>\S+)\s*$")45 "\s+(?P<result>\S+)\s*$")
46parser = lava_android_test.testdef.AndroidTestParser(pattern=pattern,46parser = lava_android_test.testdef.AndroidTestParser(pattern=pattern,
47 fixupdict={'PASS': 'pass', 'FAIL': 'fail'})47 fixupdict={'PASS': 'pass', 'FAIL': 'fail'})
4848
=== modified file 'lava_android_test/test_definitions/cts/cts_prepare.sh'
--- lava_android_test/test_definitions/cts/cts_prepare.sh 2012-11-15 05:40:30 +0000
+++ lava_android_test/test_definitions/cts/cts_prepare.sh 2013-03-20 08:29:31 +0000
@@ -19,8 +19,9 @@
19# along with this program. If not, see <http://www.gnu.org/licenses/>.19# along with this program. If not, see <http://www.gnu.org/licenses/>.
2020
21#http://source.android.com/compatibility/downloads.html21#http://source.android.com/compatibility/downloads.html
2222if [ -z "$cts_pkg" ]; then
23cts_pkg="android-cts-linux_x86-arm-latest.zip"23cts_pkg="android-cts-linux_x86-arm-latest.zip"
24fi
24media_pkg="android-cts-media-latest.zip"25media_pkg="android-cts-media-latest.zip"
25site_url="http://testdata.validation.linaro.org/cts/"26site_url="http://testdata.validation.linaro.org/cts/"
26#site_url="http://192.168.1.127/images/cts/"27#site_url="http://192.168.1.127/images/cts/"
@@ -106,7 +107,11 @@
106 echo "Faild to install CtsDelegatingAccessibilityService.apk"107 echo "Faild to install CtsDelegatingAccessibilityService.apk"
107 exit 1108 exit 1
108 fi109 fi
109 ##TODO On the device, enable Settings > Accessibility > DelegatingAccessibility Service110 ## On the device, enable Settings > Accessibility > DelegatingAccessibility Service
111 ${ADB_CMD} push $2 /data/local/tmp/
112 ${ADB_CMD} shell am start -a android.intent.action.VIEW -n com.android.settings/.Settings
113 ${ADB_CMD} shell uiautomator runtest ctshelper.jar -c com.linaro.ctshelper#AccessibilityHelper
114
110 115
111 #16. Set up device administration tests:116 #16. Set up device administration tests:
112 echo "${ADB_CMD} install -r android-cts/repository/testcases/CtsDeviceAdmin.apk"117 echo "${ADB_CMD} install -r android-cts/repository/testcases/CtsDeviceAdmin.apk"
@@ -115,7 +120,10 @@
115 echo "Faild to install CtsDeviceAdmin.apk"120 echo "Faild to install CtsDeviceAdmin.apk"
116 exit 1121 exit 1
117 fi122 fi
118 ##TODO On the device, enable Settings > Security > Device Administrators >android.deviceadmin.cts.CtsDeviceAdmin* settings123 ## On the device, enable Settings > Security > Device Administrators >android.deviceadmin.cts.CtsDeviceAdmin* settings
124 ${ADB_CMD} shell am start -a android.intent.action.VIEW -n com.android.settings/.Settings
125 ${ADB_CMD} shell uiautomator runtest ctshelper.jar -c com.linaro.ctshelper#SecurityHelper
126 ${ADB_CMD} shell am start -a android.intent.action.VIEW -n com.android.launcher/com.android.launcher2.Launcher
119 127
120 exit 0128 exit 0
121}129}
122130
=== modified file 'lava_android_test/test_definitions/cts/cts_wrapper.py'
--- lava_android_test/test_definitions/cts/cts_wrapper.py 2013-02-19 16:54:47 +0000
+++ lava_android_test/test_definitions/cts/cts_wrapper.py 2013-03-20 08:29:31 +0000
@@ -43,18 +43,14 @@
4343
44 result = True44 result = True
45 proc_cts = pexpect.spawn(command, logfile=sys.stdout)45 proc_cts = pexpect.spawn(command, logfile=sys.stdout)
46 time.sleep(20)46 time.sleep(200)
47 dump_log_cmd = "tail -f ./cts_output.log"
48 proc = pexpect.spawn(dump_log_cmd, logfile=sys.stdout)
49 try:47 try:
50 match_id = proc.expect(response, timeout=timeout)48 match_id = proc_cts.expect(response, timeout=timeout)
51 if match_id == 0:49 if match_id == 0:
52 time.sleep(5)50 time.sleep(5)
53 except pexpect.TIMEOUT:51 except pexpect.TIMEOUT:
54 result = False52 result = False
55 finally:53 finally:
56 proc.sendcontrol('C')
57 proc.sendline('')
58 proc_cts.sendcontrol('C')54 proc_cts.sendcontrol('C')
59 proc_cts.sendline('')55 proc_cts.sendline('')
6056
@@ -84,9 +80,10 @@
8480
85def prepare_cts():81def prepare_cts():
86 cts_prepare_path = os.path.join(curdir, 'cts_prepare.sh')82 cts_prepare_path = os.path.join(curdir, 'cts_prepare.sh')
83 cts_helper_jar_path = os.path.join(curdir, 'ctshelper.jar')
87 cts_prepare_cmd = "bash %s" % cts_prepare_path84 cts_prepare_cmd = "bash %s" % cts_prepare_path
88 if not stop_at_pattern(command="%s %s" % (cts_prepare_cmd,85 if not stop_at_pattern(command="%s %s %s" % (cts_prepare_cmd,
89 adb.get_serial()),86 adb.get_serial(),cts_helper_jar_path),
90 timeout=18000):87 timeout=18000):
91 print "Preapration for CTS test times out"88 print "Preapration for CTS test times out"
92 return False89 return False
@@ -97,7 +94,7 @@
97 pattern = "Time:"94 pattern = "Time:"
98 plan_command = '--plan CTS'95 plan_command = '--plan CTS'
99 if cts_cmd:96 if cts_cmd:
100 plan_command = "%s %s" % (cts_cmd, plan_command)97 plan_command = "%s %s --disable-reboot" % (cts_cmd, plan_command)
101 if not stop_at_cts_pattern(command=plan_command, pattern=pattern,98 if not stop_at_cts_pattern(command=plan_command, pattern=pattern,
102 timeout=36000):99 timeout=36000):
103 print "CTS test times out"100 print "CTS test times out"
@@ -106,21 +103,6 @@
106 return True103 return True
107104
108105
109def run_cts_with_package(cts_cmd=None, package=None):
110 pattern = "I/CommandScheduler: All done"
111 if not package:
112 return False
113 package_command = '--package %s' % package
114 if cts_cmd:
115 cts_command = "%s %s" % (cts_cmd, package_command)
116 if not stop_at_cts_pattern(command=cts_command, pattern=pattern,
117 timeout=36000):
118 print "CTS test times out"
119 return False
120
121 return True
122
123
124def run_cts_continue(cts_cmd=None):106def run_cts_continue(cts_cmd=None):
125 pattern = "Time:"107 pattern = "Time:"
126 continue_command = '--continue-session 0'108 continue_command = '--continue-session 0'
@@ -214,8 +196,11 @@
214196
215197
216def main():198def main():
217 run_wrapper_path = os.path.join(curdir, 'cts_run_wrapper.sh')199
218 run_wrapper_cmd = "bash %s" % run_wrapper_path200 if len(sys.argv) == 3:
201 os.environ["cts_pkg"] = sys.argv[2]
202 run_wrapper_path = os.path.join('./android-cts/tools/cts-tradefed ')
203 run_wrapper_cmd = "%s" % run_wrapper_path
219 run_wrapper_cmd = '%s run cts --serial %s' % (run_wrapper_cmd,204 run_wrapper_cmd = '%s run cts --serial %s' % (run_wrapper_cmd,
220 adb.get_serial())205 adb.get_serial())
221206
@@ -223,13 +208,8 @@
223 if not prepare_cts():208 if not prepare_cts():
224 sys.exit(1)209 sys.exit(1)
225210
226 cts_plan = './android-cts/repository/plans/CTS.xml'
227 pkg_list = get_all_packages(plan_file=cts_plan)
228 try:211 try:
229 for pkg in pkg_list:212 run_cts_with_plan(cts_cmd=run_wrapper_cmd)
230 run_cts_with_package(cts_cmd=run_wrapper_cmd, package=pkg)
231 #if not run_cts_with_package(cts_cmd=run_wrapper_cmd, package=pkg):
232 #run_cts_continue(run_wrapper_cmd)
233 finally:213 finally:
234 for log in logs:214 for log in logs:
235 pid = log.get('pid')215 pid = log.get('pid')
236216
=== added file 'lava_android_test/test_definitions/cts/ctshelper.jar'
237Binary 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 differ217Binary 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