From 03fc508157d1bd4b2fb0098d68fd55bf5ca1316e Mon Sep 17 00:00:00 2001 From: Javier Cicchelli Date: Sat, 15 Apr 2023 01:38:04 +0200 Subject: [PATCH] Implemented the "empty" constant and the "isNotEmpty()" function in the String+Empty extension. --- Sources/Core/Extensions/String+Empty.swift | 24 ++++++++ Sources/Core/SwiftLibs.swift | 6 -- Tests/Core/Extensions/String+EmptyTests.swift | 56 +++++++++++++++++++ Tests/Core/SwiftLibsTests.swift | 11 ---- 4 files changed, 80 insertions(+), 17 deletions(-) create mode 100644 Sources/Core/Extensions/String+Empty.swift delete mode 100644 Sources/Core/SwiftLibs.swift create mode 100644 Tests/Core/Extensions/String+EmptyTests.swift delete mode 100644 Tests/Core/SwiftLibsTests.swift diff --git a/Sources/Core/Extensions/String+Empty.swift b/Sources/Core/Extensions/String+Empty.swift new file mode 100644 index 0000000..186ae1e --- /dev/null +++ b/Sources/Core/Extensions/String+Empty.swift @@ -0,0 +1,24 @@ +// +// String+Empty.swift +// Core +// +// Created by Javier Cicchelli on 15/04/2023. +// Copyright © 2023 Röck+Cöde. All rights reserved. +// + +public extension String { + + // MARK: Properties + + /// Represents an empty string. + static let empty = "" + + // MARK: Functions + + /// Checks whether a string is not empty. + /// - Returns: A boolean value that represents whether the string is not empty. + func isNotEmpty() -> Bool { + isEmpty == false + } + +} diff --git a/Sources/Core/SwiftLibs.swift b/Sources/Core/SwiftLibs.swift deleted file mode 100644 index 8c48b67..0000000 --- a/Sources/Core/SwiftLibs.swift +++ /dev/null @@ -1,6 +0,0 @@ -public struct SwiftLibs { - public private(set) var text = "Hello, World!" - - public init() { - } -} diff --git a/Tests/Core/Extensions/String+EmptyTests.swift b/Tests/Core/Extensions/String+EmptyTests.swift new file mode 100644 index 0000000..da099f6 --- /dev/null +++ b/Tests/Core/Extensions/String+EmptyTests.swift @@ -0,0 +1,56 @@ +// +// String+EmptyTests.swift +// Core +// +// Created by Javier Cicchelli on 15/04/2023. +// Copyright © 2022 Röck+Cöde. All rights reserved. +// + +import XCTest + +@testable import Core + +final class String_EmptyTests: XCTestCase { + + // MARK: Tests + + func test_empty() { + // GIVEN + let string = String.empty + + // WHEN + // THEN + XCTAssertEqual(string, "") + } + + func test_isNotEmpty_withEmptyString() { + // GIVEN + let string = String.empty + + // WHEN + let result = string.isNotEmpty() + + // THEN + XCTAssertFalse(result) + } + + func test_isNotEmpty_withFilledString() { + // GIVEN + let string = String.Test.string + + // WHEN + let result = string.isNotEmpty() + + // THEN + XCTAssertTrue(result) + } + +} + +// MARK: - String+Constants + +private extension String { + enum Test { + static let string = "Some test string..." + } +} diff --git a/Tests/Core/SwiftLibsTests.swift b/Tests/Core/SwiftLibsTests.swift deleted file mode 100644 index 11d5b96..0000000 --- a/Tests/Core/SwiftLibsTests.swift +++ /dev/null @@ -1,11 +0,0 @@ -import XCTest -@testable import SwiftLibs - -final class SwiftLibsTests: XCTestCase { - func testExample() throws { - // This is an example of a functional test case. - // Use XCTAssert and related functions to verify your tests produce the correct - // results. - XCTAssertEqual(SwiftLibs().text, "Hello, World!") - } -}