Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(41)

Unified Diff: client/site_tests/realtimecomm_GTalkPlayground/realtimecomm_GTalkPlayground.py

Issue 661307: Add GTalk Playground test into ChromeOS autotest. (Closed)
Patch Set: Add GTalk Playground into ChromeOS autotest Created 10 years, 10 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
« no previous file with comments | « client/site_tests/realtimecomm_GTalkPlayground/options ('k') | no next file » | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: client/site_tests/realtimecomm_GTalkPlayground/realtimecomm_GTalkPlayground.py
diff --git a/client/site_tests/realtimecomm_GTalkPlayground/realtimecomm_GTalkPlayground.py b/client/site_tests/realtimecomm_GTalkPlayground/realtimecomm_GTalkPlayground.py
new file mode 100755
index 0000000000000000000000000000000000000000..1cc4240021ca8eaead47f26fb5e206a59fec0d75
--- /dev/null
+++ b/client/site_tests/realtimecomm_GTalkPlayground/realtimecomm_GTalkPlayground.py
@@ -0,0 +1,85 @@
+# Copyright (c) 2010 The Chromium OS Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import os, time
+
+from autotest_lib.client.bin import test, utils
+from autotest_lib.client.common_lib import error, site_ui
+
+class realtimecomm_GTalkPlayground(test.test):
+ version = 1
+ playground = '/home/chronos/playground'
+
+ # The tarball is created from GTalk Playground.
+ # https://sites.google.com/a/google.com/wavelet/Home/video-playground
+ def setup(self, tarball='GTalkPlayground.tar.gz'):
+ if os.path.exists(self.playground):
+ utils.system('rm -rf %s' % self.playground)
+ tarball = utils.unmap_url(self.bindir, tarball, self.tmpdir)
+ utils.extract_tarball_to_dir(tarball, self.srcdir)
+
+
+ def run_cleanup(self):
+ utils.run('killall chrome', ignore_status=True)
+ time.sleep(1)
+ utils.run('killall GoogleTalkPlugin', ignore_status=True)
+ time.sleep(1)
+ utils.run('rm -f /tmp/tmp.log', ignore_status=True)
+ utils.run('rm -rf %s' % self.playground)
+
+
+ def run_setup(self):
+ utils.run('cp -r %s %s' % (self.srcdir, self.playground))
+ utils.run('chown chronos %s -R' % self.playground)
+ src_opt = os.path.join(self.bindir, 'options')
+ des_path= '/home/chronos/.Google/'
+ opt_path= os.path.join(des_path, 'Google Talk Plugin')
+ des_opt = os.path.join(opt_path, 'options')
+ utils.run('mkdir -p \'%s\'' % opt_path)
+ utils.run('cp -f %s \'%s\'' % (src_opt, des_opt))
+ utils.run('chown chronos \'%s\' -R' % des_path)
+ utils.run('chmod o+r+w \'%s\'' % des_opt)
+
+
+ def run_verification(self):
+ # TODO(zhurun): Add more checking and perf data collection.
+ if not os.path.exists('/tmp/tmp.log'):
+ raise error.TestFail('GTalk log file not exist!')
+ try:
+ log = open(r'/tmp/tmp.log')
+ try:
+ content = log.read()
+ if not "Found V4L2 capture" in content:
+ raise error.TestFail('V4L2 not found!')
+ if not "video state, recv=1 send=1" in content:
+ raise error.TestFail('Error in Video send/recv!')
+ if not "voice state, recv=1 send=1" in content:
+ raise error.TestFail('Error in Audio send/recv!')
+ if not "Decoded framerate" in content:
+ raise error.TestFail('Error in Video upstream!')
+ if not "Rendered framerate" in content:
+ raise error.TestFail('Error in Video downstream!')
+ finally:
+ log.close()
+ except IOError:
+ raise error.TestFail('Error in reading GTalk log file!')
+
+
+ def run_once(self):
+ self.run_cleanup()
+ self.run_setup()
+
+ # Launch Playground
+ path = os.path.join(self.playground,
+ 'buzz/javascript/media/examples')
+ page = 'videoplayground.html'
+ para = 'callType=v'
+ playground_url = "%s/%s?%s" % (path, page, para)
+ session = site_ui.ChromeSession(playground_url)
+ time.sleep(60)
+ session.close()
+
+ # Verify log
+ self.run_verification()
+ self.run_cleanup()
« no previous file with comments | « client/site_tests/realtimecomm_GTalkPlayground/options ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698