add project tests

test
This commit is contained in:
yonaskolb
2019-09-27 17:10:55 +10:00
parent fa5bd83049
commit f55507187a
2 changed files with 30 additions and 0 deletions
@@ -458,6 +458,11 @@ class ProjectSpecTests: XCTestCase {
postActions: [Scheme.ExecutionAction(name: "postAction",
script: "bar",
settingsTarget: "foo")]))],
packages: [
"Yams": SwiftPackage(
url: "https://github.com/jpsim/Yams",
versionRequirement: .upToNextMajorVersion("2.0.0"))
],
options: SpecOptions(minimumXcodeGenVersion: Version(major: 3, minor: 4, patch: 5),
carthageBuildPath: "carthageBuildPath",
carthageExecutablePath: "carthageExecutablePath",
@@ -496,6 +501,7 @@ class ProjectSpecTests: XCTestCase {
try expect(proj.options) == restoredProj.options
try expect(proj.settingGroups) == restoredProj.settingGroups
try expect(proj.targets) == restoredProj.targets
try expect(proj.packages) == restoredProj.packages
try expect(proj) == restoredProj
}
@@ -960,6 +960,30 @@ class SpecLoadingTests: XCTestCase {
let parsedSpec = try getProjectSpec(dictionary)
try expect(parsedSpec) == expected
}
$0.it("parses packages") {
let project = Project(name: "spm", packages: [
"package1": SwiftPackage(url: "package.git", versionRequirement: .exact("1.2.2")),
"package2": SwiftPackage(url: "package.git", versionRequirement: .upToNextMajorVersion("1.2.2")),
"package3": SwiftPackage(url: "package.git", versionRequirement: .upToNextMinorVersion("1.2.2")),
"package4": SwiftPackage(url: "package.git", versionRequirement: .branch("master")),
"package5": SwiftPackage(url: "package.git", versionRequirement: .revision("x")),
"package6": SwiftPackage(url: "package.git", versionRequirement: .range(from: "1.2.0", to: "1.2.5")),
])
let dictionary: [String: Any] = [
"name": "spm",
"packages": [
"package1": ["url": "package.git", "exactVersion": "1.2.2"],
"package2": ["url": "package.git", "majorVersion": "1.2.2"],
"package3": ["url": "package.git", "minorVersion": "1.2.2"],
"package4": ["url": "package.git", "branch": "master"],
"package5": ["url": "package.git", "revision": "x"],
"package6": ["url": "package.git", "minVersion": "1.2.0", "maxVersion": "1.2.5"],
]]
let parsedSpec = try getProjectSpec(dictionary)
try expect(parsedSpec) == project
}
}
}