swift-libs/Tests/Core/Extensions/Bool+InitTests.swift
Javier Cicchelli 185f779daf [Feature] Some basic core feature (#1)
This PR refers to the work done on setting the `Core` target as well as implemented some basic features as extension to a pair of `Swift` primitive types.

To give further details about this work:
- [x] defined the `Core` target;
- [x] implemented the **empty** static property and the **isNotEmpty()** function in the `String+Empty` extension;
- [x] implemented the **init(_: )** initialiser fo strings in the `Bool+Init` extension;

Co-authored-by: Javier Cicchelli <javier@rock-n-code.com>
Reviewed-on: #1
2023-04-16 12:27:57 +00:00

61 lines
1.3 KiB
Swift

//
// Bool+InitTests.swift
// Core
//
// Created by Javier Cicchelli on 15/04/2023.
// Copyright © 2023 Röck+Cöde. All rights reserved.
//
import Core
import XCTest
final class Bool_InitTests: XCTestCase {
// MARK: Properties
private var strings: [String] = []
private var booleans: [Bool] = []
// MARK: Tests
func test_init_withPositiveStrings() {
// GIVEN
strings = ["YES", "Yes", "yes", "TRUE", "TrUe", "true", "One", "OnE", "one", "1"]
// WHEN
booleans = strings.map(Bool.init)
// THEN
booleans.forEach { boolean in
XCTAssertTrue(boolean)
}
}
func test_init_withNegativeStrings() {
// GIVEN
strings = ["NO", "No", "no", "FALSE", "FaLsE", "false", "ZERO", "ZeRo", "zero", "0"]
// WHEN
booleans = strings.map(Bool.init)
// THEN
booleans.forEach { boolean in
XCTAssertFalse(boolean)
}
}
func test_init_withOtherStrings() {
// GIVEN
strings = [.empty, "...", "something", "yes-", "false+", "X", "9"]
// WHEN
booleans = strings.map(Bool.init)
// THEN
booleans.forEach { boolean in
XCTAssertFalse(boolean)
}
}
}