@@ -24,7 +24,7 @@ import Data.Text.Internal.Search (indices)
24import Data.Text.Lazy.Read as TL
24import Data.Text.Lazy.Read as TL
25import Data.Text.Read as T
25import Data.Text.Read as T
26import Data.Word (Word, Word8, Word16, Word32, Word64)
26import Data.Word (Word, Word8, Word16, Word32, Word64)
27−import Numeric (showGFloat, showHex)
27+import Numeric (showEFloat, showFFloat, showGFloat, showHex)
28import Prelude hiding (replicate)
28import Prelude hiding (replicate)
29import Test.Framework (Test, testGroup)
29import Test.Framework (Test, testGroup)
30import Test.Framework.Providers.QuickCheck2 (testProperty)
30import Test.Framework.Providers.QuickCheck2 (testProperty)
@@ -779,14 +779,19 @@ tb_realfloat = (TB.toLazyText . TB.realFloat) `eq` (TL.pack . show)
779tb_realfloat_float (a::Float) = tb_realfloat a
779tb_realfloat_float (a::Float) = tb_realfloat a
780tb_realfloat_double (a::Double) = tb_realfloat a
780tb_realfloat_double (a::Double) = tb_realfloat 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
782−tb_formatRealFloat_G :: (RealFloat a, Show a) => a -> Precision a -> Property
787+tb_formatRealFloat :: (RealFloat a, Show a) => a -> TB.FPFormat -> Precision a -> Property
783−tb_formatRealFloat_G a prec =
788+tb_formatRealFloat a fmt prec =
784− TB.formatRealFloat TB.Generic p a ===
789+ TB.formatRealFloat fmt p a ===
785− TB.fromString (showGFloat p a "")
790+ TB.fromString (showFloat fmt p a "")
786 where p = precision a prec
791 where p = precision a prec
788−tb_formatRealFloat_G_float (a::Float) = tb_formatRealFloat_G a
793+tb_formatRealFloat_float (a::Float) = tb_formatRealFloat a
789−tb_formatRealFloat_G_double (a::Double) = tb_formatRealFloat_G a
794+tb_formatRealFloat_double (a::Double) = tb_formatRealFloat a
791-- Reading.
796-- Reading.
@@ -1294,8 +1299,8 @@ tests =
1294 testGroup "realfloat" [
1299 testGroup "realfloat" [
1295 testProperty "tb_realfloat_double" tb_realfloat_double,
1300 testProperty "tb_realfloat_double" tb_realfloat_double,
1296 testProperty "tb_realfloat_float" tb_realfloat_float,
1301 testProperty "tb_realfloat_float" tb_realfloat_float,
1297− testProperty "tb_formatRealFloat_G_float" tb_formatRealFloat_G_float,
1302+ testProperty "tb_formatRealFloat_float" tb_formatRealFloat_float,
1298− testProperty "tb_formatRealFloat_G_double" tb_formatRealFloat_G_double
1303+ testProperty "tb_formatRealFloat_double" tb_formatRealFloat_double
1300 testProperty "tb_fromText" tb_fromText,
1305 testProperty "tb_fromText" tb_fromText,
1301 testProperty "tb_singleton" tb_singleton
1306 testProperty "tb_singleton" tb_singleton