@@ -24,7 +24,7 @@ import Data.Text.Internal.Search (indices)
2424import Data.Text.Lazy.Read as TL
2525import Data.Text.Read as T
2626import Data.Word (Word, Word8, Word16, Word32, Word64)
27−import Numeric (showGFloat, showHex)
27+import Numeric (showEFloat, showFFloat, showGFloat, showHex)
2828import Prelude hiding (replicate)
2929import Test.Framework (Test, testGroup)
3030import Test.Framework.Providers.QuickCheck2 (testProperty)
@@ -779,14 +779,19 @@ tb_realfloat = (TB.toLazyText . TB.realFloat) `eq` (TL.pack . show)
779779tb_realfloat_float (a::Float) = tb_realfloat a
780780tb_realfloat_double (a::Double) = tb_realfloat a
781781
782−tb_formatRealFloat_G :: (RealFloat a, Show a) => a -> Precision a -> Property
783−tb_formatRealFloat_G a prec =
784− TB.formatRealFloat TB.Generic p a ===
785− TB.fromString (showGFloat p a "")
782+showFloat :: (RealFloat a) => TB.FPFormat -> Maybe Int -> a -> ShowS
783+showFloat TB.Exponent = showEFloat
784+showFloat TB.Fixed = showFFloat
785+showFloat TB.Generic = showGFloat
786+
787+tb_formatRealFloat :: (RealFloat a, Show a) => a -> TB.FPFormat -> Precision a -> Property
788+tb_formatRealFloat a fmt prec =
789+ TB.formatRealFloat fmt p a ===
790+ TB.fromString (showFloat fmt p a "")
786791 where p = precision a prec
787792
788−tb_formatRealFloat_G_float (a::Float) = tb_formatRealFloat_G a
789−tb_formatRealFloat_G_double (a::Double) = tb_formatRealFloat_G a
793+tb_formatRealFloat_float (a::Float) = tb_formatRealFloat a
794+tb_formatRealFloat_double (a::Double) = tb_formatRealFloat a
790795
791796-- Reading.
792797
@@ -1294,8 +1299,8 @@ tests =
12941299 testGroup "realfloat" [
12951300 testProperty "tb_realfloat_double" tb_realfloat_double,
12961301 testProperty "tb_realfloat_float" tb_realfloat_float,
1297− testProperty "tb_formatRealFloat_G_float" tb_formatRealFloat_G_float,
1298− testProperty "tb_formatRealFloat_G_double" tb_formatRealFloat_G_double
1302+ testProperty "tb_formatRealFloat_float" tb_formatRealFloat_float,
1303+ testProperty "tb_formatRealFloat_double" tb_formatRealFloat_double
12991304 ],
13001305 testProperty "tb_fromText" tb_fromText,
13011306 testProperty "tb_singleton" tb_singleton