41 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
			
		
		
	
	
			41 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			Plaintext
		
	
	
	
# Copyright (c) 2012 Collabora Ltd. 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.cros import storage as storage_mod
 | 
						|
 | 
						|
NAME = "hardware_Usb30Throughput"
 | 
						|
AUTHOR = "Cosimo Alfarano <cosimo.alfarano@collabora.co.uk>"
 | 
						|
PURPOSE = "Check that there are no transfer speed downgrade after suspend."
 | 
						|
CRITERIA = "Fails if transfer rate is below expectations"
 | 
						|
TIME="SHORT"
 | 
						|
TEST_CATEGORY = "Functional"
 | 
						|
TEST_CLASS = "hardware"
 | 
						|
TEST_TYPE = "client"
 | 
						|
 | 
						|
DOC = """Measure transfer rates for a number of times.
 | 
						|
If any of the transfer rate is below expectation the test fails.
 | 
						|
 | 
						|
This test need a high-speed USB 3.0 device connected, with a mountable file
 | 
						|
system on a single partition.
 | 
						|
No user should be logged in via GUI to avoid automounter interfere with the
 | 
						|
test.
 | 
						|
 | 
						|
@param measurements: (10) number of times to repeat xfer rate measureaments
 | 
						|
@param size: (10Mb) the size of the file to transfer for each |measureaments|
 | 
						|
@param fs_uuid: UUID for USB storage define volume, if auto detection does not
 | 
						|
       work.
 | 
						|
@param min_speed: (300Mb/sec) a float number for the minimum speed accepted.
 | 
						|
       Any |measureaments| performing below it will make the test fail
 | 
						|
"""
 | 
						|
 | 
						|
storage_filter, args_dict = storage_mod.args_to_storage_dict(args)
 | 
						|
if not storage_filter:
 | 
						|
    storage_filter = {'bus': 'usb'}
 | 
						|
measurements = int(args_dict.get('measurements', 10))
 | 
						|
size = int(args_dict.get('size', 10))
 | 
						|
min_speed = float(args_dict.get('min_speed', 300))
 | 
						|
 | 
						|
job.run_test('hardware_Usb30Throughput', storage_filter=storage_filter,
 | 
						|
             measurements=measurements, size=size, min_speed=min_speed)
 |