From 94b2983d9b1821d2ed65d29eec1d109e8f9f7573 Mon Sep 17 00:00:00 2001 From: Vitalii Budnik Date: Wed, 25 Jun 2025 18:54:12 +0300 Subject: [PATCH] chore: Utils tests target --- Package.swift | 7 ++++ .../CLITests.swift | 0 Tests/UtilsTests/VersionTests.swift | 40 +++++++++++++++++++ 3 files changed, 47 insertions(+) rename Tests/{BinaryDependencyManagerTests => UtilsTests}/CLITests.swift (100%) create mode 100644 Tests/UtilsTests/VersionTests.swift diff --git a/Package.swift b/Package.swift index 83c610b..e6d846e 100644 --- a/Package.swift +++ b/Package.swift @@ -49,5 +49,12 @@ let package = Package( .target(name: "BinaryDependencyManager"), ] ), + + .testTarget( + name: "UtilsTests", + dependencies: [ + .target(name: "Utils"), + ] + ), ] ) diff --git a/Tests/BinaryDependencyManagerTests/CLITests.swift b/Tests/UtilsTests/CLITests.swift similarity index 100% rename from Tests/BinaryDependencyManagerTests/CLITests.swift rename to Tests/UtilsTests/CLITests.swift diff --git a/Tests/UtilsTests/VersionTests.swift b/Tests/UtilsTests/VersionTests.swift new file mode 100644 index 0000000..7b68843 --- /dev/null +++ b/Tests/UtilsTests/VersionTests.swift @@ -0,0 +1,40 @@ +import Foundation +@testable import Utils +import Testing + +@Suite("Version tests") +struct VersionTests { + + @Test + func test_version_init() { + let version = Version(1, 2, 3, prereleaseIdentifiers: ["alpha", "1"], buildMetadataIdentifiers: ["4"]) + + // Same init is equal + #expect(version == Version(1, 2, 3, prereleaseIdentifiers: ["alpha", "1"], buildMetadataIdentifiers: ["4"])) + + // Equal to ExpressibleByStringLiteral + #expect(version == "1.2.3-alpha.1+4") + + // Stores values correctly + #expect(version.major == 1) + #expect(version.minor == 2) + #expect(version.patch == 3) + #expect(version.prereleaseIdentifiers == ["alpha", "1"]) + #expect(version.buildMetadataIdentifiers == ["4"]) + } + + @Test + func test_version_compare() { + + // Metadata doesn't influence when comparing to release + #expect(Version(1, 2, 3, buildMetadataIdentifiers: ["4"]) == "1.2.3") + + // Release is greater than pre-release + #expect(Version(1, 2, 3) > "1.2.3-alpha.1+4") + + // Next versions are bigger + #expect(Version(1, 2, 4) > "1.2.3") + #expect(Version(1, 3, 3) > "1.2.3") + #expect(Version(2, 2, 3) > "1.2.3") + } +}