cpython/Lib/test/decimaltestdata/maxmag.decTest

405 lines
17 KiB
Plaintext
Raw Normal View History

Merged revisions 58095-58132,58136-58148,58151-58197 via svnmerge from svn+ssh://pythondev@svn.python.org/python/trunk ........ r58096 | brett.cannon | 2007-09-10 23:38:27 +0200 (Mon, 10 Sep 2007) | 4 lines Fix a possible segfault from recursing too deep to get the repr of a list. Closes issue #1096. ........ r58097 | bill.janssen | 2007-09-10 23:51:02 +0200 (Mon, 10 Sep 2007) | 33 lines More work on SSL support. * Much expanded test suite: All protocols tested against all other protocols. All protocols tested with all certificate options. Tests for bad key and bad cert. Test of STARTTLS functionality. Test of RAND_* functions. * Fixes for threading/malloc bug. * Issue 1065 fixed: sslsocket class renamed to SSLSocket. sslerror class renamed to SSLError. Function "wrap_socket" now used to wrap an existing socket. * Issue 1583946 finally fixed: Support for subjectAltName added. Subject name now returned as proper DN list of RDNs. * SSLError exported from socket as "sslerror". * RAND_* functions properly exported from ssl.py. * Documentation improved: Example of how to create a self-signed certificate. Better indexing. ........ r58098 | guido.van.rossum | 2007-09-11 00:02:25 +0200 (Tue, 11 Sep 2007) | 9 lines Patch # 1140 (my code, approved by Effbot). Make sure the type of the return value of re.sub(x, y, z) is the type of y+x (i.e. unicode if either is unicode, str if they are both str) even if there are no substitutions or if x==z (which triggered various special cases in join_list()). Could be backported to 2.5; no need to port to 3.0. ........ r58099 | guido.van.rossum | 2007-09-11 00:36:02 +0200 (Tue, 11 Sep 2007) | 8 lines Patch # 1026 by Benjamin Aranguren (with Alex Martelli): Backport abc.py and isinstance/issubclass overloading to 2.6. I had to backport test_typechecks.py myself, and make one small change to abc.py to avoid duplicate work when x.__class__ and type(x) are the same. ........ r58100 | bill.janssen | 2007-09-11 01:41:24 +0200 (Tue, 11 Sep 2007) | 3 lines A better way of finding an open port to test with. ........ r58101 | bill.janssen | 2007-09-11 03:09:19 +0200 (Tue, 11 Sep 2007) | 4 lines Make sure test_ssl doesn't reference the ssl module in a context where it can't be imported. ........ r58102 | bill.janssen | 2007-09-11 04:42:07 +0200 (Tue, 11 Sep 2007) | 3 lines Fix some documentation bugs. ........ r58103 | nick.coghlan | 2007-09-11 16:01:18 +0200 (Tue, 11 Sep 2007) | 1 line Always use the -E flag when spawning subprocesses in test_cmd_line (Issue 1056) ........ r58106 | thomas.heller | 2007-09-11 21:17:48 +0200 (Tue, 11 Sep 2007) | 3 lines Disable some tests that fail on the 'ppc Debian unstable' buildbot to find out if they cause the segfault on the 'alpha Debian' machine. ........ r58108 | brett.cannon | 2007-09-11 23:02:28 +0200 (Tue, 11 Sep 2007) | 6 lines Generators had their throw() method allowing string exceptions. That's a no-no. Fixes issue #1147. Need to fix 2.5 to raise a proper warning if a string exception is passed in. ........ r58112 | georg.brandl | 2007-09-12 20:03:51 +0200 (Wed, 12 Sep 2007) | 3 lines New documentation page for the bdb module. (This doesn't need to be merged to Py3k.) ........ r58114 | georg.brandl | 2007-09-12 20:05:57 +0200 (Wed, 12 Sep 2007) | 2 lines Bug #1152: use non-deprecated name in example. ........ r58115 | georg.brandl | 2007-09-12 20:08:33 +0200 (Wed, 12 Sep 2007) | 2 lines Fix #1122: wrong return type documented for various _Size() functions. ........ r58117 | georg.brandl | 2007-09-12 20:10:56 +0200 (Wed, 12 Sep 2007) | 2 lines Fix #1139: PyFile_Encoding really is PyFile_SetEncoding. ........ r58119 | georg.brandl | 2007-09-12 20:29:18 +0200 (Wed, 12 Sep 2007) | 2 lines bug #1154: release memory allocated by "es" PyArg_ParseTuple format specifier. ........ r58121 | bill.janssen | 2007-09-12 20:52:05 +0200 (Wed, 12 Sep 2007) | 1 line root certificate for https://svn.python.org/, used in test_ssl ........ r58122 | georg.brandl | 2007-09-12 21:00:07 +0200 (Wed, 12 Sep 2007) | 3 lines Bug #1153: repr.repr() now doesn't require set and dictionary items to be orderable to properly represent them. ........ r58125 | georg.brandl | 2007-09-12 21:29:28 +0200 (Wed, 12 Sep 2007) | 4 lines #1120: put explicit version in the shebang lines of pydoc, idle and smtpd.py scripts that are installed by setup.py. That way, they work when only "make altinstall" is used. ........ r58139 | mark.summerfield | 2007-09-13 16:54:30 +0200 (Thu, 13 Sep 2007) | 9 lines Replaced variable o with obj in operator.rst because o is easy to confuse. Added a note about Python 3's collections.Mapping etc., above section that describes isMappingType() etc. Added xrefs between os, os.path, fileinput, and open(). ........ r58143 | facundo.batista | 2007-09-13 20:13:15 +0200 (Thu, 13 Sep 2007) | 7 lines Merged the decimal-branch (revisions 54886 to 58140). Decimal is now fully updated to the latests Decimal Specification (v1.66) and the latests test cases (v2.56). Thanks to Mark Dickinson for all his help during this process. ........ r58145 | facundo.batista | 2007-09-13 20:42:09 +0200 (Thu, 13 Sep 2007) | 7 lines Put the parameter watchexp back in (changed watchexp from an int to a bool). Also second argument to watchexp is now converted to Decimal, just as with all the other two-argument operations. Thanks Mark Dickinson. ........ r58147 | andrew.kuchling | 2007-09-14 00:49:34 +0200 (Fri, 14 Sep 2007) | 1 line Add various items ........ r58148 | andrew.kuchling | 2007-09-14 00:50:10 +0200 (Fri, 14 Sep 2007) | 1 line Make target unique ........ r58154 | facundo.batista | 2007-09-14 20:58:34 +0200 (Fri, 14 Sep 2007) | 3 lines Included the new functions, and new descriptions. ........ r58155 | thomas.heller | 2007-09-14 21:40:35 +0200 (Fri, 14 Sep 2007) | 2 lines ctypes.util.find_library uses dump(1) instead of objdump(1) on Solaris. Fixes issue #1777530; will backport to release25-maint. ........ r58159 | facundo.batista | 2007-09-14 23:29:52 +0200 (Fri, 14 Sep 2007) | 3 lines Some additions (examples and a bit on the tutorial). ........ r58160 | georg.brandl | 2007-09-15 18:53:36 +0200 (Sat, 15 Sep 2007) | 2 lines Remove bdb from the "undocumented modules" list. ........ r58164 | bill.janssen | 2007-09-17 00:06:00 +0200 (Mon, 17 Sep 2007) | 15 lines Add support for asyncore server-side SSL support. This requires adding the 'makefile' method to ssl.SSLSocket, and importing the requisite fakefile class from socket.py, and making the appropriate changes to it to make it use the SSL connection. Added sample HTTPS server to test_ssl.py, and test that uses it. Change SSL tests to use https://svn.python.org/, instead of www.sf.net and pop.gmail.com. Added utility function to ssl module, get_server_certificate, to wrap up the several things to be done to pull a certificate from a remote server. ........ r58173 | bill.janssen | 2007-09-17 01:16:46 +0200 (Mon, 17 Sep 2007) | 1 line use binary mode when reading files for testAsyncore to make Windows happy ........ r58175 | raymond.hettinger | 2007-09-17 02:55:00 +0200 (Mon, 17 Sep 2007) | 7 lines Sync-up named tuples with the latest version of the ASPN recipe. Allows optional commas in the field-name spec (help when named tuples are used in conjuction with sql queries). Adds the __fields__ attribute for introspection and to support conversion to dictionary form. Adds a __replace__() method similar to str.replace() but using a named field as a target. Clean-up spelling and presentation in doc-strings. ........ r58176 | brett.cannon | 2007-09-17 05:28:34 +0200 (Mon, 17 Sep 2007) | 5 lines Add a bunch of GIL release/acquire points in tp_print implementations and for PyObject_Print(). Closes issue #1164. ........ r58177 | sean.reifschneider | 2007-09-17 07:45:04 +0200 (Mon, 17 Sep 2007) | 2 lines issue1597011: Fix for bz2 module corner-case error due to error checking bug. ........ r58180 | facundo.batista | 2007-09-17 18:26:50 +0200 (Mon, 17 Sep 2007) | 3 lines Decimal is updated, :) ........ r58181 | facundo.batista | 2007-09-17 19:30:13 +0200 (Mon, 17 Sep 2007) | 5 lines The methods always return Decimal classes, even if they're executed through a subclass (thanks Mark Dickinson). Added a bit of testing for this. ........ r58183 | sean.reifschneider | 2007-09-17 22:53:21 +0200 (Mon, 17 Sep 2007) | 2 lines issue1082: Fixing platform and system for Vista. ........ r58185 | andrew.kuchling | 2007-09-18 03:36:16 +0200 (Tue, 18 Sep 2007) | 1 line Add item; sort properly ........ r58186 | raymond.hettinger | 2007-09-18 05:33:19 +0200 (Tue, 18 Sep 2007) | 1 line Handle corner cased on 0-tuples and 1-tuples. Add verbose option so people can see how it works. ........ r58192 | georg.brandl | 2007-09-18 09:24:40 +0200 (Tue, 18 Sep 2007) | 2 lines A bit of reordering, also show more subheadings in the lang ref index. ........ r58193 | facundo.batista | 2007-09-18 18:53:18 +0200 (Tue, 18 Sep 2007) | 4 lines Speed up of the various division operations (remainder, divide, divideint and divmod). Thanks Mark Dickinson. ........ r58197 | raymond.hettinger | 2007-09-19 00:18:02 +0200 (Wed, 19 Sep 2007) | 1 line Cleanup docs for NamedTuple. ........
2007-09-19 00:06:30 -03:00
------------------------------------------------------------------------
-- maxmag.decTest -- decimal maximum by magnitude --
-- Copyright (c) IBM Corporation, 1981, 2007. All rights reserved. --
------------------------------------------------------------------------
-- Please see the document "General Decimal Arithmetic Testcases" --
-- at http://www2.hursley.ibm.com/decimal for the description of --
-- these testcases. --
-- --
-- These testcases are experimental ('beta' versions), and they --
-- may contain errors. They are offered on an as-is basis. In --
-- particular, achieving the same results as the tests here is not --
-- a guarantee that an implementation complies with any Standard --
-- or specification. The tests are not exhaustive. --
-- --
-- Please send comments, suggestions, and corrections to the author: --
-- Mike Cowlishaw, IBM Fellow --
-- IBM UK, PO Box 31, Birmingham Road, Warwick CV34 5JL, UK --
-- mfc@uk.ibm.com --
------------------------------------------------------------------------
version: 2.56
-- we assume that base comparison is tested in compare.decTest, so
-- these mainly cover special cases and rounding
extended: 1
precision: 9
rounding: half_up
maxExponent: 384
minexponent: -383
-- sanity checks
mxgx001 maxmag -2 -2 -> -2
mxgx002 maxmag -2 -1 -> -2
mxgx003 maxmag -2 0 -> -2
mxgx004 maxmag -2 1 -> -2
mxgx005 maxmag -2 2 -> 2
mxgx006 maxmag -1 -2 -> -2
mxgx007 maxmag -1 -1 -> -1
mxgx008 maxmag -1 0 -> -1
mxgx009 maxmag -1 1 -> 1
mxgx010 maxmag -1 2 -> 2
mxgx011 maxmag 0 -2 -> -2
mxgx012 maxmag 0 -1 -> -1
mxgx013 maxmag 0 0 -> 0
mxgx014 maxmag 0 1 -> 1
mxgx015 maxmag 0 2 -> 2
mxgx016 maxmag 1 -2 -> -2
mxgx017 maxmag 1 -1 -> 1
mxgx018 maxmag 1 0 -> 1
mxgx019 maxmag 1 1 -> 1
mxgx020 maxmag 1 2 -> 2
mxgx021 maxmag 2 -2 -> 2
mxgx022 maxmag 2 -1 -> 2
mxgx023 maxmag 2 0 -> 2
mxgx025 maxmag 2 1 -> 2
mxgx026 maxmag 2 2 -> 2
-- extended zeros
mxgx030 maxmag 0 0 -> 0
mxgx031 maxmag 0 -0 -> 0
mxgx032 maxmag 0 -0.0 -> 0
mxgx033 maxmag 0 0.0 -> 0
mxgx034 maxmag -0 0 -> 0 -- note: -0 = 0, but 0 chosen
mxgx035 maxmag -0 -0 -> -0
mxgx036 maxmag -0 -0.0 -> -0.0
mxgx037 maxmag -0 0.0 -> 0.0
mxgx038 maxmag 0.0 0 -> 0
mxgx039 maxmag 0.0 -0 -> 0.0
mxgx040 maxmag 0.0 -0.0 -> 0.0
mxgx041 maxmag 0.0 0.0 -> 0.0
mxgx042 maxmag -0.0 0 -> 0
mxgx043 maxmag -0.0 -0 -> -0.0
mxgx044 maxmag -0.0 -0.0 -> -0.0
mxgx045 maxmag -0.0 0.0 -> 0.0
mxgx050 maxmag -0E1 0E1 -> 0E+1
mxgx051 maxmag -0E2 0E2 -> 0E+2
mxgx052 maxmag -0E2 0E1 -> 0E+1
mxgx053 maxmag -0E1 0E2 -> 0E+2
mxgx054 maxmag 0E1 -0E1 -> 0E+1
mxgx055 maxmag 0E2 -0E2 -> 0E+2
mxgx056 maxmag 0E2 -0E1 -> 0E+2
mxgx057 maxmag 0E1 -0E2 -> 0E+1
mxgx058 maxmag 0E1 0E1 -> 0E+1
mxgx059 maxmag 0E2 0E2 -> 0E+2
mxgx060 maxmag 0E2 0E1 -> 0E+2
mxgx061 maxmag 0E1 0E2 -> 0E+2
mxgx062 maxmag -0E1 -0E1 -> -0E+1
mxgx063 maxmag -0E2 -0E2 -> -0E+2
mxgx064 maxmag -0E2 -0E1 -> -0E+1
mxgx065 maxmag -0E1 -0E2 -> -0E+1
-- Specials
precision: 9
mxgx090 maxmag Inf -Inf -> Infinity
mxgx091 maxmag Inf -1000 -> Infinity
mxgx092 maxmag Inf -1 -> Infinity
mxgx093 maxmag Inf -0 -> Infinity
mxgx094 maxmag Inf 0 -> Infinity
mxgx095 maxmag Inf 1 -> Infinity
mxgx096 maxmag Inf 1000 -> Infinity
mxgx097 maxmag Inf Inf -> Infinity
mxgx098 maxmag -1000 Inf -> Infinity
mxgx099 maxmag -Inf Inf -> Infinity
mxgx100 maxmag -1 Inf -> Infinity
mxgx101 maxmag -0 Inf -> Infinity
mxgx102 maxmag 0 Inf -> Infinity
mxgx103 maxmag 1 Inf -> Infinity
mxgx104 maxmag 1000 Inf -> Infinity
mxgx105 maxmag Inf Inf -> Infinity
mxgx120 maxmag -Inf -Inf -> -Infinity
mxgx121 maxmag -Inf -1000 -> -Infinity
mxgx122 maxmag -Inf -1 -> -Infinity
mxgx123 maxmag -Inf -0 -> -Infinity
mxgx124 maxmag -Inf 0 -> -Infinity
mxgx125 maxmag -Inf 1 -> -Infinity
mxgx126 maxmag -Inf 1000 -> -Infinity
mxgx127 maxmag -Inf Inf -> Infinity
mxgx128 maxmag -Inf -Inf -> -Infinity
mxgx129 maxmag -1000 -Inf -> -Infinity
mxgx130 maxmag -1 -Inf -> -Infinity
mxgx131 maxmag -0 -Inf -> -Infinity
mxgx132 maxmag 0 -Inf -> -Infinity
mxgx133 maxmag 1 -Inf -> -Infinity
mxgx134 maxmag 1000 -Inf -> -Infinity
mxgx135 maxmag Inf -Inf -> Infinity
-- 2004.08.02 754r chooses number over NaN in mixed cases
mxgx141 maxmag NaN -Inf -> -Infinity
mxgx142 maxmag NaN -1000 -> -1000
mxgx143 maxmag NaN -1 -> -1
mxgx144 maxmag NaN -0 -> -0
mxgx145 maxmag NaN 0 -> 0
mxgx146 maxmag NaN 1 -> 1
mxgx147 maxmag NaN 1000 -> 1000
mxgx148 maxmag NaN Inf -> Infinity
mxgx149 maxmag NaN NaN -> NaN
mxgx150 maxmag -Inf NaN -> -Infinity
mxgx151 maxmag -1000 NaN -> -1000
mxgx152 maxmag -1 NaN -> -1
mxgx153 maxmag -0 NaN -> -0
mxgx154 maxmag 0 NaN -> 0
mxgx155 maxmag 1 NaN -> 1
mxgx156 maxmag 1000 NaN -> 1000
mxgx157 maxmag Inf NaN -> Infinity
mxgx161 maxmag sNaN -Inf -> NaN Invalid_operation
mxgx162 maxmag sNaN -1000 -> NaN Invalid_operation
mxgx163 maxmag sNaN -1 -> NaN Invalid_operation
mxgx164 maxmag sNaN -0 -> NaN Invalid_operation
mxgx165 maxmag sNaN 0 -> NaN Invalid_operation
mxgx166 maxmag sNaN 1 -> NaN Invalid_operation
mxgx167 maxmag sNaN 1000 -> NaN Invalid_operation
mxgx168 maxmag sNaN NaN -> NaN Invalid_operation
mxgx169 maxmag sNaN sNaN -> NaN Invalid_operation
mxgx170 maxmag NaN sNaN -> NaN Invalid_operation
mxgx171 maxmag -Inf sNaN -> NaN Invalid_operation
mxgx172 maxmag -1000 sNaN -> NaN Invalid_operation
mxgx173 maxmag -1 sNaN -> NaN Invalid_operation
mxgx174 maxmag -0 sNaN -> NaN Invalid_operation
mxgx175 maxmag 0 sNaN -> NaN Invalid_operation
mxgx176 maxmag 1 sNaN -> NaN Invalid_operation
mxgx177 maxmag 1000 sNaN -> NaN Invalid_operation
mxgx178 maxmag Inf sNaN -> NaN Invalid_operation
mxgx179 maxmag NaN sNaN -> NaN Invalid_operation
-- propagating NaNs
mxgx181 maxmag NaN9 -Inf -> -Infinity
mxgx182 maxmag NaN8 9 -> 9
mxgx183 maxmag -NaN7 Inf -> Infinity
mxgx184 maxmag -NaN1 NaN11 -> -NaN1
mxgx185 maxmag NaN2 NaN12 -> NaN2
mxgx186 maxmag -NaN13 -NaN7 -> -NaN13
mxgx187 maxmag NaN14 -NaN5 -> NaN14
mxgx188 maxmag -Inf NaN4 -> -Infinity
mxgx189 maxmag -9 -NaN3 -> -9
mxgx190 maxmag Inf NaN2 -> Infinity
mxgx191 maxmag sNaN99 -Inf -> NaN99 Invalid_operation
mxgx192 maxmag sNaN98 -1 -> NaN98 Invalid_operation
mxgx193 maxmag -sNaN97 NaN -> -NaN97 Invalid_operation
mxgx194 maxmag sNaN96 sNaN94 -> NaN96 Invalid_operation
mxgx195 maxmag NaN95 sNaN93 -> NaN93 Invalid_operation
mxgx196 maxmag -Inf sNaN92 -> NaN92 Invalid_operation
mxgx197 maxmag 0 sNaN91 -> NaN91 Invalid_operation
mxgx198 maxmag Inf -sNaN90 -> -NaN90 Invalid_operation
mxgx199 maxmag NaN sNaN89 -> NaN89 Invalid_operation
-- rounding checks
maxexponent: 999
minexponent: -999
precision: 9
mxgx201 maxmag 12345678000 1 -> 1.23456780E+10 Rounded
mxgx202 maxmag 1 12345678000 -> 1.23456780E+10 Rounded
mxgx203 maxmag 1234567800 1 -> 1.23456780E+9 Rounded
mxgx204 maxmag 1 1234567800 -> 1.23456780E+9 Rounded
mxgx205 maxmag 1234567890 1 -> 1.23456789E+9 Rounded
mxgx206 maxmag 1 1234567890 -> 1.23456789E+9 Rounded
mxgx207 maxmag 1234567891 1 -> 1.23456789E+9 Inexact Rounded
mxgx208 maxmag 1 1234567891 -> 1.23456789E+9 Inexact Rounded
mxgx209 maxmag 12345678901 1 -> 1.23456789E+10 Inexact Rounded
mxgx210 maxmag 1 12345678901 -> 1.23456789E+10 Inexact Rounded
mxgx211 maxmag 1234567896 1 -> 1.23456790E+9 Inexact Rounded
mxgx212 maxmag 1 1234567896 -> 1.23456790E+9 Inexact Rounded
mxgx213 maxmag -1234567891 1 -> -1.23456789E+9 Inexact Rounded
mxgx214 maxmag 1 -1234567891 -> -1.23456789E+9 Inexact Rounded
mxgx215 maxmag -12345678901 1 -> -1.23456789E+10 Inexact Rounded
mxgx216 maxmag 1 -12345678901 -> -1.23456789E+10 Inexact Rounded
mxgx217 maxmag -1234567896 1 -> -1.23456790E+9 Inexact Rounded
mxgx218 maxmag 1 -1234567896 -> -1.23456790E+9 Inexact Rounded
precision: 15
mxgx221 maxmag 12345678000 1 -> 12345678000
mxgx222 maxmag 1 12345678000 -> 12345678000
mxgx223 maxmag 1234567800 1 -> 1234567800
mxgx224 maxmag 1 1234567800 -> 1234567800
mxgx225 maxmag 1234567890 1 -> 1234567890
mxgx226 maxmag 1 1234567890 -> 1234567890
mxgx227 maxmag 1234567891 1 -> 1234567891
mxgx228 maxmag 1 1234567891 -> 1234567891
mxgx229 maxmag 12345678901 1 -> 12345678901
mxgx230 maxmag 1 12345678901 -> 12345678901
mxgx231 maxmag 1234567896 1 -> 1234567896
mxgx232 maxmag 1 1234567896 -> 1234567896
mxgx233 maxmag -1234567891 1 -> -1234567891
mxgx234 maxmag 1 -1234567891 -> -1234567891
mxgx235 maxmag -12345678901 1 -> -12345678901
mxgx236 maxmag 1 -12345678901 -> -12345678901
mxgx237 maxmag -1234567896 1 -> -1234567896
mxgx238 maxmag 1 -1234567896 -> -1234567896
-- from examples
mxgx280 maxmag '3' '2' -> '3'
mxgx281 maxmag '-10' '3' -> '-10'
mxgx282 maxmag '1.0' '1' -> '1'
mxgx283 maxmag '1' '1.0' -> '1'
mxgx284 maxmag '7' 'NaN' -> '7'
-- overflow and underflow tests ...
maxExponent: 999999999
minexponent: -999999999
mxgx330 maxmag +1.23456789012345E-0 9E+999999999 -> 9E+999999999
mxgx331 maxmag 9E+999999999 +1.23456789012345E-0 -> 9E+999999999
mxgx332 maxmag +0.100 9E-999999999 -> 0.100
mxgx333 maxmag 9E-999999999 +0.100 -> 0.100
mxgx335 maxmag -1.23456789012345E-0 9E+999999999 -> 9E+999999999
mxgx336 maxmag 9E+999999999 -1.23456789012345E-0 -> 9E+999999999
mxgx337 maxmag -0.100 9E-999999999 -> -0.100
mxgx338 maxmag 9E-999999999 -0.100 -> -0.100
mxgx339 maxmag 1e-599999999 1e-400000001 -> 1E-400000001
mxgx340 maxmag 1e-599999999 1e-400000000 -> 1E-400000000
mxgx341 maxmag 1e-600000000 1e-400000000 -> 1E-400000000
mxgx342 maxmag 9e-999999998 0.01 -> 0.01
mxgx343 maxmag 9e-999999998 0.1 -> 0.1
mxgx344 maxmag 0.01 9e-999999998 -> 0.01
mxgx345 maxmag 1e599999999 1e400000001 -> 1E+599999999
mxgx346 maxmag 1e599999999 1e400000000 -> 1E+599999999
mxgx347 maxmag 1e600000000 1e400000000 -> 1E+600000000
mxgx348 maxmag 9e999999998 100 -> 9E+999999998
mxgx349 maxmag 9e999999998 10 -> 9E+999999998
mxgx350 maxmag 100 9e999999998 -> 9E+999999998
-- signs
mxgx351 maxmag 1e+777777777 1e+411111111 -> 1E+777777777
mxgx352 maxmag 1e+777777777 -1e+411111111 -> 1E+777777777
mxgx353 maxmag -1e+777777777 1e+411111111 -> -1E+777777777
mxgx354 maxmag -1e+777777777 -1e+411111111 -> -1E+777777777
mxgx355 maxmag 1e-777777777 1e-411111111 -> 1E-411111111
mxgx356 maxmag 1e-777777777 -1e-411111111 -> -1E-411111111
mxgx357 maxmag -1e-777777777 1e-411111111 -> 1E-411111111
mxgx358 maxmag -1e-777777777 -1e-411111111 -> -1E-411111111
-- expanded list from min/max 754r purple prose
-- [explicit tests for exponent ordering]
mxgx401 maxmag Inf 1.1 -> Infinity
mxgx402 maxmag 1.1 1 -> 1.1
mxgx403 maxmag 1 1.0 -> 1
mxgx404 maxmag 1.0 0.1 -> 1.0
mxgx405 maxmag 0.1 0.10 -> 0.1
mxgx406 maxmag 0.10 0.100 -> 0.10
mxgx407 maxmag 0.10 0 -> 0.10
mxgx408 maxmag 0 0.0 -> 0
mxgx409 maxmag 0.0 -0 -> 0.0
mxgx410 maxmag 0.0 -0.0 -> 0.0
mxgx411 maxmag 0.00 -0.0 -> 0.00
mxgx412 maxmag 0.0 -0.00 -> 0.0
mxgx413 maxmag 0 -0.0 -> 0
mxgx414 maxmag 0 -0 -> 0
mxgx415 maxmag -0.0 -0 -> -0.0
mxgx416 maxmag -0 -0.100 -> -0.100
mxgx417 maxmag -0.100 -0.10 -> -0.100
mxgx418 maxmag -0.10 -0.1 -> -0.10
mxgx419 maxmag -0.1 -1.0 -> -1.0
mxgx420 maxmag -1.0 -1 -> -1.0
mxgx421 maxmag -1 -1.1 -> -1.1
mxgx423 maxmag -1.1 -Inf -> -Infinity
-- same with operands reversed
mxgx431 maxmag 1.1 Inf -> Infinity
mxgx432 maxmag 1 1.1 -> 1.1
mxgx433 maxmag 1.0 1 -> 1
mxgx434 maxmag 0.1 1.0 -> 1.0
mxgx435 maxmag 0.10 0.1 -> 0.1
mxgx436 maxmag 0.100 0.10 -> 0.10
mxgx437 maxmag 0 0.10 -> 0.10
mxgx438 maxmag 0.0 0 -> 0
mxgx439 maxmag -0 0.0 -> 0.0
mxgx440 maxmag -0.0 0.0 -> 0.0
mxgx441 maxmag -0.0 0.00 -> 0.00
mxgx442 maxmag -0.00 0.0 -> 0.0
mxgx443 maxmag -0.0 0 -> 0
mxgx444 maxmag -0 0 -> 0
mxgx445 maxmag -0 -0.0 -> -0.0
mxgx446 maxmag -0.100 -0 -> -0.100
mxgx447 maxmag -0.10 -0.100 -> -0.100
mxgx448 maxmag -0.1 -0.10 -> -0.10
mxgx449 maxmag -1.0 -0.1 -> -1.0
mxgx450 maxmag -1 -1.0 -> -1.0
mxgx451 maxmag -1.1 -1 -> -1.1
mxgx453 maxmag -Inf -1.1 -> -Infinity
-- largies
mxgx460 maxmag 1000 1E+3 -> 1E+3
mxgx461 maxmag 1E+3 1000 -> 1E+3
mxgx462 maxmag 1000 -1E+3 -> 1000
mxgx463 maxmag 1E+3 -1000 -> 1E+3
mxgx464 maxmag -1000 1E+3 -> 1E+3
mxgx465 maxmag -1E+3 1000 -> 1000
mxgx466 maxmag -1000 -1E+3 -> -1000
mxgx467 maxmag -1E+3 -1000 -> -1000
-- rounding (results treated as though plus)
maxexponent: 999999999
minexponent: -999999999
precision: 3
mxgx470 maxmag 1 .5 -> 1
mxgx471 maxmag 10 5 -> 10
mxgx472 maxmag 100 50 -> 100
mxgx473 maxmag 1000 500 -> 1.00E+3 Rounded
mxgx474 maxmag 10000 5000 -> 1.00E+4 Rounded
mxgx475 maxmag 6 .5 -> 6
mxgx476 maxmag 66 5 -> 66
mxgx477 maxmag 666 50 -> 666
mxgx478 maxmag 6666 500 -> 6.67E+3 Rounded Inexact
mxgx479 maxmag 66666 5000 -> 6.67E+4 Rounded Inexact
mxgx480 maxmag 33333 5000 -> 3.33E+4 Rounded Inexact
mxgx481 maxmag .5 1 -> 1
mxgx482 maxmag .5 10 -> 10
mxgx483 maxmag .5 100 -> 100
mxgx484 maxmag .5 1000 -> 1.00E+3 Rounded
mxgx485 maxmag .5 10000 -> 1.00E+4 Rounded
mxgx486 maxmag .5 6 -> 6
mxgx487 maxmag .5 66 -> 66
mxgx488 maxmag .5 666 -> 666
mxgx489 maxmag .5 6666 -> 6.67E+3 Rounded Inexact
mxgx490 maxmag .5 66666 -> 6.67E+4 Rounded Inexact
mxgx491 maxmag .5 33333 -> 3.33E+4 Rounded Inexact
-- overflow tests
maxexponent: 999999999
minexponent: -999999999
precision: 3
mxgx500 maxmag 9.999E+999999999 0 -> Infinity Inexact Overflow Rounded
mxgx501 maxmag -9.999E+999999999 0 -> -Infinity Inexact Overflow Rounded
-- subnormals and underflow
precision: 3
maxexponent: 999
minexponent: -999
mxgx510 maxmag 1.00E-999 0 -> 1.00E-999
mxgx511 maxmag 0.1E-999 0 -> 1E-1000 Subnormal
mxgx512 maxmag 0.10E-999 0 -> 1.0E-1000 Subnormal
mxgx513 maxmag 0.100E-999 0 -> 1.0E-1000 Subnormal Rounded
mxgx514 maxmag 0.01E-999 0 -> 1E-1001 Subnormal
-- next is rounded to Nmin
mxgx515 maxmag 0.999E-999 0 -> 1.00E-999 Inexact Rounded Subnormal Underflow
mxgx516 maxmag 0.099E-999 0 -> 1.0E-1000 Inexact Rounded Subnormal Underflow
mxgx517 maxmag 0.009E-999 0 -> 1E-1001 Inexact Rounded Subnormal Underflow
mxgx518 maxmag 0.001E-999 0 -> 0E-1001 Inexact Rounded Subnormal Underflow Clamped
mxgx519 maxmag 0.0009E-999 0 -> 0E-1001 Inexact Rounded Subnormal Underflow Clamped
mxgx520 maxmag 0.0001E-999 0 -> 0E-1001 Inexact Rounded Subnormal Underflow Clamped
mxgx530 maxmag -1.00E-999 0 -> -1.00E-999
mxgx531 maxmag -0.1E-999 0 -> -1E-1000 Subnormal
mxgx532 maxmag -0.10E-999 0 -> -1.0E-1000 Subnormal
mxgx533 maxmag -0.100E-999 0 -> -1.0E-1000 Subnormal Rounded
mxgx534 maxmag -0.01E-999 0 -> -1E-1001 Subnormal
-- next is rounded to -Nmin
mxgx535 maxmag -0.999E-999 0 -> -1.00E-999 Inexact Rounded Subnormal Underflow
mxgx536 maxmag -0.099E-999 0 -> -1.0E-1000 Inexact Rounded Subnormal Underflow
mxgx537 maxmag -0.009E-999 0 -> -1E-1001 Inexact Rounded Subnormal Underflow
mxgx538 maxmag -0.001E-999 0 -> -0E-1001 Inexact Rounded Subnormal Underflow Clamped
mxgx539 maxmag -0.0009E-999 0 -> -0E-1001 Inexact Rounded Subnormal Underflow Clamped
mxgx540 maxmag -0.0001E-999 0 -> -0E-1001 Inexact Rounded Subnormal Underflow Clamped
-- Null tests
mxgx900 maxmag 10 # -> NaN Invalid_operation
mxgx901 maxmag # 10 -> NaN Invalid_operation