49 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Python
		
	
	
	
			
		
		
	
	
			49 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			Python
		
	
	
	
| # Copyright 2017 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.
 | |
| 
 | |
| from autotest_lib.client.bin import test
 | |
| from autotest_lib.client.common_lib import error
 | |
| from autotest_lib.client.common_lib.cros import test_webrtc_peer_connection
 | |
| 
 | |
| 
 | |
| class webrtc_PausePlayPeerConnections(test.test):
 | |
|     """Tests many peerconnections randomly paused and played."""
 | |
|     version = 1
 | |
| 
 | |
|     def run_once(self, mode = 'functional', element_type='video'):
 | |
|         """
 | |
|         Runs the test.
 | |
| 
 | |
|         @param mode: 'functional' or 'performance' depending on desired mode.
 | |
|         @param element_type: the element type to use for feeds, video or audio.
 | |
|         """
 | |
|         kwargs = {
 | |
|             'own_script': 'pause-play.js',
 | |
|             'common_script': 'loopback-peerconnection.js',
 | |
|             'bindir': self.bindir,
 | |
|             'tmpdir': self.tmpdir,
 | |
|             'debugdir': self.debugdir,
 | |
|             'num_peer_connections': 10,
 | |
|             'iteration_delay_millis': 20,
 | |
|             'before_start_hook': lambda tab: tab.EvaluateJavaScript(
 | |
|                     "elementType = '{}'".format(element_type))
 | |
|         }
 | |
| 
 | |
|         if mode == 'functional':
 | |
|             test = test_webrtc_peer_connection.WebRtcPeerConnectionTest(
 | |
|                     title = 'Pause Play Peerconnections',
 | |
|                     **kwargs)
 | |
|             test.run_test()
 | |
|         elif mode == 'performance':
 | |
|             test = test_webrtc_peer_connection\
 | |
|                     .WebRtcPeerConnectionPerformanceTest(
 | |
|                             title = 'Pause Play Peerconnections '
 | |
|                                     + 'Performance test',
 | |
|                             **kwargs)
 | |
|             test.run_test()
 | |
|             test.collector.write_metrics(self.output_perf_value)
 | |
|         else:
 | |
|             raise error.TestError('mode must be "functional" or "performance"')
 | |
| 
 |