Skip to content

Commit 41b4bc0

Browse files
committed
cleanup
1 parent d7ea854 commit 41b4bc0

File tree

1 file changed

+50
-0
lines changed

1 file changed

+50
-0
lines changed

Tests/PackageLoadingTests/PD_Next_LoadingTests.swift

Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,56 @@ class PackageDescriptionNextLoadingTests: PackageDescriptionLoadingTests {
1616
.vNext
1717
}
1818

19+
func testSourceControlDependencies() throws {
20+
let manifest = """
21+
import PackageDescription
22+
let package = Package(
23+
name: "MyPackage",
24+
dependencies: [
25+
// from
26+
.package(name: "foo1", url: "http://localhost/foo1", from: "1.1.1"),
27+
.package(url: "http://localhost/foo2", from: "1.1.1"),
28+
// upToNextMajor
29+
.package(name: "bar1", url: "http://localhost/bar1", .upToNextMajor(from: "1.1.1")),
30+
.package(url: "http://localhost/bar2", .upToNextMajor(from: "1.1.1")),
31+
// upToNextMinor
32+
.package(name: "baz1", url: "http://localhost/baz1", .upToNextMinor(from: "1.1.1")),
33+
.package(url: "http://localhost/baz2", .upToNextMinor(from: "1.1.1")),
34+
// exact
35+
.package(name: "qux1", url: "http://localhost/qux1", .exact("1.1.1")),
36+
.package(url: "http://localhost/qux2", .exact("1.1.1")),
37+
.package(url: "http://localhost/qux3", exact: "1.1.1"),
38+
// branch
39+
.package(name: "quux1", url: "http://localhost/quux1", .branch("main")),
40+
.package(url: "http://localhost/quux2", .branch("main")),
41+
.package(url: "http://localhost/quux3", branch: "main"),
42+
// revision
43+
.package(name: "quuz1", url: "http://localhost/quuz1", .revision("abcdefg")),
44+
.package(url: "http://localhost/quuz2", .revision("abcdefg")),
45+
.package(url: "http://localhost/quuz3", revision: "abcdefg"),
46+
]
47+
)
48+
"""
49+
loadManifest(manifest, toolsVersion: self.toolsVersion) { manifest in
50+
let deps = Dictionary(uniqueKeysWithValues: manifest.dependencies.map{ ($0.identity.description, $0) })
51+
XCTAssertEqual(deps["foo1"], .sourceControl(identity: .plain("foo1"), name: "foo1", location: "http://localhost/foo1", requirement: .range("1.1.1" ..< "2.0.0")))
52+
XCTAssertEqual(deps["foo2"], .sourceControl(identity: .plain("foo2"), name: nil, location: "http://localhost/foo2", requirement: .range("1.1.1" ..< "2.0.0")))
53+
XCTAssertEqual(deps["bar1"], .sourceControl(identity: .plain("bar1"), name: "bar1", location: "http://localhost/bar1", requirement: .range("1.1.1" ..< "2.0.0")))
54+
XCTAssertEqual(deps["bar2"], .sourceControl(identity: .plain("bar2"), name: nil, location: "http://localhost/bar2", requirement: .range("1.1.1" ..< "2.0.0")))
55+
XCTAssertEqual(deps["baz1"], .sourceControl(identity: .plain("baz1"), name: "baz1", location: "http://localhost/baz1", requirement: .range("1.1.1" ..< "1.2.0")))
56+
XCTAssertEqual(deps["baz2"], .sourceControl(identity: .plain("baz2"), name: nil, location: "http://localhost/baz2", requirement: .range("1.1.1" ..< "1.2.0")))
57+
XCTAssertEqual(deps["qux1"], .sourceControl(identity: .plain("qux1"), name: "qux1", location: "http://localhost/qux1", requirement: .exact("1.1.1")))
58+
XCTAssertEqual(deps["qux2"], .sourceControl(identity: .plain("qux2"), name: nil, location: "http://localhost/qux2", requirement: .exact("1.1.1")))
59+
XCTAssertEqual(deps["qux3"], .sourceControl(identity: .plain("qux3"), name: nil, location: "http://localhost/qux3", requirement: .exact("1.1.1")))
60+
XCTAssertEqual(deps["quux1"], .sourceControl(identity: .plain("quux1"), name: "quux1", location: "http://localhost/quux1", requirement: .branch("main")))
61+
XCTAssertEqual(deps["quux2"], .sourceControl(identity: .plain("quux2"), name: nil, location: "http://localhost/quux2", requirement: .branch("main")))
62+
XCTAssertEqual(deps["quux3"], .sourceControl(identity: .plain("quux3"), name: nil, location: "http://localhost/quux3", requirement: .branch("main")))
63+
XCTAssertEqual(deps["quuz1"], .sourceControl(identity: .plain("quuz1"), name: "quuz1", location: "http://localhost/quuz1", requirement: .revision("abcdefg")))
64+
XCTAssertEqual(deps["quuz2"], .sourceControl(identity: .plain("quuz2"), name: nil, location: "http://localhost/quuz2", requirement: .revision("abcdefg")))
65+
XCTAssertEqual(deps["quuz3"], .sourceControl(identity: .plain("quuz3"), name: nil, location: "http://localhost/quuz3", requirement: .revision("abcdefg")))
66+
}
67+
}
68+
1969
func testRegistryDependencies() throws {
2070
let manifest = """
2171
import PackageDescription

0 commit comments

Comments
 (0)