@@ -1036,6 +1036,26 @@ class TestNSNumber : XCTestCase {
1036
1036
XCTAssertEqual ( NSNumber ( value: UInt32 . max) . description, " 4294967295 " )
1037
1037
XCTAssertEqual ( NSNumber ( value: UInt64 . min) . description, " 0 " )
1038
1038
XCTAssertEqual ( NSNumber ( value: UInt64 . max) . description, " 18446744073709551615 " )
1039
+
1040
+ XCTAssertEqual ( NSNumber ( value: 1.2 as Float ) . description, " 1.2 " )
1041
+ XCTAssertEqual ( NSNumber ( value: 1000_000_000 as Float ) . description, " 1e+09 " )
1042
+ XCTAssertEqual ( NSNumber ( value: - 0.99 as Float ) . description, " -0.99 " )
1043
+ XCTAssertEqual ( NSNumber ( value: Float . zero) . description, " 0.0 " )
1044
+ XCTAssertEqual ( NSNumber ( value: Float . nan) . description, " nan " )
1045
+ XCTAssertEqual ( NSNumber ( value: Float . leastNormalMagnitude) . description, " 1.1754944e-38 " )
1046
+ XCTAssertEqual ( NSNumber ( value: Float . leastNonzeroMagnitude) . description, " 1e-45 " )
1047
+ XCTAssertEqual ( NSNumber ( value: Float . greatestFiniteMagnitude) . description, " 3.4028235e+38 " )
1048
+ XCTAssertEqual ( NSNumber ( value: Float . pi) . description, " 3.1415925 " )
1049
+
1050
+ XCTAssertEqual ( NSNumber ( value: 1.2 as Double ) . description, " 1.2 " )
1051
+ XCTAssertEqual ( NSNumber ( value: 1000_000_000 as Double ) . description, " 1000000000.0 " )
1052
+ XCTAssertEqual ( NSNumber ( value: - 0.99 as Double ) . description, " -0.99 " )
1053
+ XCTAssertEqual ( NSNumber ( value: Double . zero) . description, " 0.0 " )
1054
+ XCTAssertEqual ( NSNumber ( value: Double . nan) . description, " nan " )
1055
+ XCTAssertEqual ( NSNumber ( value: Double . leastNormalMagnitude) . description, " 2.2250738585072014e-308 " )
1056
+ XCTAssertEqual ( NSNumber ( value: Double . leastNonzeroMagnitude) . description, " 5e-324 " )
1057
+ XCTAssertEqual ( NSNumber ( value: Double . greatestFiniteMagnitude) . description, " 1.7976931348623157e+308 " )
1058
+ XCTAssertEqual ( NSNumber ( value: Double . pi) . description, " 3.141592653589793 " )
1039
1059
}
1040
1060
1041
1061
func test_descriptionWithLocale( ) {
@@ -1061,6 +1081,26 @@ class TestNSNumber : XCTestCase {
1061
1081
XCTAssertEqual ( NSNumber ( value: UInt64 . min) . description ( withLocale: nil ) , " 0 " )
1062
1082
XCTAssertEqual ( NSNumber ( value: UInt64 . max) . description ( withLocale: nil ) , " 18446744073709551615 " )
1063
1083
1084
+ XCTAssertEqual ( NSNumber ( value: 1.2 as Float ) . description ( withLocale: nil ) , " 1.2 " )
1085
+ XCTAssertEqual ( NSNumber ( value: 1000_000_000 as Float ) . description ( withLocale: nil ) , " 1e+09 " )
1086
+ XCTAssertEqual ( NSNumber ( value: - 0.99 as Float ) . description ( withLocale: nil ) , " -0.99 " )
1087
+ XCTAssertEqual ( NSNumber ( value: Float . zero) . description ( withLocale: nil ) , " 0.0 " )
1088
+ XCTAssertEqual ( NSNumber ( value: Float . nan) . description ( withLocale: nil ) , " nan " )
1089
+ XCTAssertEqual ( NSNumber ( value: Float . leastNormalMagnitude) . description ( withLocale: nil ) , " 1.1754944e-38 " )
1090
+ XCTAssertEqual ( NSNumber ( value: Float . leastNonzeroMagnitude) . description ( withLocale: nil ) , " 1e-45 " )
1091
+ XCTAssertEqual ( NSNumber ( value: Float . greatestFiniteMagnitude) . description ( withLocale: nil ) , " 3.4028235e+38 " )
1092
+ XCTAssertEqual ( NSNumber ( value: Float . pi) . description ( withLocale: nil ) , " 3.1415925 " )
1093
+
1094
+ XCTAssertEqual ( NSNumber ( value: 1.2 as Double ) . description ( withLocale: nil ) , " 1.2 " )
1095
+ XCTAssertEqual ( NSNumber ( value: 1000_000_000 as Double ) . description ( withLocale: nil ) , " 1000000000.0 " )
1096
+ XCTAssertEqual ( NSNumber ( value: - 0.99 as Double ) . description ( withLocale: nil ) , " -0.99 " )
1097
+ XCTAssertEqual ( NSNumber ( value: Double . zero) . description ( withLocale: nil ) , " 0.0 " )
1098
+ XCTAssertEqual ( NSNumber ( value: Double . nan) . description ( withLocale: nil ) , " nan " )
1099
+ XCTAssertEqual ( NSNumber ( value: Double . leastNormalMagnitude) . description ( withLocale: nil ) , " 2.2250738585072014e-308 " )
1100
+ XCTAssertEqual ( NSNumber ( value: Double . leastNonzeroMagnitude) . description ( withLocale: nil ) , " 5e-324 " )
1101
+ XCTAssertEqual ( NSNumber ( value: Double . greatestFiniteMagnitude) . description ( withLocale: nil ) , " 1.7976931348623157e+308 " )
1102
+ XCTAssertEqual ( NSNumber ( value: Double . pi) . description ( withLocale: nil ) , " 3.141592653589793 " )
1103
+
1064
1104
// en_GB Locale
1065
1105
XCTAssertEqual ( NSNumber ( value: 1000 ) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 1,000 " )
1066
1106
XCTAssertEqual ( NSNumber ( value: 0.001 ) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 0.001 " )
@@ -1086,6 +1126,26 @@ class TestNSNumber : XCTestCase {
1086
1126
// XCTAssertEqual(NSNumber(value: UInt64.max).description(withLocale: Locale(identifier: "en_GB")), "18,446,744,073,709,551,615")
1087
1127
XCTAssertEqual ( NSNumber ( value: UInt64 . max) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 18446744073709551615 " )
1088
1128
1129
+ XCTAssertEqual ( NSNumber ( value: 1.2 as Float ) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 1.2 " )
1130
+ XCTAssertEqual ( NSNumber ( value: 1000_000_000 as Float ) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 1E+09 " )
1131
+ XCTAssertEqual ( NSNumber ( value: - 0.99 as Float ) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " -0.99 " )
1132
+ XCTAssertEqual ( NSNumber ( value: Float . zero) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 0 " )
1133
+ XCTAssertEqual ( NSNumber ( value: Float . nan) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " NaN " )
1134
+ XCTAssertEqual ( NSNumber ( value: Float . leastNormalMagnitude) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 1.175494E-38 " )
1135
+ XCTAssertEqual ( NSNumber ( value: Float . leastNonzeroMagnitude) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 1.401298E-45 " )
1136
+ XCTAssertEqual ( NSNumber ( value: Float . greatestFiniteMagnitude) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 3.402823E+38 " )
1137
+ XCTAssertEqual ( NSNumber ( value: Float . pi) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 3.141593 " )
1138
+
1139
+ XCTAssertEqual ( NSNumber ( value: 1.2 as Double ) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 1.2 " )
1140
+ XCTAssertEqual ( NSNumber ( value: 1000_000_000 as Double ) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 1,000,000,000 " )
1141
+ XCTAssertEqual ( NSNumber ( value: - 0.99 as Double ) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " -0.99 " )
1142
+ XCTAssertEqual ( NSNumber ( value: Double . zero) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " 0 " )
1143
+ XCTAssertEqual ( NSNumber ( value: Double . nan) . description ( withLocale: Locale ( identifier: " en_GB " ) ) , " NaN " )
1144
+ // Disable following three tests due to SR-9699 - ICU not built for CI testing for Foundation pull requests
1145
+ //XCTAssertEqual(NSNumber(value: Double.leastNormalMagnitude).description(withLocale: Locale(identifier: "en_GB")), "2.225073858507201E-308")
1146
+ //XCTAssertEqual(NSNumber(value: Double.leastNonzeroMagnitude).description(withLocale: Locale(identifier: "en_GB")), "5E-324")
1147
+ //XCTAssertEqual(NSNumber(value: Double.greatestFiniteMagnitude).description(withLocale: Locale(identifier: "en_GB")), "1.797693134862316E+308")
1148
+
1089
1149
// de_DE Locale
1090
1150
XCTAssertEqual ( NSNumber ( value: 1000 ) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 1.000 " )
1091
1151
XCTAssertEqual ( NSNumber ( value: 0.001 ) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 0,001 " )
@@ -1110,6 +1170,26 @@ class TestNSNumber : XCTestCase {
1110
1170
// This is the correct value but currently buggy and the locale is not used
1111
1171
//XCTAssertEqual(NSNumber(value: UInt64.max).description(withLocale: Locale(identifier: "de_DE")), "18.446.744.073.709.551.615")
1112
1172
XCTAssertEqual ( NSNumber ( value: UInt64 . max) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 18446744073709551615 " )
1173
+
1174
+ XCTAssertEqual ( NSNumber ( value: 1.2 as Float ) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 1,2 " )
1175
+ XCTAssertEqual ( NSNumber ( value: 1000_000_000 as Float ) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 1E+09 " )
1176
+ XCTAssertEqual ( NSNumber ( value: - 0.99 as Float ) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " -0,99 " )
1177
+ XCTAssertEqual ( NSNumber ( value: Float . pi) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 3,141593 " )
1178
+ XCTAssertEqual ( NSNumber ( value: Float . zero) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 0 " )
1179
+ XCTAssertEqual ( NSNumber ( value: Float . nan) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " NaN " )
1180
+ XCTAssertEqual ( NSNumber ( value: Float . leastNormalMagnitude) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 1,175494E-38 " )
1181
+ XCTAssertEqual ( NSNumber ( value: Float . leastNonzeroMagnitude) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 1,401298E-45 " )
1182
+ XCTAssertEqual ( NSNumber ( value: Float . greatestFiniteMagnitude) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 3,402823E+38 " )
1183
+
1184
+ XCTAssertEqual ( NSNumber ( value: 1.2 as Double ) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 1,2 " )
1185
+ XCTAssertEqual ( NSNumber ( value: 1000_000_000 as Double ) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 1.000.000.000 " )
1186
+ XCTAssertEqual ( NSNumber ( value: - 0.99 as Double ) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " -0,99 " )
1187
+ XCTAssertEqual ( NSNumber ( value: Double . zero) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " 0 " )
1188
+ XCTAssertEqual ( NSNumber ( value: Double . nan) . description ( withLocale: Locale ( identifier: " de_DE " ) ) , " NaN " )
1189
+ // Disable following three tests due to SR-9699 - ICU not built for CI testing for Foundation pull requests
1190
+ //XCTAssertEqual(NSNumber(value: Double.leastNormalMagnitude).description(withLocale: Locale(identifier: "de_DE")), "2,225073858507201E-308")
1191
+ //XCTAssertEqual(NSNumber(value: Double.leastNonzeroMagnitude).description(withLocale: Locale(identifier: "de_DE")), "5E-324")
1192
+ //XCTAssertEqual(NSNumber(value: Double.greatestFiniteMagnitude).description(withLocale: Locale(identifier: "de_DE")), "1,797693134862316E+308")
1113
1193
}
1114
1194
1115
1195
func test_objCType( ) {
0 commit comments