From aa4de5aa404d03dee618ec239f8c20f2bdd12e5e Mon Sep 17 00:00:00 2001 From: Simon Rozman Date: Mon, 11 Sep 2023 16:11:08 +0200 Subject: [PATCH] Make space for and add macOS unit testing stub project Signed-off-by: Simon Rozman --- .gitignore | 1 + mac/UnitTests.xcodeproj/project.pbxproj | 281 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + mac/UnitTests/main.cpp | 7 + {UnitTests => win/UnitTests}/.gitignore | 0 {UnitTests => win/UnitTests}/UnitTests.sln | 0 .../UnitTests}/UnitTests.vcxproj | 0 .../UnitTests}/UnitTests.vcxproj.filters | 0 {UnitTests => win/UnitTests}/math.cpp | 0 {UnitTests => win/UnitTests}/parser.cpp | 0 {UnitTests => win/UnitTests}/pch.cpp | 0 {UnitTests => win/UnitTests}/pch.h | 0 {UnitTests => win/UnitTests}/ring.cpp | 0 {UnitTests => win/UnitTests}/sgml.cpp | 0 {UnitTests => win/UnitTests}/stream.cpp | 0 {UnitTests => win/UnitTests}/unicode.cpp | 0 17 files changed, 304 insertions(+) create mode 100644 mac/UnitTests.xcodeproj/project.pbxproj create mode 100644 mac/UnitTests.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 mac/UnitTests.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 mac/UnitTests/main.cpp rename {UnitTests => win/UnitTests}/.gitignore (100%) rename {UnitTests => win/UnitTests}/UnitTests.sln (100%) rename {UnitTests => win/UnitTests}/UnitTests.vcxproj (100%) rename {UnitTests => win/UnitTests}/UnitTests.vcxproj.filters (100%) rename {UnitTests => win/UnitTests}/math.cpp (100%) rename {UnitTests => win/UnitTests}/parser.cpp (100%) rename {UnitTests => win/UnitTests}/pch.cpp (100%) rename {UnitTests => win/UnitTests}/pch.h (100%) rename {UnitTests => win/UnitTests}/ring.cpp (100%) rename {UnitTests => win/UnitTests}/sgml.cpp (100%) rename {UnitTests => win/UnitTests}/stream.cpp (100%) rename {UnitTests => win/UnitTests}/unicode.cpp (100%) diff --git a/.gitignore b/.gitignore index 5df586670..8d7ed3076 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1,2 @@ /doc +xcuserdata diff --git a/mac/UnitTests.xcodeproj/project.pbxproj b/mac/UnitTests.xcodeproj/project.pbxproj new file mode 100644 index 000000000..dbe98c2dd --- /dev/null +++ b/mac/UnitTests.xcodeproj/project.pbxproj @@ -0,0 +1,281 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 56; + objects = { + +/* Begin PBXBuildFile section */ + F4B7FBE02AAF49BC00C6BE9F /* main.cpp in Sources */ = {isa = PBXBuildFile; fileRef = F4B7FBDF2AAF49BC00C6BE9F /* main.cpp */; }; +/* End PBXBuildFile section */ + +/* Begin PBXCopyFilesBuildPhase section */ + F4B7FBDA2AAF49BC00C6BE9F /* CopyFiles */ = { + isa = PBXCopyFilesBuildPhase; + buildActionMask = 2147483647; + dstPath = /usr/share/man/man1/; + dstSubfolderSpec = 0; + files = ( + ); + runOnlyForDeploymentPostprocessing = 1; + }; +/* End PBXCopyFilesBuildPhase section */ + +/* Begin PBXFileReference section */ + F4B7FBDC2AAF49BC00C6BE9F /* UnitTests */ = {isa = PBXFileReference; explicitFileType = "compiled.mach-o.executable"; includeInIndex = 0; path = UnitTests; sourceTree = BUILT_PRODUCTS_DIR; }; + F4B7FBDF2AAF49BC00C6BE9F /* main.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = main.cpp; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + F4B7FBD92AAF49BC00C6BE9F /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + F4B7FBD32AAF49BC00C6BE9F = { + isa = PBXGroup; + children = ( + F4B7FBDE2AAF49BC00C6BE9F /* UnitTests */, + F4B7FBDD2AAF49BC00C6BE9F /* Products */, + ); + sourceTree = ""; + usesTabs = 1; + }; + F4B7FBDD2AAF49BC00C6BE9F /* Products */ = { + isa = PBXGroup; + children = ( + F4B7FBDC2AAF49BC00C6BE9F /* UnitTests */, + ); + name = Products; + sourceTree = ""; + }; + F4B7FBDE2AAF49BC00C6BE9F /* UnitTests */ = { + isa = PBXGroup; + children = ( + F4B7FBDF2AAF49BC00C6BE9F /* main.cpp */, + ); + path = UnitTests; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + F4B7FBDB2AAF49BC00C6BE9F /* UnitTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = F4B7FBE32AAF49BC00C6BE9F /* Build configuration list for PBXNativeTarget "UnitTests" */; + buildPhases = ( + F4B7FBD82AAF49BC00C6BE9F /* Sources */, + F4B7FBD92AAF49BC00C6BE9F /* Frameworks */, + F4B7FBDA2AAF49BC00C6BE9F /* CopyFiles */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = UnitTests; + productName = UnitTests; + productReference = F4B7FBDC2AAF49BC00C6BE9F /* UnitTests */; + productType = "com.apple.product-type.tool"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + F4B7FBD42AAF49BC00C6BE9F /* Project object */ = { + isa = PBXProject; + attributes = { + BuildIndependentTargetsInParallel = 1; + LastUpgradeCheck = 1430; + TargetAttributes = { + F4B7FBDB2AAF49BC00C6BE9F = { + CreatedOnToolsVersion = 14.3.1; + }; + }; + }; + buildConfigurationList = F4B7FBD72AAF49BC00C6BE9F /* Build configuration list for PBXProject "UnitTests" */; + compatibilityVersion = "Xcode 14.0"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = F4B7FBD32AAF49BC00C6BE9F; + productRefGroup = F4B7FBDD2AAF49BC00C6BE9F /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + F4B7FBDB2AAF49BC00C6BE9F /* UnitTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXSourcesBuildPhase section */ + F4B7FBD82AAF49BC00C6BE9F /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + F4B7FBE02AAF49BC00C6BE9F /* main.cpp in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin XCBuildConfiguration section */ + F4B7FBE12AAF49BC00C6BE9F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ../include; + MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)"; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = macosx; + }; + name = Debug; + }; + F4B7FBE22AAF49BC00C6BE9F /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++20"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + HEADER_SEARCH_PATHS = ../include; + MACOSX_DEPLOYMENT_TARGET = "$(RECOMMENDED_MACOSX_DEPLOYMENT_TARGET)"; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = macosx; + }; + name = Release; + }; + F4B7FBE42AAF49BC00C6BE9F /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + F4B7FBE52AAF49BC00C6BE9F /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CODE_SIGN_STYLE = Automatic; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + F4B7FBD72AAF49BC00C6BE9F /* Build configuration list for PBXProject "UnitTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + F4B7FBE12AAF49BC00C6BE9F /* Debug */, + F4B7FBE22AAF49BC00C6BE9F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + F4B7FBE32AAF49BC00C6BE9F /* Build configuration list for PBXNativeTarget "UnitTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + F4B7FBE42AAF49BC00C6BE9F /* Debug */, + F4B7FBE52AAF49BC00C6BE9F /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = F4B7FBD42AAF49BC00C6BE9F /* Project object */; +} diff --git a/mac/UnitTests.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/mac/UnitTests.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/mac/UnitTests.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/mac/UnitTests.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/mac/UnitTests.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/mac/UnitTests.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/mac/UnitTests/main.cpp b/mac/UnitTests/main.cpp new file mode 100644 index 000000000..1bad0d9b3 --- /dev/null +++ b/mac/UnitTests/main.cpp @@ -0,0 +1,7 @@ +#include + +int main(int argc, const char * argv[]) { + // insert code here... + std::cout << "Hello, World!\n"; + return 0; +} diff --git a/UnitTests/.gitignore b/win/UnitTests/.gitignore similarity index 100% rename from UnitTests/.gitignore rename to win/UnitTests/.gitignore diff --git a/UnitTests/UnitTests.sln b/win/UnitTests/UnitTests.sln similarity index 100% rename from UnitTests/UnitTests.sln rename to win/UnitTests/UnitTests.sln diff --git a/UnitTests/UnitTests.vcxproj b/win/UnitTests/UnitTests.vcxproj similarity index 100% rename from UnitTests/UnitTests.vcxproj rename to win/UnitTests/UnitTests.vcxproj diff --git a/UnitTests/UnitTests.vcxproj.filters b/win/UnitTests/UnitTests.vcxproj.filters similarity index 100% rename from UnitTests/UnitTests.vcxproj.filters rename to win/UnitTests/UnitTests.vcxproj.filters diff --git a/UnitTests/math.cpp b/win/UnitTests/math.cpp similarity index 100% rename from UnitTests/math.cpp rename to win/UnitTests/math.cpp diff --git a/UnitTests/parser.cpp b/win/UnitTests/parser.cpp similarity index 100% rename from UnitTests/parser.cpp rename to win/UnitTests/parser.cpp diff --git a/UnitTests/pch.cpp b/win/UnitTests/pch.cpp similarity index 100% rename from UnitTests/pch.cpp rename to win/UnitTests/pch.cpp diff --git a/UnitTests/pch.h b/win/UnitTests/pch.h similarity index 100% rename from UnitTests/pch.h rename to win/UnitTests/pch.h diff --git a/UnitTests/ring.cpp b/win/UnitTests/ring.cpp similarity index 100% rename from UnitTests/ring.cpp rename to win/UnitTests/ring.cpp diff --git a/UnitTests/sgml.cpp b/win/UnitTests/sgml.cpp similarity index 100% rename from UnitTests/sgml.cpp rename to win/UnitTests/sgml.cpp diff --git a/UnitTests/stream.cpp b/win/UnitTests/stream.cpp similarity index 100% rename from UnitTests/stream.cpp rename to win/UnitTests/stream.cpp diff --git a/UnitTests/unicode.cpp b/win/UnitTests/unicode.cpp similarity index 100% rename from UnitTests/unicode.cpp rename to win/UnitTests/unicode.cpp