Dave Tu | 8813504 | 2010-09-23 11:30:30 -0700 | [diff] [blame] | 1 | # Copyright (c) 2009 The Chromium OS Authors. All rights reserved. |
| 2 | # Use of this source code is governed by a BSD-style license that can be |
| 3 | # found in the LICENSE file. |
| 4 | |
| 5 | AUTHOR = "Chrome OS Team" |
| 6 | NAME = "CryptohomeSyncStressServer" |
| 7 | TIME = "LONG" |
| 8 | TEST_CATEGORY = "Stress" |
| 9 | TEST_CLASS = "platform" |
| 10 | TEST_TYPE = "server" |
| 11 | |
| 12 | DOC = """ |
| 13 | This test logs in, waits a random interval between 0 and 120s, then |
| 14 | automatically reboots power to the system using a remotely controlled power |
| 15 | strip. After the system restarts, it verifies that login completes and |
| 16 | cryptohome mounts successfully. Best used on an account with many things to |
| 17 | sync, so the crash happens during various stages of the syncing process. |
| 18 | This test runs continuously and fails iff it stops running. |
| 19 | """ |
| 20 | |
| 21 | # convert autoserv args to something usable |
| 22 | opts = dict([[k, v] for (k, e, v) in [x.partition('=') for x in args]]) |
| 23 | |
| 24 | power_addr = opts.get('power_addr', None) |
| 25 | outlet = opts.get('outlet', None) |
| 26 | username = opts.get('user', None) |
| 27 | password = opts.get('pass', None) |
| 28 | iterations = opts.get('iter', '1000000') |
| 29 | |
| 30 | iterations = int(iterations) |
| 31 | |
| 32 | host = hosts.create_host(machines[0]) |
| 33 | job.run_test('platform_CryptohomeSyncStressServer', host=host, |
| 34 | power_addr=power_addr, outlet=outlet, |
| 35 | username=username, password=password, iterations=iterations) |