blob: 86ac46315e5e93ee0e48005990962b3bec53cdec [file] [log] [blame]
Tan Gaoa83a2562013-03-20 13:30:42 -07001# Copyright (c) 2013 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
5from autotest_lib.client.common_lib import error
6
7
8def get_datetime_float(host):
9 """
10 Returns host's system time in seconds since epoch.
11
12 @param host: an Autotest host object.
13 @returns a float, timestamp since epoch in <seconds>.<nanoseconds>.
14
15 @raises TestError: if error reading datetime or converting its value
16 from string to float.
17 """
18 r = host.run('date +%s.%N')
19 if r.exit_status > 0:
20 err = ('Error reading datetime from capturer (%r): %r' %
21 (r.exit_status, r.stderr))
22 raise error.TestError(err)
23 try:
24 return float(r.stdout)
25 except ValueError as e:
26 raise error.TestError('Error converting datetime string: %r', e)