Added the Unit and UI tests targets to the Xcode project, and attached them to the Piper target.

This commit is contained in:
Javier Cicchelli 2024-10-04 21:49:48 +02:00
parent 30abbbdb55
commit 181dba2070
4 changed files with 100 additions and 79 deletions

View File

@ -7,14 +7,14 @@
objects = {
/* Begin PBXContainerItemProxy section */
46D4BE8B2CB06ED500FCFB84 /* PBXContainerItemProxy */ = {
46D4BED82CB07C7A00FCFB84 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 46D4BE6F2CB06ED300FCFB84 /* Project object */;
proxyType = 1;
remoteGlobalIDString = 46D4BE762CB06ED300FCFB84;
remoteInfo = Piper;
};
46D4BE952CB06ED500FCFB84 /* PBXContainerItemProxy */ = {
46D4BEE82CB07CB600FCFB84 /* PBXContainerItemProxy */ = {
isa = PBXContainerItemProxy;
containerPortal = 46D4BE6F2CB06ED300FCFB84 /* Project object */;
proxyType = 1;
@ -25,24 +25,51 @@
/* Begin PBXFileReference section */
46D4BE772CB06ED300FCFB84 /* Piper.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Piper.app; sourceTree = BUILT_PRODUCTS_DIR; };
46D4BE8A2CB06ED500FCFB84 /* PiperTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = PiperTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
46D4BE942CB06ED500FCFB84 /* PiperUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = PiperUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
46D4BED42CB07C7A00FCFB84 /* UnitTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = UnitTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
46D4BEE22CB07CB600FCFB84 /* UITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = UITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
/* End PBXFileReference section */
/* Begin PBXFileSystemSynchronizedBuildFileExceptionSet section */
46D4BEF62CB07CCB00FCFB84 /* Exceptions for "Tests" folder in "Piper" target */ = {
isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
membershipExceptions = (
UITests/UITests.swift,
UITests/UITestsLaunchTests.swift,
UnitTests/UnitTests.swift,
);
target = 46D4BE762CB06ED300FCFB84 /* Piper */;
};
46D4BEF72CB07CCB00FCFB84 /* Exceptions for "Tests" folder in "UnitTests" target */ = {
isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
membershipExceptions = (
UnitTests/UnitTests.swift,
);
target = 46D4BED32CB07C7A00FCFB84 /* UnitTests */;
};
46D4BEF82CB07CCB00FCFB84 /* Exceptions for "Tests" folder in "UITests" target */ = {
isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
membershipExceptions = (
UITests/UITests.swift,
UITests/UITestsLaunchTests.swift,
);
target = 46D4BEE12CB07CB600FCFB84 /* UITests */;
};
/* End PBXFileSystemSynchronizedBuildFileExceptionSet section */
/* Begin PBXFileSystemSynchronizedRootGroup section */
46D4BE792CB06ED300FCFB84 /* Piper */ = {
isa = PBXFileSystemSynchronizedRootGroup;
path = Piper;
sourceTree = "<group>";
};
46D4BE8D2CB06ED500FCFB84 /* PiperTests */ = {
46D4BEED2CB07CC100FCFB84 /* Tests */ = {
isa = PBXFileSystemSynchronizedRootGroup;
path = PiperTests;
sourceTree = "<group>";
};
46D4BE972CB06ED500FCFB84 /* PiperUITests */ = {
isa = PBXFileSystemSynchronizedRootGroup;
path = PiperUITests;
exceptions = (
46D4BEF62CB07CCB00FCFB84 /* Exceptions for "Tests" folder in "Piper" target */,
46D4BEF72CB07CCB00FCFB84 /* Exceptions for "Tests" folder in "UnitTests" target */,
46D4BEF82CB07CCB00FCFB84 /* Exceptions for "Tests" folder in "UITests" target */,
);
path = Tests;
sourceTree = "<group>";
};
/* End PBXFileSystemSynchronizedRootGroup section */
@ -55,14 +82,14 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
46D4BE872CB06ED500FCFB84 /* Frameworks */ = {
46D4BED12CB07C7A00FCFB84 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
46D4BE912CB06ED500FCFB84 /* Frameworks */ = {
46D4BEDF2CB07CB600FCFB84 /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
@ -76,8 +103,7 @@
isa = PBXGroup;
children = (
46D4BE792CB06ED300FCFB84 /* Piper */,
46D4BE8D2CB06ED500FCFB84 /* PiperTests */,
46D4BE972CB06ED500FCFB84 /* PiperUITests */,
46D4BEED2CB07CC100FCFB84 /* Tests */,
46D4BE782CB06ED300FCFB84 /* Products */,
);
sourceTree = "<group>";
@ -86,8 +112,8 @@
isa = PBXGroup;
children = (
46D4BE772CB06ED300FCFB84 /* Piper.app */,
46D4BE8A2CB06ED500FCFB84 /* PiperTests.xctest */,
46D4BE942CB06ED500FCFB84 /* PiperUITests.xctest */,
46D4BED42CB07C7A00FCFB84 /* UnitTests.xctest */,
46D4BEE22CB07CB600FCFB84 /* UITests.xctest */,
);
name = Products;
sourceTree = "<group>";
@ -109,6 +135,7 @@
);
fileSystemSynchronizedGroups = (
46D4BE792CB06ED300FCFB84 /* Piper */,
46D4BEED2CB07CC100FCFB84 /* Tests */,
);
name = Piper;
packageProductDependencies = (
@ -117,50 +144,44 @@
productReference = 46D4BE772CB06ED300FCFB84 /* Piper.app */;
productType = "com.apple.product-type.application";
};
46D4BE892CB06ED500FCFB84 /* PiperTests */ = {
46D4BED32CB07C7A00FCFB84 /* UnitTests */ = {
isa = PBXNativeTarget;
buildConfigurationList = 46D4BEA12CB06ED500FCFB84 /* Build configuration list for PBXNativeTarget "PiperTests" */;
buildConfigurationList = 46D4BEDA2CB07C7A00FCFB84 /* Build configuration list for PBXNativeTarget "UnitTests" */;
buildPhases = (
46D4BE862CB06ED500FCFB84 /* Sources */,
46D4BE872CB06ED500FCFB84 /* Frameworks */,
46D4BE882CB06ED500FCFB84 /* Resources */,
46D4BED02CB07C7A00FCFB84 /* Sources */,
46D4BED12CB07C7A00FCFB84 /* Frameworks */,
46D4BED22CB07C7A00FCFB84 /* Resources */,
);
buildRules = (
);
dependencies = (
46D4BE8C2CB06ED500FCFB84 /* PBXTargetDependency */,
46D4BED92CB07C7A00FCFB84 /* PBXTargetDependency */,
);
fileSystemSynchronizedGroups = (
46D4BE8D2CB06ED500FCFB84 /* PiperTests */,
);
name = PiperTests;
name = UnitTests;
packageProductDependencies = (
);
productName = PiperTests;
productReference = 46D4BE8A2CB06ED500FCFB84 /* PiperTests.xctest */;
productName = UnitTests;
productReference = 46D4BED42CB07C7A00FCFB84 /* UnitTests.xctest */;
productType = "com.apple.product-type.bundle.unit-test";
};
46D4BE932CB06ED500FCFB84 /* PiperUITests */ = {
46D4BEE12CB07CB600FCFB84 /* UITests */ = {
isa = PBXNativeTarget;
buildConfigurationList = 46D4BEA42CB06ED500FCFB84 /* Build configuration list for PBXNativeTarget "PiperUITests" */;
buildConfigurationList = 46D4BEEA2CB07CB600FCFB84 /* Build configuration list for PBXNativeTarget "UITests" */;
buildPhases = (
46D4BE902CB06ED500FCFB84 /* Sources */,
46D4BE912CB06ED500FCFB84 /* Frameworks */,
46D4BE922CB06ED500FCFB84 /* Resources */,
46D4BEDE2CB07CB600FCFB84 /* Sources */,
46D4BEDF2CB07CB600FCFB84 /* Frameworks */,
46D4BEE02CB07CB600FCFB84 /* Resources */,
);
buildRules = (
);
dependencies = (
46D4BE962CB06ED500FCFB84 /* PBXTargetDependency */,
46D4BEE92CB07CB600FCFB84 /* PBXTargetDependency */,
);
fileSystemSynchronizedGroups = (
46D4BE972CB06ED500FCFB84 /* PiperUITests */,
);
name = PiperUITests;
name = UITests;
packageProductDependencies = (
);
productName = PiperUITests;
productReference = 46D4BE942CB06ED500FCFB84 /* PiperUITests.xctest */;
productName = UITests;
productReference = 46D4BEE22CB07CB600FCFB84 /* UITests.xctest */;
productType = "com.apple.product-type.bundle.ui-testing";
};
/* End PBXNativeTarget section */
@ -178,11 +199,11 @@
46D4BE762CB06ED300FCFB84 = {
CreatedOnToolsVersion = 16.0;
};
46D4BE892CB06ED500FCFB84 = {
46D4BED32CB07C7A00FCFB84 = {
CreatedOnToolsVersion = 16.0;
TestTargetID = 46D4BE762CB06ED300FCFB84;
};
46D4BE932CB06ED500FCFB84 = {
46D4BEE12CB07CB600FCFB84 = {
CreatedOnToolsVersion = 16.0;
TestTargetID = 46D4BE762CB06ED300FCFB84;
};
@ -203,8 +224,8 @@
projectRoot = "";
targets = (
46D4BE762CB06ED300FCFB84 /* Piper */,
46D4BE892CB06ED500FCFB84 /* PiperTests */,
46D4BE932CB06ED500FCFB84 /* PiperUITests */,
46D4BED32CB07C7A00FCFB84 /* UnitTests */,
46D4BEE12CB07CB600FCFB84 /* UITests */,
);
};
/* End PBXProject section */
@ -217,14 +238,14 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
46D4BE882CB06ED500FCFB84 /* Resources */ = {
46D4BED22CB07C7A00FCFB84 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
46D4BE922CB06ED500FCFB84 /* Resources */ = {
46D4BEE02CB07CB600FCFB84 /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
@ -241,14 +262,14 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
46D4BE862CB06ED500FCFB84 /* Sources */ = {
46D4BED02CB07C7A00FCFB84 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
46D4BE902CB06ED500FCFB84 /* Sources */ = {
46D4BEDE2CB07CB600FCFB84 /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
@ -258,15 +279,15 @@
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
46D4BE8C2CB06ED500FCFB84 /* PBXTargetDependency */ = {
46D4BED92CB07C7A00FCFB84 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 46D4BE762CB06ED300FCFB84 /* Piper */;
targetProxy = 46D4BE8B2CB06ED500FCFB84 /* PBXContainerItemProxy */;
targetProxy = 46D4BED82CB07C7A00FCFB84 /* PBXContainerItemProxy */;
};
46D4BE962CB06ED500FCFB84 /* PBXTargetDependency */ = {
46D4BEE92CB07CB600FCFB84 /* PBXTargetDependency */ = {
isa = PBXTargetDependency;
target = 46D4BE762CB06ED300FCFB84 /* Piper */;
targetProxy = 46D4BE952CB06ED500FCFB84 /* PBXContainerItemProxy */;
targetProxy = 46D4BEE82CB07CB600FCFB84 /* PBXContainerItemProxy */;
};
/* End PBXTargetDependency section */
@ -449,7 +470,7 @@
};
name = Release;
};
46D4BEA22CB06ED500FCFB84 /* Debug */ = {
46D4BEDB2CB07C7A00FCFB84 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
@ -457,9 +478,8 @@
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = 7FMNM89WKG;
GENERATE_INFOPLIST_FILE = YES;
MACOSX_DEPLOYMENT_TARGET = 14.0;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = "com.rock-n-code.app.PiperTests";
PRODUCT_BUNDLE_IDENTIFIER = "com.rock-n-code.piper.tests.unit";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_EMIT_LOC_STRINGS = NO;
SWIFT_VERSION = 5.0;
@ -467,7 +487,7 @@
};
name = Debug;
};
46D4BEA32CB06ED500FCFB84 /* Release */ = {
46D4BEDC2CB07C7A00FCFB84 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
BUNDLE_LOADER = "$(TEST_HOST)";
@ -475,9 +495,8 @@
CURRENT_PROJECT_VERSION = 1;
DEVELOPMENT_TEAM = 7FMNM89WKG;
GENERATE_INFOPLIST_FILE = YES;
MACOSX_DEPLOYMENT_TARGET = 14.0;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = "com.rock-n-code.app.PiperTests";
PRODUCT_BUNDLE_IDENTIFIER = "com.rock-n-code.piper.tests.unit";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_EMIT_LOC_STRINGS = NO;
SWIFT_VERSION = 5.0;
@ -485,7 +504,7 @@
};
name = Release;
};
46D4BEA52CB06ED500FCFB84 /* Debug */ = {
46D4BEEB2CB07CB600FCFB84 /* Debug */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
@ -493,7 +512,7 @@
DEVELOPMENT_TEAM = 7FMNM89WKG;
GENERATE_INFOPLIST_FILE = YES;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = "com.rock-n-code.app.PiperUITests";
PRODUCT_BUNDLE_IDENTIFIER = "com.rock-n-code.piper.tests.ui";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_EMIT_LOC_STRINGS = NO;
SWIFT_VERSION = 5.0;
@ -501,7 +520,7 @@
};
name = Debug;
};
46D4BEA62CB06ED500FCFB84 /* Release */ = {
46D4BEEC2CB07CB600FCFB84 /* Release */ = {
isa = XCBuildConfiguration;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
@ -509,7 +528,7 @@
DEVELOPMENT_TEAM = 7FMNM89WKG;
GENERATE_INFOPLIST_FILE = YES;
MARKETING_VERSION = 1.0;
PRODUCT_BUNDLE_IDENTIFIER = "com.rock-n-code.app.PiperUITests";
PRODUCT_BUNDLE_IDENTIFIER = "com.rock-n-code.piper.tests.ui";
PRODUCT_NAME = "$(TARGET_NAME)";
SWIFT_EMIT_LOC_STRINGS = NO;
SWIFT_VERSION = 5.0;
@ -538,20 +557,20 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
46D4BEA12CB06ED500FCFB84 /* Build configuration list for PBXNativeTarget "PiperTests" */ = {
46D4BEDA2CB07C7A00FCFB84 /* Build configuration list for PBXNativeTarget "UnitTests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
46D4BEA22CB06ED500FCFB84 /* Debug */,
46D4BEA32CB06ED500FCFB84 /* Release */,
46D4BEDB2CB07C7A00FCFB84 /* Debug */,
46D4BEDC2CB07C7A00FCFB84 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
46D4BEA42CB06ED500FCFB84 /* Build configuration list for PBXNativeTarget "PiperUITests" */ = {
46D4BEEA2CB07CB600FCFB84 /* Build configuration list for PBXNativeTarget "UITests" */ = {
isa = XCConfigurationList;
buildConfigurations = (
46D4BEA52CB06ED500FCFB84 /* Debug */,
46D4BEA62CB06ED500FCFB84 /* Release */,
46D4BEEB2CB07CB600FCFB84 /* Debug */,
46D4BEEC2CB07CB600FCFB84 /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;

View File

@ -1,13 +1,14 @@
//
// PiperUITests.swift
// PiperUITests
// UITests.swift
// UITests
//
// Created by Javier Cicchelli on 04/10/2024.
// Copyright © 2024 Röck+Cöde. All rights reserved.
//
import XCTest
final class PiperUITests: XCTestCase {
final class UITests: XCTestCase {
override func setUpWithError() throws {
// Put setup code here. This method is called before the invocation of each test method in the class.

View File

@ -1,13 +1,14 @@
//
// PiperUITestsLaunchTests.swift
// PiperUITests
// UITestsLaunchTests.swift
// UITests
//
// Created by Javier Cicchelli on 04/10/2024.
// Copyright © 2024 Röck+Cöde. All rights reserved.
//
import XCTest
final class PiperUITestsLaunchTests: XCTestCase {
final class UITestsLaunchTests: XCTestCase {
override class var runsForEachTargetApplicationUIConfiguration: Bool {
true

View File

@ -1,14 +1,14 @@
//
// PiperTests.swift
// PiperTests
// UnitTests.swift
// UnitTests
//
// Created by Javier Cicchelli on 04/10/2024.
// Copyright © 2024 Röck+Cöde. All rights reserved.
//
import Testing
@testable import Piper
struct PiperTests {
struct UnitTests {
@Test func example() async throws {
// Write your test here and use APIs like `#expect(...)` to check expected conditions.