Files
XcodeGen/Tests/FixtureTests/FixtureTests.swift
T
Wendy Liga 43e40a9efc Added support for scheme management (#1142)
* wip

* Added scheme management metadata properties to TargetScheme

* wip

* Added Scheme.Management for metadata

* use sharedDefault

* move generateSchemeManagement to SchemeGenerator

* revert

* update changelog

* update docs

* update test case

* remove

* remove unused file

* revert

* changed on fixtures project

* Updated ProjectSpec docs index

* User Scheme.Management also for TargetSchemes, use XCUserData

* Changelog

* Switch XcodeProj back tuist/XcodeProj - 8.9.0

* Reindent TOC Docs/ProjectSpec.md

* Revert swift tools version

---------

Co-authored-by: Tieme van Veen <tiemevanveen@hotmail.com>
2023-02-24 09:49:57 +11:00

35 lines
1.2 KiB
Swift

import PathKit
import ProjectSpec
import Spectre
import XcodeGenKit
import XcodeProj
import XCTest
import TestSupport
class FixtureTests: XCTestCase {
func testProjectFixture() {
describe {
$0.it("generates Test Project") {
try generateXcodeProject(specPath: fixturePath + "TestProject/AnotherProject/project.yml")
try generateXcodeProject(specPath: fixturePath + "TestProject/project.yml")
}
$0.it("generates Carthage Project") {
try generateXcodeProject(specPath: fixturePath + "CarthageProject/project.yml")
}
$0.it("generates SPM Project") {
try generateXcodeProject(specPath: fixturePath + "SPM/project.yml")
}
}
}
}
private func generateXcodeProject(specPath: Path, file: String = #file, line: Int = #line) throws {
let project = try Project(path: specPath)
let generator = ProjectGenerator(project: project)
let writer = FileWriter(project: project)
let xcodeProject = try generator.generateXcodeProject(userName: "someUser")
try writer.writeXcodeProject(xcodeProject)
try writer.writePlists()
}