Mark Dickinson
e85aa739ab
Merged revisions 82646,82649-82650 via svnmerge from
...
svn+ssh://pythondev@svn.python.org/python/branches/py3k
........
r82646 | mark.dickinson | 2010-07-08 18:23:40 +0100 (Thu, 08 Jul 2010) | 1 line
In test_decimal, convert heuristic for skipping tests into an explicit skiplist.
........
r82649 | mark.dickinson | 2010-07-08 20:03:34 +0100 (Thu, 08 Jul 2010) | 1 line
Fix a performance issue in Decimal.pow. Thanks Stefan Krah for finding this.
........
r82650 | mark.dickinson | 2010-07-08 20:09:16 +0100 (Thu, 08 Jul 2010) | 1 line
Fix misplaced exactness check that was causing unnecessary work in Decimal.__pow__.
........
2010-07-08 19:24:40 +00:00
Mark Dickinson
4f96f5ffc6
Issue #8567 : Fix incorrect precedence of signals in Decimal module.
...
When a Decimal operation raises multiple signals and more than one of
those signals is trapped, the specification determines the order in
which the signals should be handled. In many cases this order wasn't
being followed, leading to the wrong Python exception being raised.
This commit fixes those cases, and adds extra tests. The tests are
only enabled when EXTENDEDERRORTESTS is True, since they involve
rerunning each Decimal testcase several times.
2010-05-04 14:25:50 +00:00
Mark Dickinson
16cd2bea1d
Fix incorrect use of a list as the target of an 'except' clause in test_decimal.py.
2010-05-01 11:46:20 +00:00
Ezio Melotti
856a3be76a
Use more specific assert* methods in test_decimal.
2010-04-03 14:51:00 +00:00
Raymond Hettinger
ed171abd93
Issue 8257: Decimal constructor to accept float.
2010-04-02 18:39:24 +00:00
Mark Dickinson
f3eeca16cb
Issue #7279 : Make Decimal('nan') hashable. Decimal('snan') remains unhashable.
...
Also rewrite the Decimal __hash__ method so that it doesn't rely on
float('inf') being valid: float('inf') could raise an exception on
platforms not using IEEE 754 arithmetic.
2010-04-02 10:35:12 +00:00
Mark Dickinson
e096e82e82
Issue #7279 : Make comparisons involving a Decimal sNaN signal InvalidOperation.
2010-04-02 10:17:07 +00:00
Mark Dickinson
99d8096c17
Issue #2531 : Make float-to-decimal comparisons return correct results.
...
Float to decimal comparison operations now return a result based on
the numeric values of the operands. Decimal.__hash__ has also been
fixed so that Decimal and float values that compare equal have equal
hash value.
2010-04-02 08:53:22 +00:00
Antoine Pitrou
6032c25063
Issue #8248 : Add some tests for the bool type. Patch by Gregory Nofi.
2010-03-30 18:49:45 +00:00
Florent Xicluna
8f43cec41b
Fix py3k warnings in test_decimal, using unittest.assertItemsEqual.
2010-03-21 10:51:40 +00:00
Mark Dickinson
6d8effb1fc
Issue #7633 : Context method in the decimal module (with the exception
...
of the 'canonical' and 'is_canonical' methods) now consistently accept
integer arguments wherever a Decimal instance is accepted. Thanks
Juan José Conti for the patch.
2010-02-18 14:27:02 +00:00
Georg Brandl
a4f46e1292
Remove unused imports in test modules.
2010-02-07 17:03:15 +00:00
Ezio Melotti
b0f5adc3f4
use assert[Not]IsInstance where appropriate
2010-01-24 16:58:36 +00:00
Ezio Melotti
aa98058cc4
use assert[Not]In where appropriate
2010-01-23 23:04:36 +00:00
Senthil Kumaran
ce8e33a095
Reverting the Revision: 77368. I committed Flox's big patch for tests by
...
mistake. ( It may come in for sure tough)
2010-01-08 19:04:16 +00:00
Senthil Kumaran
3ddc435af6
Fixing - Issue7026 - RuntimeError: dictionary changed size during iteration. Patch by flox
2010-01-08 18:41:40 +00:00
Mark Dickinson
0c67312c5c
Issue #7233 : A number of two-argument Decimal methods were failing to
...
accept ints and longs for the second argument.
2009-10-29 12:04:00 +00:00
Mark Dickinson
539bff4234
Update decimal test data to the most recent set from Mike Cowlishaw.
2009-10-08 16:28:39 +00:00
Mark Dickinson
5cfa8044ff
Issue #6857 : Fix Decimal formatting to be consistent with existing float
...
formatting: both are now right-aligned by default.
2009-09-08 20:20:19 +00:00
Mark Dickinson
968f1690d3
#Issue 6795: Fix infinite recursion in long(Decimal('nan')); change int(Decimal('nan')) to raise ValueError instead of either returning NaN or raising InvalidContext.
2009-09-07 18:04:58 +00:00
Mark Dickinson
491ea55f28
Issue #6850 : Fix bug in Decimal._parse_format_specifier for formats
...
with no type specifier.
2009-09-07 16:17:41 +00:00
Mark Dickinson
4326ad8f72
Issue #6595 : Allow Decimal constructor to accept non-European decimal
...
digits, as recommended by the specification. (Backport of r74279 from
py3k.)
2009-08-02 10:59:36 +00:00
Benjamin Peterson
5c8da86f3a
convert usage of fail* to assert*
2009-06-30 22:57:08 +00:00
Benjamin Peterson
bec087f29d
fix incorrect auto-translation of TestSkipped -> unittest.SkipTest
2009-03-26 21:10:30 +00:00
Benjamin Peterson
888a39b54c
remove test_support.TestSkipped and just use unittest.SkipTest
2009-03-26 20:48:25 +00:00
Mark Dickinson
b14514a153
Fix bug in _insert_thousands_sep: too much zero padding could be
...
added for 'n' formats with non-repeating thousands-separator.
2009-03-18 08:22:51 +00:00
Mark Dickinson
277859d591
Issue #2110 : Add support for thousands separator and 'n' format specifier
...
to Decimal __format__ method.
2009-03-17 23:03:46 +00:00
Mark Dickinson
b065e52bc2
Fix bug in Decimal __format__ method that swapped left and right
...
alignment.
2009-03-17 18:01:03 +00:00
Raymond Hettinger
2c8585b0af
Register decimals as numbers.Number
2009-02-03 03:37:03 +00:00
Mark Dickinson
da62f81d1d
Remove an unnecessary check from test_decimal.
2009-01-10 19:14:55 +00:00
Raymond Hettinger
f4d8597a59
Issue 4796: Add from_float methods to the decimal module.
2009-01-03 19:02:23 +00:00
Mark Dickinson
70c3289085
Replace occurrences of '\d' with '[0-9]' in Decimal regex, to make sure
...
that the behaviour of Decimal doesn't change if/when re.UNICODE becomes
assumed in Python 3.0.
Also add a check that alternative Unicode digits (e.g. u'\N{FULLWIDTH
DIGIT ONE}') are *not* accepted in a numeric string.
2008-07-02 09:37:01 +00:00
Facundo Batista
ee340e501d
Fixed some test structures. Thanks Mark Dickinson.
2008-05-02 17:39:00 +00:00
Benjamin Peterson
95287fa951
Remove some from __future__ import with_statements
2008-04-30 21:25:55 +00:00
Mark Dickinson
8e85ffa4b2
Issue #2482 : Make sure that the coefficient of a Decimal
...
instance is always stored as a str instance, even
when that Decimal has been created from a unicode string.
2008-03-25 18:47:59 +00:00
Mark Dickinson
3b24ccbe7e
Issue #2478 : Decimal(sqrt(0)) failed when the decimal context
...
was not explicitly supplied.
2008-03-25 14:33:23 +00:00
Facundo Batista
6415667fe2
Small fix that complicated the test actually when that
...
test failed.
2008-03-22 02:45:37 +00:00
Mark Dickinson
1ddf1d8482
Add __format__ method to Decimal, to support PEP 3101
2008-02-29 02:16:37 +00:00
Raymond Hettinger
abe3237187
Fix decimal repr which should have used single quotes like other reprs.
2008-02-14 02:41:22 +00:00
Mark Dickinson
2fc9263df5
Issue 1979: Make Decimal comparisons (other than !=, ==) involving NaN
...
raise InvalidOperation (and return False if InvalidOperation is trapped).
2008-02-06 22:10:50 +00:00
Jeffrey Yasskin
ca2b69f765
Move __builtins__.trunc() to math.trunc() per
...
http://mail.python.org/pipermail/python-dev/2008-January/076626.html and issue
1965.
2008-02-01 06:22:46 +00:00
Raymond Hettinger
5a05364049
Add support for trunc().
2008-01-24 19:05:29 +00:00
Mark Dickinson
59bc20bb27
Issue 1780: Allow leading and trailing whitespace in Decimal constructor,
...
when constructing from a string. Disallow trailing newlines in
Context.create_decimal.
2008-01-12 01:56:00 +00:00
Facundo Batista
52b25795c0
Issue #1757 : The hash of a Decimal instance is no longer affected
...
by the current context. Thanks Mark Dickinson.
2008-01-08 12:25:20 +00:00
Facundo Batista
72bc54faed
Major change in the internal structure of the Decimal
...
number: now it does not store the mantissa as a tuple
of numbers, but as a string.
This avoids a lot of conversions, and achieves a
speedup of 40%. The API remains intact.
Thanks Mark Dickinson.
2007-11-23 17:59:00 +00:00
Facundo Batista
9b5e23148b
The constructor from tuple was way too permissive: it allowed bad
...
coefficient numbers, floats in the sign, and other details that
generated directly the wrong number in the best case, or triggered
misfunctionality in the alorithms.
Test cases added for these issues. Thanks Mark Dickinson.
2007-10-19 19:25:57 +00:00
Facundo Batista
1a191df14d
Made the various is_* operations return booleans. This was discussed
...
with Cawlishaw by mail, and he basically confirmed that to these is_*
operations, there's no need to return Decimal(0) and Decimal(1) if
the language supports the False and True booleans.
Also added a few tests for the these functions in extra.decTest, since
they are mostly untested (apart from the doctests).
Thanks Mark Dickinson
2007-10-02 17:01:24 +00:00
Facundo Batista
8c20244069
Issue #1772851 . Optimization of __hash__ to behave better for big big
...
numbers.
2007-09-19 17:53:25 +00:00
Thomas Wouters
b3e6e8c895
Fix obvious typo in threaded test.
2007-09-19 17:27:29 +00:00
Facundo Batista
6c398da0e7
The methods always return Decimal classes, even if they're
...
executed through a subclass (thanks Mark Dickinson).
Added a bit of testing for this.
2007-09-17 17:30:13 +00:00