File tree Expand file tree Collapse file tree 3 files changed +5
-24
lines changed Expand file tree Collapse file tree 3 files changed +5
-24
lines changed Original file line number Diff line number Diff line change @@ -69,7 +69,7 @@ open class LengthFormatter : Formatter {
69
69
//Extract the number from the measurement
70
70
let numberInUnit = unitMeasurement. value
71
71
72
- if isForPersonHeightUse && !numberFormatter. locale. sr3202_fix_isMetricSystemLocale ( ) {
72
+ if isForPersonHeightUse && !numberFormatter. locale. usesMetricSystem {
73
73
let feet = numberInUnit. rounded ( . towardZero)
74
74
let feetString = string ( fromValue: feet, unit: . foot)
75
75
@@ -123,7 +123,7 @@ open class LengthFormatter : Formatter {
123
123
/// - Parameter numberInMeters: the magnitude in terms of meters
124
124
/// - Returns: Returns the appropriate unit
125
125
private func unit( fromMeters numberInMeters: Double ) -> Unit {
126
- if numberFormatter. locale. sr3202_fix_isMetricSystemLocale ( ) {
126
+ if numberFormatter. locale. usesMetricSystem {
127
127
//Person height is always returned in cm for metric system
128
128
if isForPersonHeightUse { return . centimeter }
129
129
Original file line number Diff line number Diff line change @@ -134,7 +134,7 @@ open class MassFormatter : Formatter {
134
134
/// - Parameter numberInKilograms: the magnitude in terms of kilograms
135
135
/// - Returns: Returns the appropriate unit
136
136
private func convertedUnit( fromKilograms numberInKilograms: Double ) -> Unit {
137
- if numberFormatter. locale. sr3202_fix_isMetricSystemLocale ( ) {
137
+ if numberFormatter. locale. usesMetricSystem {
138
138
if numberInKilograms > 1.0 || numberInKilograms <= 0.0 {
139
139
return . kilogram
140
140
} else {
@@ -236,22 +236,3 @@ open class MassFormatter : Formatter {
236
236
. pound: " pounds " ,
237
237
. stone: " stones " ]
238
238
}
239
-
240
- internal extension Locale {
241
- /// TODO: Replace calls to the below function to use Locale.usesMetricSystem
242
- /// Temporary workaround due to unpopulated Locale attributes
243
- /// See https://bugs.swift.org/browse/SR-3202
244
- internal func sr3202_fix_isMetricSystemLocale( ) -> Bool {
245
- switch self . identifier {
246
- case " en_US " : return false
247
- case " en_US_POSIX " : return false
248
- case " haw_US " : return false
249
- case " es_US " : return false
250
- case " chr_US " : return false
251
- case " my_MM " : return false
252
- case " en_LR " : return false
253
- case " vai_LR " : return false
254
- default : return true
255
- }
256
- }
257
- }
Original file line number Diff line number Diff line change @@ -67,7 +67,7 @@ class TestNSLengthFormatter: XCTestCase {
67
67
}
68
68
69
69
func test_stringFromMetersMetric( ) {
70
- formatter. numberFormatter. locale = Locale ( identifier: " en_UK " )
70
+ formatter. numberFormatter. locale = Locale ( identifier: " en_GB " )
71
71
XCTAssertEqual ( formatter. string ( fromMeters: - 10000 ) , " -10 km " )
72
72
XCTAssertEqual ( formatter. string ( fromMeters: - 1 ) , " -0.001 km " )
73
73
XCTAssertEqual ( formatter. string ( fromMeters: 0.00001 ) , " 0.01 mm " )
@@ -85,7 +85,7 @@ class TestNSLengthFormatter: XCTestCase {
85
85
}
86
86
87
87
func test_stringFromMetersMetricPersonHeight( ) {
88
- formatter. numberFormatter. locale = Locale ( identifier: " en_UK " )
88
+ formatter. numberFormatter. locale = Locale ( identifier: " en_GB " )
89
89
formatter. isForPersonHeightUse = true
90
90
XCTAssertEqual ( formatter. string ( fromMeters: - 1 ) , " -100 cm " )
91
91
XCTAssertEqual ( formatter. string ( fromMeters: 0.001 ) , " 0.1 cm " )
You can’t perform that action at this time.
0 commit comments