def testCanDetectDecimalWithPoint(self): self.assertEqual( _tools.numbered("123.45"), (_tools.NUMBER_DECIMAL_POINT, False, decimal.Decimal("123.45"))) self.assertEqual( _tools.numbered("123,456.78"), (_tools.NUMBER_DECIMAL_POINT, True, decimal.Decimal("123456.78")))
def testCanDetectDecimalWithComma(self): actual = _tools.numbered("123,45", decimalSeparator=",", thousandsSeparator=".") expected = (_tools.NUMBER_DECIMAL_COMMA, False, decimal.Decimal("123.45")) self.assertEqual(actual, expected) actual = _tools.numbered("123.456,78", decimalSeparator=",", thousandsSeparator=".") expected = (_tools.NUMBER_DECIMAL_COMMA, True, decimal.Decimal("123456.78")) self.assertEqual(actual, expected)
def _numberType(self, value): assert value is not None assert len(value) > 0, "empty values must be handled by caller" resultType, resultUsesThousandsSeparator, _ = _tools.numbered(value) if resultType == None: resultType, resultUsesThousandsSeparator, _ = _tools.numbered(value, ",", ".") return resultType, resultUsesThousandsSeparator
def testCanDetectInteger(self): self.assertEqual(_tools.numbered("123"), (_tools.NUMBER_INTEGER, False, 123))
def testCanDetectNoneNumber(self): self.assertEqual(_tools.numbered(u"123abc"), (None, False, u"123abc")) self.assertEqual(_tools.numbered(u"01.02.2014"), (None, False, u"01.02.2014"))
def testCanDetectDecimalWithPoint(self): self.assertEqual(_tools.numbered("123.45"), (_tools.NUMBER_DECIMAL_POINT, False, decimal.Decimal("123.45"))) self.assertEqual(_tools.numbered("123,456.78"), (_tools.NUMBER_DECIMAL_POINT, True, decimal.Decimal("123456.78")))