Skip to content

Commit 95b4391

Browse files
committed
Add and Update Tests for no sources package
1 parent 08fe4fb commit 95b4391

File tree

6 files changed

+30
-10
lines changed

6 files changed

+30
-10
lines changed

Fixtures/InvalidLayouts/NoTargets/Package.swift

Whitespace-only changes.
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import PackageDescription
2+
3+
let package = Package(
4+
name: "EmptyWithDependency",
5+
dependencies: [
6+
.Package(url: "../FooLib2", majorVersion: 1),
7+
])

Tests/Functional/TestInvalidLayouts.swift

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -14,13 +14,6 @@ import func POSIX.unlink
1414

1515
class InvalidLayoutsTestCase: XCTestCase {
1616

17-
func testNoTargets() {
18-
fixture(name: "InvalidLayouts/NoTargets") { prefix in
19-
XCTAssertFileExists(prefix, "Package.swift")
20-
XCTAssertBuildFails(prefix)
21-
}
22-
}
23-
2417
func testMultipleRoots() {
2518
fixture(name: "InvalidLayouts/MultipleRoots1") { prefix in
2619
XCTAssertBuildFails(prefix)

Tests/Functional/TestMiscellaneous.swift

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,25 @@ class MiscellaneousTestCase: XCTestCase {
3131
}
3232
}
3333

34+
func testPackageWithNoSources() {
35+
36+
// Tests a package with no source files
37+
38+
fixture(name: "Miscellaneous/Empty") { prefix in
39+
XCTAssertBuilds(prefix)
40+
}
41+
}
42+
43+
func testPackageWithNoSourcesButDependency() {
44+
45+
// Tests a package with no source files but dependency, dependency should build.
46+
47+
fixture(name: "Miscellaneous/ExactDependencies") { prefix in
48+
XCTAssertBuilds(prefix, "EmptyWithDependency")
49+
XCTAssertFileExists(prefix, "EmptyWithDependency/.build/debug/FooLib2.swiftmodule")
50+
}
51+
}
52+
3453
func testManifestExcludes1() {
3554

3655
// Tests exclude syntax where no target customization is specified

Tests/Functional/TestValidLayouts.swift

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,6 @@ extension DependencyResolutionTestCase: XCTestCaseProvider {
146146
extension InvalidLayoutsTestCase: XCTestCaseProvider {
147147
var allTests : [(String, () throws -> Void)] {
148148
return [
149-
("testNoTargets", testNoTargets),
150149
("testMultipleRoots", testMultipleRoots),
151150
("testInvalidLayout1", testInvalidLayout1),
152151
("testInvalidLayout2", testInvalidLayout2),
@@ -161,6 +160,8 @@ extension MiscellaneousTestCase: XCTestCaseProvider {
161160
var allTests : [(String, () throws -> Void)] {
162161
return [
163162
("testPrintsSelectedDependencyVersion", testPrintsSelectedDependencyVersion),
163+
("testPackageWithNoSources", testPackageWithNoSources),
164+
("testPackageWithNoSourcesButDependency", testPackageWithNoSourcesButDependency),
164165
("testManifestExcludes1", testManifestExcludes1),
165166
("testManifestExcludes2", testManifestExcludes2),
166167
("testManifestExcludes3", testManifestExcludes3),

Tests/Transmute/ModuleTests.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -201,7 +201,7 @@ extension ModuleTests {
201201
let prefix = Path.join(prefix, "App")
202202
let manifest = try Manifest(path: prefix, baseURL: prefix)
203203
let packages = try get(manifest)
204-
let (modules, _) = try transmute(packages)
204+
let (modules, _) = try transmute(packages, rootdir: prefix)
205205

206206
XCTAssertEqual(modules.count, 3)
207207
XCTAssertEqual(recursiveDependencies(modules).count, 3)
@@ -212,7 +212,7 @@ extension ModuleTests {
212212
let prefix = Path.join(prefix, "App")
213213
let manifest = try Manifest(path: prefix, baseURL: prefix)
214214
let packages = try get(manifest)
215-
let (modules, _) = try transmute(packages)
215+
let (modules, _) = try transmute(packages, rootdir: prefix)
216216

217217
XCTAssertEqual(modules.count, 2)
218218
XCTAssertTrue(modules.first is CModule)

0 commit comments

Comments
 (0)