Skip to content

Commit 35daf6a

Browse files
authored
Added CS language (#13)
* Added CS language * Updated version to 1.1.1
1 parent ff00cd8 commit 35daf6a

File tree

6 files changed

+43
-16
lines changed

6 files changed

+43
-16
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ let table = [
4141
]
4242

4343
do {
44-
// Units support this languages - "de", "en", "uk", "es", "et", "hu", "pl", "ru", "pt"
44+
// Units support this languages - "de", "en", "uk", "es", "et", "bg", "cs", "hu", "pl", "ru", "pt"
4545
let units = try Units(units: table, language: "es")
4646

4747
print(units.area.from(242)) // 597.74
@@ -56,7 +56,7 @@ do {
5656
Also you can use default units
5757
```swift
5858
do {
59-
let units = try Units.default(language: "ru")
59+
let units = try Units.default(language: "uk")
6060

6161
print(units.area.from(242)) // 242
6262
print(units.area.to(597.74)) // 597.74
@@ -96,7 +96,7 @@ do {
9696
print(units.area.to(597.74)) // 241.99999999999997
9797
print(units.area.localization.short) // "acre"
9898

99-
try units.update(units: table, language: "ru")
99+
try units.update(units: table, language: "uk")
100100

101101
print(units.area.from(242)) // 597.74
102102
print(units.area.to(597.74)) // 241.99999999999997
Binary file not shown.

Sources/units-swift/Units.swift

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -33,12 +33,12 @@ public struct Units {
3333

3434
- Parameters:
3535
- units: If nil — Units will be created with default units
36-
- language: Supported languages — "de", "en", "uk", "es", "et", "hu", "pl", "ru", "pt"
36+
- language: Supported languages — "de", "en", "uk", "es", "et", "bg", "cs", "hu", "pl", "ru", "pt"
3737

3838
- Throws:
3939
- `UnitsError.notFound` — if `units` not contains needed types
4040
- `UnitsError.unsupported` — if `units` conteins unsapported unit type
41-
- `UnitsError.localization` — if `language` not one of this "de", "en", "uk", "es", "et", "hu", "pl", "ru", "pt"
41+
- `UnitsError.localization` — if `language` not one of this "de", "en", "uk", "es", "et", "bg", "cs", "hu", "pl", "ru", "pt"
4242
*/
4343
public init(units: [String: String]?, language: String) throws {
4444
do {
@@ -97,10 +97,10 @@ public struct Units {
9797
Default units
9898

9999
- Parameters:
100-
- language: Supported languages — "de", "en", "uk", "es", "et", "hu", "pl", "ru", "pt"
100+
- language: Supported languages — "de", "en", "uk", "es", "et", "bg", "cs", "hu", "pl", "ru", "pt"
101101

102102
- Throws:
103-
- `UnitsError.localization` — if `language` not one of this "de", "en", "uk", "es", "et", "hu", "pl", "ru", "pt"
103+
- `UnitsError.localization` — if `language` not one of this "de", "en", "uk", "es", "et", "bg", "cs", "hu", "pl", "ru", "pt"
104104
*/
105105
public static func `default`(language: String) throws -> Units {
106106
do {
@@ -131,12 +131,12 @@ public struct Units {
131131

132132
- Parameters:
133133
- units: Units table from cropio api
134-
- language: Supported languages — "de", "en", "uk", "es", "et", "hu", "pl", "ru", "pt"
134+
- language: Supported languages — "de", "en", "uk", "es", "et", "bg", "cs", "hu", "pl", "ru", "pt"
135135

136136
- Throws:
137137
- `UnitsError.notFound` — if `units` not contains needed types
138138
- `UnitsError.unsupported` — if `units` conteins unsapported unit type
139-
- `UnitsError.localization` — if `language` not one of this "de", "en", "uk", "es", "et", "hu", "pl", "ru", "pt"
139+
- `UnitsError.localization` — if `language` not one of this "de", "en", "uk", "es", "et", "bg", "cs", "hu", "pl", "ru", "pt"
140140
*/
141141
public mutating func update(units: [String: String], language: String) throws {
142142
self = try Units(units: units, language: language)

Tests/units-swiftTests/LocalizatorTests.swift

Lines changed: 28 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -403,13 +403,39 @@ class LocalizatorTests: XCTestCase {
403403
}
404404
}
405405

406+
func testLocalizatorCS() {
407+
do {
408+
let localizator = try UnitsLocalizator(language: "cs")
409+
try self.checkAllLocalizations(language: "cs")
410+
411+
XCTAssertEqual(localizator.in.short, "v")
412+
XCTAssertEqual(localizator.in.full, "Palec")
413+
XCTAssertEqual(localizator.ft.short, "ft")
414+
XCTAssertEqual(localizator.ft.full, "Stopa")
415+
XCTAssertEqual(localizator.mile.short, "mi")
416+
XCTAssertEqual(localizator.mile.full, "Míle")
417+
XCTAssertEqual(localizator.mm.short, "mm")
418+
XCTAssertEqual(localizator.mm.full, "Milimetr")
419+
XCTAssertEqual(localizator.cm.short, "cm")
420+
XCTAssertEqual(localizator.cm.full, "Centimetr")
421+
XCTAssertEqual(localizator.m.short, "m")
422+
XCTAssertEqual(localizator.m.full, "Metr")
423+
XCTAssertEqual(localizator.km.short, "km")
424+
XCTAssertEqual(localizator.km.full, "Kilometr")
425+
426+
} catch let error {
427+
XCTFail("error - \(error)")
428+
}
429+
}
430+
406431
// Is all language tested? Failed if not
407432
func testCheckTestCount() {
408433
let main = Bundle(for: UnitsLocalizator.self)
409434
let localizable = main.path(forResource: "Localizable", ofType: "bundle")
410435
.flatMap { Bundle(path: $0) }
411436

412-
XCTAssertEqual(localizable?.localizations, ["de", "en", "uk", "es", "et", "bg", "hu", "pl", "ru", "pt"])
437+
let langs = ["de", "en", "uk", "es", "et", "bg", "cs", "hu", "pl", "ru", "pt"]
438+
XCTAssertEqual(localizable?.localizations, langs)
413439
XCTAssertEqual(localizable?.localizations.count, LocalizatorTests.allTests.count - 1)
414440
}
415441

@@ -424,6 +450,7 @@ class LocalizatorTests: XCTestCase {
424450
("testLocalizatorPL", testLocalizatorPL),
425451
("testLocalizatorET", testLocalizatorET),
426452
("testLocalizatorBG", testLocalizatorBG),
453+
("testLocalizatorCS", testLocalizatorCS),
427454
("testCheckTestCount", testCheckTestCount)
428455
]
429456
}

Tests/units-swiftTests/UnitTypeTests.swift

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ class UnitTypeTests: XCTestCase {
125125

126126
func testDefaultUnits() {
127127
do {
128-
let units = try Units.default(language: "ru")
128+
let units = try Units.default(language: "uk")
129129

130130
XCTAssertEqual(units.area.from(242), 242)
131131
XCTAssertEqual(units.area.to(597.74), 597.74)
@@ -205,13 +205,13 @@ class UnitTypeTests: XCTestCase {
205205
let units = try Units.default(language: "ro")
206206
XCTFail("units - \(units)")
207207
} catch let error {
208-
XCTAssertEqual("\(error)", "localization(error: units_swift.UnitsLocalizator.E.unsupportedLanguage(language: \"ro\", supported: Optional([\"de\", \"en\", \"uk\", \"es\", \"et\", \"bg\", \"hu\", \"pl\", \"ru\", \"pt\"])))")
208+
XCTAssertEqual("\(error)", #"localization(error: units_swift.UnitsLocalizator.E.unsupportedLanguage(language: "ro", supported: Optional(["de", "en", "uk", "es", "et", "bg", "cs", "hu", "pl", "ru", "pt"])))"#)
209209
}
210210
}
211211

212212
func testUnitsError() {
213213
do {
214-
let units = try Units(units: [:], language: "ru")
214+
let units = try Units(units: [:], language: "uk")
215215
XCTFail("units - \(units)")
216216
} catch let error {
217217
XCTAssertEqual("\(error)", "notFound(type: \"area\", inTable: [:])")
@@ -221,13 +221,13 @@ class UnitTypeTests: XCTestCase {
221221
let units = try Units(units: [:], language: "ro")
222222
XCTFail("units - \(units)")
223223
} catch let error {
224-
XCTAssertEqual("\(error)", "localization(error: units_swift.UnitsLocalizator.E.unsupportedLanguage(language: \"ro\", supported: Optional([\"de\", \"en\", \"uk\", \"es\", \"et\", \"bg\", \"hu\", \"pl\", \"ru\", \"pt\"])))")
224+
XCTAssertEqual("\(error)", #"localization(error: units_swift.UnitsLocalizator.E.unsupportedLanguage(language: "ro", supported: Optional(["de", "en", "uk", "es", "et", "bg", "cs", "hu", "pl", "ru", "pt"])))"#)
225225
}
226226
}
227227

228228
func testUpdateUnits() {
229229
do {
230-
var units = try Units.default(language: "ru")
230+
var units = try Units.default(language: "uk")
231231

232232
XCTAssertEqual(units.area.from(242), 242)
233233
XCTAssertEqual(units.area.to(597.74), 597.74)

units-swift.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@
88

99
Pod::Spec.new do |s|
1010
s.name = 'units-swift'
11-
s.version = '1.1.0'
11+
s.version = '1.1.1'
1212
s.summary = 'Library for converting units of measurement'
1313
s.description = 'This library can convert units of measurement for agro systems'
1414

0 commit comments

Comments
 (0)