Esempio n. 1
0
  def __init__(self, expression, element=None, assume_minutes=True):
    self.element = element
    self.expression = self.value = None
    if expression is not None:
      expr = replace_unicode_fractions(expression)
      self.value = Convert.convert_number(expr, assume_minutes)
      if self.value is None:
        expr = expr.lower()
        unit_match = _ANY_UNIT.match(expr)

        if unit_match:
          expr, unit = unit_match.groups()
          self.unit_converter = Units.UNITS.get(unit)
        else:
          self.unit_converter = None

        self.expression = RawExpression.RawExpression(expr, element)
Esempio n. 2
0
    def __init__(self, expression, element=None, assume_minutes=True):
        self.original_expression = expression
        self.element = element
        self.expression = self.value = None
        if expression is not None:
            expr = replace_unicode_fractions(expression)
            self.value = Convert.convert_number(expr, assume_minutes)
            if self.value is None:
                expr = expr.lower()
                unit_match = _ANY_UNIT.match(expr)

                if unit_match:
                    expr, unit = unit_match.groups()
                    self.unit_converter = Units.UNITS.get(unit)
                else:
                    self.unit_converter = None

                self.expression = RawExpression.RawExpression(expr, element)
Esempio n. 3
0
 def test_time_one_hour_and_change(self):
     self.assertNear(Convert.convert_time('1:01:00.12'), 3660.12)
Esempio n. 4
0
 def test_time_one_hour(self):
     self.assertNear(Convert.convert_time('0:01:00.12'), 60.12)
Esempio n. 5
0
 def test_time_one_minute(self):
     self.assertNear(Convert.convert_time('0:01:00'), 60)
Esempio n. 6
0
 def test_time_one(self):
     self.assertNear(Convert.convert_time('0:01'), 1)
Esempio n. 7
0
 def test_time_zero(self):
     self.assertNear(Convert.convert_time('0:00'), 0)
Esempio n. 8
0
 def test_zero_not_time2(self):
     self.assertIs(Convert.convert_time('0'), None)