Skip to content

Commit

Permalink
Rewrite part swiftlang#2 of file with StdlibUnittest
Browse files Browse the repository at this point in the history
  • Loading branch information
frootloops committed Dec 24, 2015
1 parent 6e10470 commit 459b76f
Showing 1 changed file with 137 additions and 159 deletions.
296 changes: 137 additions & 159 deletions test/1_stdlib/Print.swift
Original file line number Diff line number Diff line change
Expand Up @@ -268,168 +268,146 @@ PrintTests.test("integer printing") {
expectPrinted("42", UInt64(42))
}

func test_FloatingPointPrinting() {
PrintTests.test("floating point printing") {
func asFloat32(f: Float32) -> Float32 { return f }
func asFloat64(f: Float64) -> Float64 { return f }
#if arch(i386) || arch(x86_64)
func asFloat80(f: Swift.Float80) -> Swift.Float80 { return f }
#endif

printedIs(Float.infinity, "inf")
printedIs(-Float.infinity, "-inf")
printedIs(Float.NaN, "nan")
printedIs(asFloat32(0.0), "0.0")
printedIs(asFloat32(1.0), "1.0")
printedIs(asFloat32(-1.0), "-1.0")
printedIs(asFloat32(100.125), "100.125")
printedIs(asFloat32(-100.125), "-100.125")

printedIs(Double.infinity, "inf")
printedIs(-Double.infinity, "-inf")
printedIs(Double.NaN, "nan")
printedIs(asFloat64(0.0), "0.0")
printedIs(asFloat64(1.0), "1.0")
printedIs(asFloat64(-1.0), "-1.0")
printedIs(asFloat64(100.125), "100.125")
printedIs(asFloat64(-100.125), "-100.125")

printedIs(asFloat32(1.00001), "1.00001")
printedIs(asFloat32(125000000000000000.0), "1.25e+17")
printedIs(asFloat32(12500000000000000.0), "1.25e+16")
printedIs(asFloat32(1250000000000000.0), "1.25e+15")
printedIs(asFloat32(125000000000000.0), "1.25e+14")
printedIs(asFloat32(12500000000000.0), "1.25e+13")
printedIs(asFloat32(1250000000000.0), "1.25e+12")
printedIs(asFloat32(125000000000.0), "1.25e+11")
printedIs(asFloat32(12500000000.0), "1.25e+10")
printedIs(asFloat32(1250000000.0), "1.25e+09")
printedIs(asFloat32(125000000.0), "1.25e+08")
printedIs(asFloat32(12500000.0), "1.25e+07")
printedIs(asFloat32(1250000.0), "1.25e+06")
printedIs(asFloat32(125000.0), "125000.0")
printedIs(asFloat32(12500.0), "12500.0")
printedIs(asFloat32(1250.0), "1250.0")
printedIs(asFloat32(125.0), "125.0")
printedIs(asFloat32(12.5), "12.5")
printedIs(asFloat32(1.25), "1.25")
printedIs(asFloat32(0.125), "0.125")
printedIs(asFloat32(0.0125), "0.0125")
printedIs(asFloat32(0.00125), "0.00125")
printedIs(asFloat32(0.000125), "0.000125")
printedIs(asFloat32(0.0000125), "1.25e-05")
printedIs(asFloat32(0.00000125), "1.25e-06")
printedIs(asFloat32(0.000000125), "1.25e-07")
printedIs(asFloat32(0.0000000125), "1.25e-08")
printedIs(asFloat32(0.00000000125), "1.25e-09")
printedIs(asFloat32(0.000000000125), "1.25e-10")
printedIs(asFloat32(0.0000000000125), "1.25e-11")
printedIs(asFloat32(0.00000000000125), "1.25e-12")
printedIs(asFloat32(0.000000000000125), "1.25e-13")
printedIs(asFloat32(0.0000000000000125), "1.25e-14")
printedIs(asFloat32(0.00000000000000125), "1.25e-15")
printedIs(asFloat32(0.000000000000000125), "1.25e-16")
printedIs(asFloat32(0.0000000000000000125), "1.25e-17")

printedIs(asFloat64(1.00000000000001), "1.00000000000001")
printedIs(asFloat64(125000000000000000.0), "1.25e+17")
printedIs(asFloat64(12500000000000000.0), "1.25e+16")
printedIs(asFloat64(1250000000000000.0), "1.25e+15")
printedIs(asFloat64(125000000000000.0), "125000000000000.0")
printedIs(asFloat64(12500000000000.0), "12500000000000.0")
printedIs(asFloat64(1250000000000.0), "1250000000000.0")
printedIs(asFloat64(125000000000.0), "125000000000.0")
printedIs(asFloat64(12500000000.0), "12500000000.0")
printedIs(asFloat64(1250000000.0), "1250000000.0")
printedIs(asFloat64(125000000.0), "125000000.0")
printedIs(asFloat64(12500000.0), "12500000.0")
printedIs(asFloat64(1250000.0), "1250000.0")
printedIs(asFloat64(125000.0), "125000.0")
printedIs(asFloat64(12500.0), "12500.0")
printedIs(asFloat64(1250.0), "1250.0")
printedIs(asFloat64(125.0), "125.0")
printedIs(asFloat64(12.5), "12.5")
printedIs(asFloat64(1.25), "1.25")
printedIs(asFloat64(0.125), "0.125")
printedIs(asFloat64(0.0125), "0.0125")
printedIs(asFloat64(0.00125), "0.00125")
printedIs(asFloat64(0.000125), "0.000125")
printedIs(asFloat64(0.0000125), "1.25e-05")
printedIs(asFloat64(0.00000125), "1.25e-06")
printedIs(asFloat64(0.000000125), "1.25e-07")
printedIs(asFloat64(0.0000000125), "1.25e-08")
printedIs(asFloat64(0.00000000125), "1.25e-09")
printedIs(asFloat64(0.000000000125), "1.25e-10")
printedIs(asFloat64(0.0000000000125), "1.25e-11")
printedIs(asFloat64(0.00000000000125), "1.25e-12")
printedIs(asFloat64(0.000000000000125), "1.25e-13")
printedIs(asFloat64(0.0000000000000125), "1.25e-14")
printedIs(asFloat64(0.00000000000000125), "1.25e-15")
printedIs(asFloat64(0.000000000000000125), "1.25e-16")
printedIs(asFloat64(0.0000000000000000125), "1.25e-17")

#if arch(i386) || arch(x86_64)
printedIs(asFloat80(1.00000000000000001), "1.00000000000000001")
printedIs(asFloat80(12500000000000000000.0), "1.25e+19")
printedIs(asFloat80(1250000000000000000.0), "1.25e+18")
printedIs(asFloat80(125000000000000000.0), "125000000000000000.0")
printedIs(asFloat80(12500000000000000.0), "12500000000000000.0")
printedIs(asFloat80(1250000000000000.0), "1250000000000000.0")
printedIs(asFloat80(125000000000000.0), "125000000000000.0")
printedIs(asFloat80(12500000000000.0), "12500000000000.0")
printedIs(asFloat80(1250000000000.0), "1250000000000.0")
printedIs(asFloat80(125000000000.0), "125000000000.0")
printedIs(asFloat80(12500000000.0), "12500000000.0")
printedIs(asFloat80(1250000000.0), "1250000000.0")
printedIs(asFloat80(125000000.0), "125000000.0")
printedIs(asFloat80(12500000.0), "12500000.0")
printedIs(asFloat80(1250000.0), "1250000.0")
printedIs(asFloat80(125000.0), "125000.0")
printedIs(asFloat80(12500.0), "12500.0")
printedIs(asFloat80(1250.0), "1250.0")
printedIs(asFloat80(125.0), "125.0")
printedIs(asFloat80(12.5), "12.5")
printedIs(asFloat80(1.25), "1.25")
printedIs(asFloat80(0.125), "0.125")
printedIs(asFloat80(0.0125), "0.0125")
printedIs(asFloat80(0.00125), "0.00125")
printedIs(asFloat80(0.000125), "0.000125")
printedIs(asFloat80(0.0000125), "1.25e-05")
printedIs(asFloat80(0.00000125), "1.25e-06")
printedIs(asFloat80(0.000000125), "1.25e-07")
printedIs(asFloat80(0.0000000125), "1.25e-08")
printedIs(asFloat80(0.00000000125), "1.25e-09")
printedIs(asFloat80(0.000000000125), "1.25e-10")
printedIs(asFloat80(0.0000000000125), "1.25e-11")
printedIs(asFloat80(0.00000000000125), "1.25e-12")
printedIs(asFloat80(0.000000000000125), "1.25e-13")
printedIs(asFloat80(0.0000000000000125), "1.25e-14")
printedIs(asFloat80(0.00000000000000125), "1.25e-15")
printedIs(asFloat80(0.000000000000000125), "1.25e-16")
printedIs(asFloat80(0.0000000000000000125), "1.25e-17")
#endif

debugPrintedIs(asFloat32(1.1), "1.10000002")
debugPrintedIs(asFloat32(125000000000000000.0), "1.24999998e+17")
debugPrintedIs(asFloat32(1.25), "1.25")
debugPrintedIs(asFloat32(0.0000125), "1.24999997e-05")

debugPrintedIs(asFloat64(1.1), "1.1000000000000001")
debugPrintedIs(asFloat64(125000000000000000.0), "1.25e+17")
debugPrintedIs(asFloat64(1.25), "1.25")
debugPrintedIs(asFloat64(0.0000125), "1.2500000000000001e-05")

#if arch(i386) || arch(x86_64)
debugPrintedIs(asFloat80(1.1), "1.10000000000000000002")
debugPrintedIs(asFloat80(125000000000000000.0), "125000000000000000.0")
debugPrintedIs(asFloat80(1.25), "1.25")
debugPrintedIs(asFloat80(0.0000125), "1.25000000000000000001e-05")
#endif

print("test_FloatingPointPrinting done")
#if arch(i386) || arch(x86_64)
func asFloat80(f: Swift.Float80) -> Swift.Float80 { return f }
#endif

expectPrinted("inf", Float.infinity)
expectPrinted("-inf", -Float.infinity)
expectPrinted("nan", Float.NaN)
expectPrinted("0.0", asFloat32(0.0))
expectPrinted("1.0", asFloat32(1.0))
expectPrinted("-1.0", asFloat32(-1.0))
expectPrinted("100.125", asFloat32(100.125))
expectPrinted("-100.125", asFloat32(-100.125))

expectPrinted("inf", Double.infinity)
expectPrinted("-inf", -Double.infinity)
expectPrinted("nan", Double.NaN)
expectPrinted("0.0", asFloat64(0.0))
expectPrinted("1.0", asFloat64(1.0))
expectPrinted("-1.0", asFloat64(-1.0))
expectPrinted("100.125", asFloat64(100.125))
expectPrinted("-100.125", asFloat64(-100.125))

expectPrinted("1.00001", asFloat32(1.00001))
expectPrinted("1.25e+17", asFloat32(125000000000000000.0))
expectPrinted("1.25e+16", asFloat32(12500000000000000.0))
expectPrinted("1.25e+15", asFloat32(1250000000000000.0))
expectPrinted("1.25e+14", asFloat32(125000000000000.0))
expectPrinted("1.25e+13", asFloat32(12500000000000.0))
expectPrinted("1.25e+12", asFloat32(1250000000000.0))
expectPrinted("1.25e+11", asFloat32(125000000000.0))
expectPrinted("1.25e+10", asFloat32(12500000000.0))
expectPrinted("1.25e+09", asFloat32(1250000000.0))
expectPrinted("1.25e+08", asFloat32(125000000.0))
expectPrinted("1.25e+07", asFloat32(12500000.0))
expectPrinted("1.25e+06", asFloat32(1250000.0))
expectPrinted("125000.0", asFloat32(125000.0))
expectPrinted("12500.0", asFloat32(12500.0))
expectPrinted("1250.0", asFloat32(1250.0))
expectPrinted("125.0", asFloat32(125.0))
expectPrinted("12.5", asFloat32(12.5))
expectPrinted("1.25", asFloat32(1.25))
expectPrinted("0.125", asFloat32(0.125))
expectPrinted("0.0125", asFloat32(0.0125))
expectPrinted("0.00125", asFloat32(0.00125))
expectPrinted("0.000125", asFloat32(0.000125))
expectPrinted("1.25e-05", asFloat32(0.0000125))
expectPrinted("1.25e-06", asFloat32(0.00000125))
expectPrinted("1.25e-07", asFloat32(0.000000125))
expectPrinted("1.25e-08", asFloat32(0.0000000125))
expectPrinted("1.25e-09", asFloat32(0.00000000125))
expectPrinted("1.25e-10", asFloat32(0.000000000125))
expectPrinted("1.25e-11", asFloat32(0.0000000000125))
expectPrinted("1.25e-12", asFloat32(0.00000000000125))
expectPrinted("1.25e-13", asFloat32(0.000000000000125))
expectPrinted("1.25e-14", asFloat32(0.0000000000000125))
expectPrinted("1.25e-15", asFloat32(0.00000000000000125))
expectPrinted("1.25e-16", asFloat32(0.000000000000000125))
expectPrinted("1.25e-17", asFloat32(0.0000000000000000125))

expectPrinted("1.00000000000001", asFloat64(1.00000000000001))
expectPrinted("1.25e+17", asFloat64(125000000000000000.0))
expectPrinted("1.25e+16", asFloat64(12500000000000000.0))
expectPrinted("1.25e+15", asFloat64(1250000000000000.0))
expectPrinted("125000000000000.0", asFloat64(125000000000000.0))
expectPrinted("12500000000000.0", asFloat64(12500000000000.0))
expectPrinted("1250000000000.0", asFloat64(1250000000000.0))
expectPrinted("125000000000.0", asFloat64(125000000000.0))
expectPrinted("12500000000.0", asFloat64(12500000000.0))
expectPrinted("1250000000.0", asFloat64(1250000000.0))
expectPrinted("125000000.0", asFloat64(125000000.0))
expectPrinted("12500000.0", asFloat64(12500000.0))
expectPrinted("1250000.0", asFloat64(1250000.0))
expectPrinted("125000.0", asFloat64(125000.0))
expectPrinted("12500.0", asFloat64(12500.0))
expectPrinted("1250.0", asFloat64(1250.0))
expectPrinted("125.0", asFloat64(125.0))
expectPrinted("12.5", asFloat64(12.5))
expectPrinted("1.25", asFloat64(1.25))
expectPrinted("0.125", asFloat64(0.125))
expectPrinted("0.0125", asFloat64(0.0125))
expectPrinted("0.00125", asFloat64(0.00125))
expectPrinted("0.000125", asFloat64(0.000125))
expectPrinted("1.25e-05", asFloat64(0.0000125))
expectPrinted("1.25e-06", asFloat64(0.00000125))
expectPrinted("1.25e-07", asFloat64(0.000000125))
expectPrinted("1.25e-08", asFloat64(0.0000000125))
expectPrinted("1.25e-09", asFloat64(0.00000000125))
expectPrinted("1.25e-10", asFloat64(0.000000000125))
expectPrinted("1.25e-11", asFloat64(0.0000000000125))
expectPrinted("1.25e-12", asFloat64(0.00000000000125))
expectPrinted("1.25e-13", asFloat64(0.000000000000125))
expectPrinted("1.25e-14", asFloat64(0.0000000000000125))
expectPrinted("1.25e-15", asFloat64(0.00000000000000125))
expectPrinted("1.25e-16", asFloat64(0.000000000000000125))
expectPrinted("1.25e-17", asFloat64(0.0000000000000000125))

#if arch(i386) || arch(x86_64)
expectPrinted("1.00000000000000001", asFloat80(1.00000000000000001))
expectPrinted("1.25e+19", asFloat80(12500000000000000000.0))
expectPrinted("1.25e+18", asFloat80(1250000000000000000.0))
expectPrinted("125000000000000000.0", asFloat80(125000000000000000.0))
expectPrinted("12500000000000000.0", asFloat80(12500000000000000.0))
expectPrinted("1250000000000000.0", asFloat80(1250000000000000.0))
expectPrinted("125000000000000.0", asFloat80(125000000000000.0))
expectPrinted("12500000000000.0", asFloat80(12500000000000.0))
expectPrinted("1250000000000.0", asFloat80(1250000000000.0))
expectPrinted("125000000000.0", asFloat80(125000000000.0))
expectPrinted("12500000000.0", asFloat80(12500000000.0))
expectPrinted("1250000000.0", asFloat80(1250000000.0))
expectPrinted("125000000.0", asFloat80(125000000.0))
expectPrinted("12500000.0", asFloat80(12500000.0))
expectPrinted("1250000.0", asFloat80(1250000.0))
expectPrinted("125000.0", asFloat80(125000.0))
expectPrinted("12500.0", asFloat80(12500.0))
expectPrinted("1250.0", asFloat80(1250.0))
expectPrinted("125.0", asFloat80(125.0))
expectPrinted("12.5", asFloat80(12.5))
expectPrinted("1.25", asFloat80(1.25))
expectPrinted("0.125", asFloat80(0.125))
expectPrinted("0.0125", asFloat80(0.0125))
expectPrinted("0.00125", asFloat80(0.00125))
expectPrinted("0.000125", asFloat80(0.000125))
expectPrinted("1.25e-05", asFloat80(0.0000125))
expectPrinted("1.25e-06", asFloat80(0.00000125))
expectPrinted("1.25e-07", asFloat80(0.000000125))
expectPrinted("1.25e-08", asFloat80(0.0000000125))
expectPrinted("1.25e-09", asFloat80(0.00000000125))
expectPrinted("1.25e-10", asFloat80(0.000000000125))
expectPrinted("1.25e-11", asFloat80(0.0000000000125))
expectPrinted("1.25e-12", asFloat80(0.00000000000125))
expectPrinted("1.25e-13", asFloat80(0.000000000000125))
expectPrinted("1.25e-14", asFloat80(0.0000000000000125))
expectPrinted("1.25e-15", asFloat80(0.00000000000000125))
expectPrinted("1.25e-16", asFloat80(0.000000000000000125))
expectPrinted("1.25e-17", asFloat80(0.0000000000000000125))
#endif
}
test_FloatingPointPrinting()
// CHECK: test_FloatingPointPrinting done


func test_BoolPrinting() {
printedIs(Bool(true), "true")
Expand Down

0 comments on commit 459b76f

Please sign in to comment.