| Index: infra_libs/time_functions/parser.py
|
| diff --git a/infra_libs/time_functions/parser.py b/infra_libs/time_functions/parser.py
|
| deleted file mode 100644
|
| index dacc7c335f1b7d82853cefcfcaab19d21053d8cb..0000000000000000000000000000000000000000
|
| --- a/infra_libs/time_functions/parser.py
|
| +++ /dev/null
|
| @@ -1,59 +0,0 @@
|
| -# Copyright 2016 The Chromium Authors. All rights reserved.
|
| -# Use of this source code is governed by a BSD-style license that can be
|
| -# found in the LICENSE file.
|
| -
|
| -"""Utility functions to parse time/duration arguments."""
|
| -
|
| -
|
| -import argparse
|
| -import datetime
|
| -import re
|
| -
|
| -
|
| -_TIMEDELTA_CONV = {
|
| - 'us': datetime.timedelta(microseconds=1),
|
| - 'ms': datetime.timedelta(milliseconds=1),
|
| - 's': datetime.timedelta(seconds=1),
|
| - 'm': datetime.timedelta(minutes=1),
|
| - 'h': datetime.timedelta(hours=1),
|
| - 'd': datetime.timedelta(days=1),
|
| -}
|
| -_TIMEDELTA_RE = re.compile(r'(\d+)(\w+)')
|
| -
|
| -
|
| -def parse_timedelta(v):
|
| - """Returns (datetime.timedelta) The parsed timedelta.
|
| -
|
| - Args:
|
| - v (str): The time delta string, a comma-delimited set of <count><unit>
|
| - tokens comprising the timedelta (e.g., 10d,2h is 10 days, 2 hours).
|
| -
|
| - Raises:
|
| - ValueError: If parsing failed.
|
| - """
|
| - result = datetime.timedelta()
|
| - for comp in v.split(','):
|
| - match = _TIMEDELTA_RE.match(comp)
|
| - if match is None:
|
| - raise ValueError('Invalid timedelta token (%s)' % (comp,))
|
| - count, unit = int(match.group(1)), match.group(2)
|
| - unit_value = _TIMEDELTA_CONV.get(unit)
|
| - if unit_value is None:
|
| - raise ValueError('Invalid timedelta token unit (%s)' % (unit,))
|
| - result += (unit_value * count)
|
| - return result
|
| -
|
| -
|
| -def argparse_timedelta_type(v):
|
| - """Returns (datetime.timedelta) The parsed timedelta.
|
| -
|
| - This is an argparse-compatible version of `parse_timedelta` that raises an
|
| - argparse.ArgumentTypeError on failure instead of a ValueError.
|
| -
|
| - Raises:
|
| - argparse.ArgumentTypeError: If parsing failed.
|
| - """
|
| - try:
|
| - return parse_timedelta(v)
|
| - except ValueError as e:
|
| - raise argparse.ArgumentTypeError(e.message)
|
|
|