-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathPackage.swift
More file actions
128 lines (118 loc) · 3.48 KB
/
Package.swift
File metadata and controls
128 lines (118 loc) · 3.48 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
// swift-tools-version:5.6
// The swift-tools-version declares the minimum version of Swift required to build this package.
import PackageDescription
let package = Package(
name: "SwiftlaneCore",
platforms: [.macOS("14.0")],
products: [
/// Umbrella target.
///
/// Instead of doing this:
///
/// import SwiftlanePaths
/// import SwiftlaneLogging
/// import SwiftlaneCoreServices
/// import SwiftlaneShell
/// import SwiftlaneExtensions
///
/// You can do this:
///
/// import SwiftlaneCore
///
.library(name: "SwiftlaneCore", targets: ["SwiftlaneCore"]),
.library(name: "SwiftlanePaths", targets: ["SwiftlanePaths"]),
.library(name: "SwiftlaneLogging", targets: ["SwiftlaneLogging"]),
.library(name: "SwiftlaneCoreServices", targets: ["SwiftlaneCoreServices"]),
.library(name: "SwiftlaneShell", targets: ["SwiftlaneShell"]),
.library(name: "SwiftlaneExtensions", targets: ["SwiftlaneExtensions"]),
/// Contains usefull stuff for unit testing.
.library(name: "SwiftlaneUnitTestTools", targets: ["SwiftlaneUnitTestTools"]),
/// Сontains mocks for this package **generated by SwiftyMocky**.
.library(name: "SwiftlaneCoreMocks", targets: ["SwiftlaneCoreMocks"]),
],
dependencies: [
.package(url: "https://github.com/nstmrt/PerfectRainbow", from: "4.0.2"),
.package(url: "https://github.com/swiftlane-code/SwiftyMocky", branch: "master"),
],
targets: [
// MARK: Products targets
.target(name: "SwiftlaneCore", dependencies: [
"SwiftlanePaths",
"SwiftlaneLogging",
"SwiftlaneCoreServices",
"SwiftlaneShell",
"SwiftlaneExtensions",
]),
.target(name: "SwiftlaneExtensions", dependencies: [
"PerfectRainbow",
]),
.target(name: "SwiftlaneLogging", dependencies: [
"SwiftlaneExtensions",
"PerfectRainbow",
]),
.target(name: "SwiftlaneCoreServices", dependencies: [
"SwiftlaneExtensions",
"SwiftlaneLogging",
"PerfectRainbow",
]),
.target(name: "SwiftlanePaths", dependencies: [
"SwiftlaneLogging",
"SwiftlaneExtensions",
"SwiftlaneCoreServices",
]),
.target(name: "SwiftlaneShell", dependencies: [
"SwiftlaneExtensions",
"SwiftlaneLogging",
"SwiftlanePaths",
"SwiftlaneCoreServices",
"PerfectRainbow",
]),
.target(name: "SwiftlaneUnitTestTools", dependencies: [
"SwiftlaneExtensions",
"SwiftlaneLogging",
"SwiftlaneCoreServices",
"SwiftlanePaths",
"PerfectRainbow",
]),
// MARK: Unit Tests
.target(name: "SwiftlaneCoreMocks", dependencies: [
"SwiftlanePaths",
"SwiftlaneLogging",
"SwiftlaneCoreServices",
"SwiftlaneShell",
"SwiftlaneExtensions",
"PerfectRainbow",
.product(name: "SwiftyMockyXCTest", package: "SwiftyMocky"),
]),
.testTarget(name: "SwiftlaneExtensionsTests", dependencies: [
"SwiftlaneExtensions",
"SwiftlaneUnitTestTools",
"SwiftlaneCoreMocks",
"SwiftyMocky",
]),
.testTarget(name: "SwiftlaneLoggingTests", dependencies: [
"SwiftlaneLogging",
"SwiftlaneUnitTestTools",
"SwiftlaneCoreMocks",
"SwiftyMocky",
]),
.testTarget(name: "SwiftlaneCoreServicesTests", dependencies: [
"SwiftlaneCoreServices",
"SwiftlaneUnitTestTools",
"SwiftlaneCoreMocks",
"SwiftyMocky",
]),
.testTarget(name: "SwiftlanePathsTests", dependencies: [
"SwiftlanePaths",
"SwiftlaneUnitTestTools",
"SwiftlaneCoreMocks",
"SwiftyMocky",
]),
.testTarget(name: "SwiftlaneShellTests", dependencies: [
"SwiftlaneShell",
"SwiftlaneUnitTestTools",
"SwiftlaneCoreMocks",
"SwiftyMocky",
]),
]
)