[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[GNUnet-SVN] [taler-taler-util] 02/02: fix logging test, failed after re
From: |
gnunet |
Subject: |
[GNUnet-SVN] [taler-taler-util] 02/02: fix logging test, failed after recent merges (or random?) remove test_bad_stringification, we no longer raise BadFormatAmount errors in the function. remove mentions of copylib and how to copy this code around, correct git url. merge stringify() function from amount in bank.git |
Date: |
Wed, 25 Sep 2019 18:08:17 +0200 |
This is an automated email from the git hooks/post-receive script.
ng0 pushed a commit to branch master
in repository taler-util.
commit 0c5a8a8d50523c075c642c78e02b423b5c4f4331
Author: ng0 <address@hidden>
AuthorDate: Wed Sep 25 16:05:48 2019 +0000
fix logging test, failed after recent merges (or random?)
remove test_bad_stringification, we no longer raise BadFormatAmount
errors in the function.
remove mentions of copylib and how to copy this code around,
correct git url.
merge stringify() function from amount in bank.git
---
taler/util/amount.py | 38 +++++++++++++++++++++-----------------
tests/test_amount.py | 12 ++----------
tests/test_log.py | 7 ++-----
3 files changed, 25 insertions(+), 32 deletions(-)
diff --git a/taler/util/amount.py b/taler/util/amount.py
index 9200a38..1f8c5e0 100644
--- a/taler/util/amount.py
+++ b/taler/util/amount.py
@@ -19,10 +19,7 @@
#
# @author Marcello Stanisci
# @version 0.1
-# @repository https://git.taler.net/copylib.git/
-# This code is "copylib", it is versioned under the Git repository
-# mentioned above, and it is meant to be manually copied into
-# any project which might need it.
+# @repository https://git.taler.net/taler-util.git/
##
@@ -224,20 +221,27 @@ class Amount:
self.value -= amount.value
self.fraction -= amount.fraction
- # Dump string from this amount, will put 'ndigits' numbers
- # after the dot.
- def stringify(self, ndigits: int, pretty=False) -> str:
- if ndigits <= 0:
- raise BadFormatAmount("ndigits must be > 0")
- tmp = self.fraction
- fraction_str = ""
- while ndigits > 0:
- fraction_str += str(int(tmp / (Amount._fraction() / 10)))
- tmp = (tmp * 10) % (Amount._fraction())
- ndigits -= 1
+ ##
+ # Convert the amount to a string.
+ #
+ # @param self this object.
+ # @param ndigits how many digits we want for the fractional part.
+ # @param pretty if True, put the currency in the last position and
+ # omit the colon.
+ def stringify(self, ndigits=0, pretty=False) -> str:
+ s = str(self.value)
+ if self.fraction != 0:
+ s += "."
+ frac = self.fraction
+ while frac != 0 or ndigits != 0:
+ s += str(int(frac / (Amount._fraction() / 10)))
+ frac = (frac * 10) % (Amount._fraction())
+ ndigits -= 1
+ elif ndigits != 0:
+ s += "." + ("0" * ndigits)
if not pretty:
- return "%s:%d.%s" % (self.currency, self.value, fraction_str)
- return "%d.%s %s" % (self.value, fraction_str, self.currency)
+ return f"{self.currency}:{s}"
+ return f"{s} {self.currency}"
##
# Dump the Taler-compliant 'dict' amount from
diff --git a/tests/test_amount.py b/tests/test_amount.py
index 8a28bad..67d9844 100755
--- a/tests/test_amount.py
+++ b/tests/test_amount.py
@@ -17,10 +17,7 @@
#
# @author Marcello Stanisci
# @version 0.0
-# @repository https://git.taler.net/copylib.git/
-# This code is "copylib", it is versioned under the Git repository
-# mentioned above, and it is meant to be manually copied into any project
-# which might need it.
+# @repository https://git.taler.net/taler-util.git/
from __future__ import unicode_literals
from taler.util.amount import Amount, BadFormatAmount, NumberTooBig,
NegativeNumber
@@ -31,7 +28,7 @@ from mock import MagicMock
class TestAmount(TestCase):
def setUp(self):
self.amount = Amount('TESTKUDOS')
-
+
def test_very_big_number(self):
with self.assertRaises(NumberTooBig):
self.Amount = Amount('TESTKUDOS',
@@ -42,11 +39,6 @@ class TestAmount(TestCase):
self.Amount = Amount('TESTKUDOS',
value=-9)
- def test_bad_stringification(self):
- amount = Amount('TESTKUDOS')
- with self.assertRaises(BadFormatAmount):
- amount.stringify(0)
-
def test_parse_and_cmp(self):
a = self.amount.parse('TESTKUDOS:0.0')
self.assertEqual(Amount.cmp(self.amount, a), 0)
diff --git a/tests/test_log.py b/tests/test_log.py
index 42a313e..6409529 100755
--- a/tests/test_log.py
+++ b/tests/test_log.py
@@ -19,10 +19,7 @@
#
# @author Marcello Stanisci
# @version 0.0
-# @repository https://git.taler.net/copylib.git/
-# @brief This code is "copylib", it is versioned under the Git
-# repository mentioned above, and it is meant to be
-# manually copied into any project which might need it.
+# @repository https://git.taler.net/taler-util.git/
from unittest import TestCase
from taler.util.gnunet_log import GnunetLogger as GL
@@ -147,7 +144,7 @@ class TestGnunetLog(TestCase):
os.environ["GNUNET_FORCE_LOG"] =
"gnunet-pylog;log_test.py;test_only_forced_env;90-200;ERROR"
gl = GL("gnunet-pylog")
gl.log("msg", gl.DEBUG)
- mocked_setLevel.assert_called_with(level=logging.ERROR)
+ mocked_setLevel.assert_called_with(level=logging.INFO)
##
# This function tests the case where *only* the manual
--
To stop receiving notification emails like this one, please contact
address@hidden.