Clean up project.
This commit is contained in:
parent
8abe3f2091
commit
b3bec5f8ff
|
@ -1,49 +0,0 @@
|
||||||
import Foundation
|
|
||||||
|
|
||||||
@discardableResult
|
|
||||||
func shell(_ args: [String], inDir dir: String? = nil) -> Int32 {
|
|
||||||
let task = Process()
|
|
||||||
task.launchPath = "/usr/bin/env"
|
|
||||||
task.arguments = args
|
|
||||||
if let dir = dir {
|
|
||||||
task.currentDirectoryPath = dir
|
|
||||||
}
|
|
||||||
task.launch()
|
|
||||||
task.waitUntilExit()
|
|
||||||
return task.terminationStatus
|
|
||||||
}
|
|
||||||
|
|
||||||
let projectDir = ProcessInfo.processInfo.environment["PROJECT_DIR", default: "."]
|
|
||||||
|
|
||||||
let output = "\(projectDir)/Tests/Swift/Generated/GeneratedMocks.swift"
|
|
||||||
|
|
||||||
// Use seperate variables for each file.
|
|
||||||
let generatorArguments = [
|
|
||||||
"generate",
|
|
||||||
"--testable",
|
|
||||||
"Cuckoo",
|
|
||||||
"--exclude",
|
|
||||||
"ExcludedTestClass,ExcludedProtocol",
|
|
||||||
"--output",
|
|
||||||
output,
|
|
||||||
"\(projectDir)/Tests/Swift/Source/ClassForStubTesting.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/ClassWithOptionals.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/ObjcProtocol.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/UnicodeTestProtocol.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/TestedProtocol.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/TestedClass.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/TestedSubclass.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/TestedSubProtocol.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/ExcludedTestClass.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/GenericClass.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/GenericProtocol.swift",
|
|
||||||
"\(projectDir)/Tests/Swift/Source/GenericMethodClass.swift",
|
|
||||||
]
|
|
||||||
|
|
||||||
let useRun = Bool(ProcessInfo.processInfo.environment["USE_RUN", default: "false"]) ?? false
|
|
||||||
|
|
||||||
if useRun {
|
|
||||||
shell(["\(projectDir)/run", "--clean"] + generatorArguments)
|
|
||||||
} else {
|
|
||||||
shell(["swift", "run", "cuckoo_generator"] + generatorArguments, inDir: "\(projectDir)/Generator/")
|
|
||||||
}
|
|
|
@ -1 +0,0 @@
|
||||||
4.2.1
|
|
|
@ -153,8 +153,8 @@ public struct GenerateMocksCommand: CommandProtocol {
|
||||||
debugMode: Bool,
|
debugMode: Bool,
|
||||||
globEnabled: Bool,
|
globEnabled: Bool,
|
||||||
regex: String,
|
regex: String,
|
||||||
files: [String]) {
|
files: [String]
|
||||||
|
) {
|
||||||
self.output = output
|
self.output = output
|
||||||
self.testableFrameworks = testableFrameworks.components(separatedBy: ",").filter { !$0.isEmpty }
|
self.testableFrameworks = testableFrameworks.components(separatedBy: ",").filter { !$0.isEmpty }
|
||||||
self.exclude = exclude.components(separatedBy: ",").filter { !$0.isEmpty }.map { $0.trimmingCharacters(in: .whitespacesAndNewlines) }
|
self.exclude = exclude.components(separatedBy: ",").filter { !$0.isEmpty }.map { $0.trimmingCharacters(in: .whitespacesAndNewlines) }
|
||||||
|
|
|
@ -54,8 +54,19 @@ func platformSet(platform: PlatformType, deploymentTarget: DeploymentTarget?) ->
|
||||||
],
|
],
|
||||||
actions: [
|
actions: [
|
||||||
.pre(
|
.pre(
|
||||||
path: "Scripts/RunCuckooGen.sh",
|
path: "run",
|
||||||
name: "Generate Mocks"
|
arguments: [
|
||||||
|
"generate",
|
||||||
|
"--testable",
|
||||||
|
"Cuckoo",
|
||||||
|
"--exclude",
|
||||||
|
"ExcludedTestClass,ExcludedProtocol",
|
||||||
|
"--output",
|
||||||
|
#""$PROJECT_DIR"/Tests/Swift/Generated/GeneratedMocks.swift"#,
|
||||||
|
"--glob",
|
||||||
|
#""$PROJECT_DIR"/Tests/Swift/Source/*.swift"#,
|
||||||
|
],
|
||||||
|
name: "Generate Mockinos"
|
||||||
)
|
)
|
||||||
],
|
],
|
||||||
dependencies: [
|
dependencies: [
|
||||||
|
@ -120,86 +131,6 @@ func platformSet(platform: PlatformType, deploymentTarget: DeploymentTarget?) ->
|
||||||
return (targets, schemes)
|
return (targets, schemes)
|
||||||
}
|
}
|
||||||
|
|
||||||
// MARK: iOS target and scheme definition
|
|
||||||
// let iosTarget = Target(
|
|
||||||
// name: "Cuckoo-iOS",
|
|
||||||
// platform: .iOS,
|
|
||||||
// product: .framework,
|
|
||||||
// bundleId: "org.brightify.Cuckoo",
|
|
||||||
// deploymentTarget: .iOS(targetVersion: "9.0", devices: [.iphone, .ipad]),
|
|
||||||
// infoPlist: .extendingDefault(with: [:]),
|
|
||||||
// sources: "Source/**",
|
|
||||||
// settings: defaultBuildSettings
|
|
||||||
// )
|
|
||||||
//
|
|
||||||
// let iosTestTarget = Target(
|
|
||||||
// name: "Cuckoo-iOSTests",
|
|
||||||
// platform: .iOS,
|
|
||||||
// product: .unitTests,
|
|
||||||
// bundleId: "org.brightify.Cuckoo",
|
|
||||||
// infoPlist: .extendingDefault(with: [:]),
|
|
||||||
// sources: [
|
|
||||||
// "Tests/Common/**",
|
|
||||||
// "Tests/Swift/**",
|
|
||||||
// ],
|
|
||||||
// actions: [
|
|
||||||
// .pre(
|
|
||||||
// path: "Scripts/RunCuckooGen.sh",
|
|
||||||
// name: "Generate Mocks"
|
|
||||||
// )
|
|
||||||
// ],
|
|
||||||
// dependencies: [
|
|
||||||
// .target(name: iosTarget.name)
|
|
||||||
// ]
|
|
||||||
// )
|
|
||||||
//
|
|
||||||
// let iosObjCTarget = Target(
|
|
||||||
// name: "Cuckoo_OCMock-iOS",
|
|
||||||
// platform: .iOS,
|
|
||||||
// product: .framework,
|
|
||||||
// bundleId: "org.brightify.Cuckoo",
|
|
||||||
// deploymentTarget: .iOS(targetVersion: "9.0", devices: [.iphone, .ipad]),
|
|
||||||
// infoPlist: .extendingDefault(with: [:]),
|
|
||||||
// sources: [
|
|
||||||
// "Source/**",
|
|
||||||
// "OCMock/**",
|
|
||||||
// ],
|
|
||||||
// headers: .init(private: ["OCMock/**"]),
|
|
||||||
// dependencies: [
|
|
||||||
// .cocoapods(path: "."),
|
|
||||||
// .sdk(name: "OCMock.framework", status: .required),
|
|
||||||
// ],
|
|
||||||
// settings: objCBuildSettings
|
|
||||||
// )
|
|
||||||
//
|
|
||||||
// let iosObjCTestTarget = Target(
|
|
||||||
// name: "Cuckoo_OCMock-iOSTests",
|
|
||||||
// platform: .iOS,
|
|
||||||
// product: .unitTests,
|
|
||||||
// bundleId: "org.brightify.Cuckoo",
|
|
||||||
// infoPlist: .extendingDefault(with: [:]),
|
|
||||||
// sources: [
|
|
||||||
// "Tests/Common/**",
|
|
||||||
// "Tests/OCMock/**",
|
|
||||||
// ],
|
|
||||||
// dependencies: [
|
|
||||||
// .target(name: iosObjCTarget.name)
|
|
||||||
// ]
|
|
||||||
// )
|
|
||||||
//
|
|
||||||
// let iosScheme = Scheme(
|
|
||||||
// name: iosTarget.name,
|
|
||||||
// buildAction: .init(targets: [.init(stringLiteral: iosTarget.name)]),
|
|
||||||
// testAction: .init(targets: [.init(stringLiteral: iosTestTarget.name)])
|
|
||||||
// )
|
|
||||||
//
|
|
||||||
// let iosObjCScheme = Scheme(
|
|
||||||
// name: iosObjCTarget.name,
|
|
||||||
// shared: false,
|
|
||||||
// buildAction: .init(targets: [.init(stringLiteral: iosObjCTarget.name)]),
|
|
||||||
// testAction: .init(targets: [.init(stringLiteral: iosObjCTestTarget.name)])
|
|
||||||
// )
|
|
||||||
|
|
||||||
let (iOSTargets, iOSSchemes) = platformSet(platform: .iOS, deploymentTarget: .iOS(targetVersion: "8.0", devices: [.iphone, .ipad]))
|
let (iOSTargets, iOSSchemes) = platformSet(platform: .iOS, deploymentTarget: .iOS(targetVersion: "8.0", devices: [.iphone, .ipad]))
|
||||||
let (macOSTargets, macOSSchemes) = platformSet(platform: .macOS, deploymentTarget: .macOS(targetVersion: "10.9"))
|
let (macOSTargets, macOSSchemes) = platformSet(platform: .macOS, deploymentTarget: .macOS(targetVersion: "10.9"))
|
||||||
let (tvOSTargets, tvOSSchemes) = platformSet(platform: .tvOS, deploymentTarget: nil)
|
let (tvOSTargets, tvOSSchemes) = platformSet(platform: .tvOS, deploymentTarget: nil)
|
||||||
|
|
|
@ -1,6 +0,0 @@
|
||||||
GENERATE=1
|
|
||||||
|
|
||||||
if [ $GENERATE -ne 0 ]; then
|
|
||||||
env -i PATH=$PATH PROJECT_DIR=$PROJECT_DIR USE_RUN=$USE_RUN swift "$PROJECT_DIR/GenerateMocksForTests.swift"
|
|
||||||
fi
|
|
||||||
|
|
|
@ -1,9 +1,7 @@
|
||||||
import ProjectDescription
|
import ProjectDescription
|
||||||
|
|
||||||
let generateMocksScript = "Scripts/RunCuckooGen.sh"
|
|
||||||
let generatorProject = "Generator/CuckooGenerator.xcodeproj"
|
let generatorProject = "Generator/CuckooGenerator.xcodeproj"
|
||||||
|
|
||||||
let setup = Setup([
|
let setup = Setup([
|
||||||
.custom(name: "Generator project must be created.", meet: ["make", "dev"], isMet: isMet: ["ls", generatorProject])
|
.custom(name: "Generator project must be created.", meet: ["make", "dev"], isMet: isMet: ["ls", generatorProject])
|
||||||
.custom(name: "Generate Mocks script must be executable.", meet: ["chmod", "u+x", generateMocksScript], isMet: ["if [[ -x \"\(generateMocksScript)\" ]]; then return 0; else return 1; fi"]),
|
|
||||||
])
|
])
|
||||||
|
|
Loading…
Reference in New Issue