From bcc527f6965bb4efebda0b657e01f974f5af7b5f Mon Sep 17 00:00:00 2001 From: Tom Bogle Date: Fri, 2 Feb 2018 13:35:42 -0500 Subject: [PATCH] Fixed up all the plumbing issues with unit tests for Keyman4MacIM --- .../Keyman4MacIM.xcodeproj/project.pbxproj | 30 ++++++++++++------- .../xcshareddata/xcschemes/Keyman.xcscheme | 6 +++- .../Keyman4MacIM/KMInputMethodAppDelegate.h | 2 +- .../OnScreenKeyboard/OSKWindowController.h | 2 +- mac/build.sh | 2 -- 5 files changed, 26 insertions(+), 16 deletions(-) diff --git a/mac/Keyman4MacIM/Keyman4MacIM.xcodeproj/project.pbxproj b/mac/Keyman4MacIM/Keyman4MacIM.xcodeproj/project.pbxproj index 6bbdc01d3a..2cec23b34f 100644 --- a/mac/Keyman4MacIM/Keyman4MacIM.xcodeproj/project.pbxproj +++ b/mac/Keyman4MacIM/Keyman4MacIM.xcodeproj/project.pbxproj @@ -17,7 +17,6 @@ 9836B3721AE5F11D00780482 /* unzip.c in Sources */ = {isa = PBXBuildFile; fileRef = 9836B36A1AE5F11D00780482 /* unzip.c */; }; 9836B3731AE5F11D00780482 /* zip.c in Sources */ = {isa = PBXBuildFile; fileRef = 9836B36C1AE5F11D00780482 /* zip.c */; }; 9836B3741AE5F11D00780482 /* ZipArchive.mm in Sources */ = {isa = PBXBuildFile; fileRef = 9836B36F1AE5F11D00780482 /* ZipArchive.mm */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; - 9836B3761AE5F8F300780482 /* libz.dylib in Frameworks */ = {isa = PBXBuildFile; fileRef = 9836B3751AE5F8F300780482 /* libz.dylib */; }; 984B8F441AF1C3D900E096A8 /* OSKWindowController.m in Sources */ = {isa = PBXBuildFile; fileRef = 984B8F421AF1C3D900E096A8 /* OSKWindowController.m */; }; 984B8F451AF1C3D900E096A8 /* OSKWindowController.xib in Resources */ = {isa = PBXBuildFile; fileRef = 984B8F431AF1C3D900E096A8 /* OSKWindowController.xib */; }; 984C2B221A79DF1B0023F89D /* KeymanEngine4Mac.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 984C2B211A79DF1B0023F89D /* KeymanEngine4Mac.framework */; }; @@ -55,6 +54,10 @@ E27BA9CE2020322000D273E7 /* OCMock.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E27BA9CD2020322000D273E7 /* OCMock.framework */; }; E27BA9D1202036E200D273E7 /* OCMock.framework.dSYM in CopyFiles */ = {isa = PBXBuildFile; fileRef = E27BA9D0202036E200D273E7 /* OCMock.framework.dSYM */; }; E27BA9D32020D8BF00D273E7 /* SimpleTest.kmx in Resources */ = {isa = PBXBuildFile; fileRef = E27BA9D22020D8BF00D273E7 /* SimpleTest.kmx */; }; + E28914D32024D1B80048E71E /* KeymanEngine4Mac.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 984C2B211A79DF1B0023F89D /* KeymanEngine4Mac.framework */; }; + E28914D52024E3DF0048E71E /* KMInputMethodBrowserClientEventHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = E24C79E91FFFCC7500D8E46F /* KMInputMethodBrowserClientEventHandler.m */; }; + E28914D62024E4010048E71E /* KMInputMethodEventHandler.m in Sources */ = {isa = PBXBuildFile; fileRef = E21799041FC5B7BC00F2D66A /* KMInputMethodEventHandler.m */; }; + E28914D72024E6220048E71E /* KeymanEngine4Mac.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 984C2B211A79DF1B0023F89D /* KeymanEngine4Mac.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; E29F22F4201A59B1005EA234 /* KMInputMethodBrowserClientEventHandlerTests.m in Sources */ = {isa = PBXBuildFile; fileRef = E29F22F3201A59B1005EA234 /* KMInputMethodBrowserClientEventHandlerTests.m */; }; /* End PBXBuildFile section */ @@ -84,8 +87,9 @@ isa = PBXCopyFilesBuildPhase; buildActionMask = 2147483647; dstPath = ""; - dstSubfolderSpec = 16; + dstSubfolderSpec = 10; files = ( + E28914D72024E6220048E71E /* KeymanEngine4Mac.framework in CopyFiles */, E27BA9D1202036E200D273E7 /* OCMock.framework.dSYM in CopyFiles */, ); runOnlyForDeploymentPostprocessing = 0; @@ -110,7 +114,6 @@ 9836B36D1AE5F11D00780482 /* zip.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = zip.h; sourceTree = ""; }; 9836B36E1AE5F11D00780482 /* ZipArchive.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ZipArchive.h; sourceTree = ""; }; 9836B36F1AE5F11D00780482 /* ZipArchive.mm */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.objcpp; path = ZipArchive.mm; sourceTree = ""; }; - 9836B3751AE5F8F300780482 /* libz.dylib */ = {isa = PBXFileReference; lastKnownFileType = "compiled.mach-o.dylib"; name = libz.dylib; path = usr/lib/libz.dylib; sourceTree = SDKROOT; }; 984B8F411AF1C3D900E096A8 /* OSKWindowController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = OSKWindowController.h; path = OnScreenKeyboard/OSKWindowController.h; sourceTree = ""; }; 984B8F421AF1C3D900E096A8 /* OSKWindowController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = OSKWindowController.m; path = OnScreenKeyboard/OSKWindowController.m; sourceTree = ""; }; 984B8F431AF1C3D900E096A8 /* OSKWindowController.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; name = OSKWindowController.xib; path = OnScreenKeyboard/OSKWindowController.xib; sourceTree = ""; }; @@ -181,7 +184,6 @@ files = ( 98D6DA7B1A799F0B00B09822 /* InputMethodKit.framework in Frameworks */, 984C2B221A79DF1B0023F89D /* KeymanEngine4Mac.framework in Frameworks */, - 9836B3761AE5F8F300780482 /* libz.dylib in Frameworks */, 9803C9D81B0EFB3B0082A6F9 /* WebKit.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -190,6 +192,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( + E28914D32024D1B80048E71E /* KeymanEngine4Mac.framework in Frameworks */, E27BA9CE2020322000D273E7 /* OCMock.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; @@ -357,7 +360,6 @@ children = ( 98D6DA7A1A799F0B00B09822 /* InputMethodKit.framework */, 984C2B211A79DF1B0023F89D /* KeymanEngine4Mac.framework */, - 9836B3751AE5F8F300780482 /* libz.dylib */, 9803C9D71B0EFB3B0082A6F9 /* WebKit.framework */, ); name = Frameworks; @@ -478,7 +480,6 @@ CreatedOnToolsVersion = 9.2; DevelopmentTeam = 3YE4W86L3G; ProvisioningStyle = Manual; - TestTargetID = 989C9C071A7876DE00A20425; }; }; }; @@ -589,6 +590,8 @@ buildActionMask = 2147483647; files = ( E29F22F4201A59B1005EA234 /* KMInputMethodBrowserClientEventHandlerTests.m in Sources */, + E28914D52024E3DF0048E71E /* KMInputMethodBrowserClientEventHandler.m in Sources */, + E28914D62024E4010048E71E /* KMInputMethodEventHandler.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -716,10 +719,12 @@ CODE_SIGN_IDENTITY = "Developer ID Application"; COMBINE_HIDPI_IMAGES = YES; DEVELOPMENT_TEAM = 3YE4W86L3G; + EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES = "*.nib *.lproj *.gch *.xcode* *.xcassets (*) .DS_Store CVS .svn .git .hg *.pbproj *.pbxproj"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Keyman4MacIM/Frameworks", ); + HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/Keyman4MacIM/Frameworks/**"; INFOPLIST_FILE = Keyman4MacIM/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.7; @@ -737,10 +742,12 @@ CODE_SIGN_IDENTITY = "Developer ID Application"; COMBINE_HIDPI_IMAGES = YES; DEVELOPMENT_TEAM = 3YE4W86L3G; + EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES = "*.nib *.lproj *.gch *.xcode* *.xcassets (*) .DS_Store CVS .svn .git .hg *.pbproj *.pbxproj"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Keyman4MacIM/Frameworks", ); + HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/Keyman4MacIM/Frameworks/**"; INFOPLIST_FILE = Keyman4MacIM/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.7; @@ -755,7 +762,6 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; @@ -766,20 +772,23 @@ COMBINE_HIDPI_IMAGES = YES; DEBUG_INFORMATION_FORMAT = dwarf; DEVELOPMENT_TEAM = 3YE4W86L3G; + EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES = "*.nib *.lproj *.gch *.xcode* *.xcassets (*) .DS_Store CVS .svn .git .hg *.pbproj *.pbxproj"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Keyman4MacIM/Frameworks", "$(PROJECT_DIR)/../Carthage/Build/Mac/**", ); GCC_C_LANGUAGE_STANDARD = gnu11; - HEADER_SEARCH_PATHS = "$(PROJECT_DIR)/../Carthage/Build/Mac/**"; + HEADER_SEARCH_PATHS = ( + "$(PROJECT_DIR)/../Carthage/Build/Mac/**", + "$(PROJECT_DIR)/Keyman4MacIM/Frameworks/**", + ); INFOPLIST_FILE = KeymanTests/Info.plist; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/../Frameworks @loader_path/../Frameworks @loader_path/Frameworks"; MACOSX_DEPLOYMENT_TARGET = 10.13; PRODUCT_BUNDLE_IDENTIFIER = org.sil.consoleTestbed.KeymanTests; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Keyman.app/Contents/MacOS/Keyman"; }; name = Debug; }; @@ -787,7 +796,6 @@ isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; - BUNDLE_LOADER = "$(TEST_HOST)"; CLANG_ANALYZER_NONNULL = YES; CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; @@ -798,6 +806,7 @@ COMBINE_HIDPI_IMAGES = YES; COPY_PHASE_STRIP = NO; DEVELOPMENT_TEAM = 3YE4W86L3G; + EXCLUDED_RECURSIVE_SEARCH_PATH_SUBDIRECTORIES = "*.nib *.lproj *.gch *.xcode* *.xcassets (*) .DS_Store CVS .svn .git .hg *.pbproj *.pbxproj"; FRAMEWORK_SEARCH_PATHS = ( "$(inherited)", "$(PROJECT_DIR)/Keyman4MacIM/Frameworks", @@ -809,7 +818,6 @@ PRODUCT_BUNDLE_IDENTIFIER = org.sil.consoleTestbed.KeymanTests; PRODUCT_NAME = "$(TARGET_NAME)"; PROVISIONING_PROFILE_SPECIFIER = ""; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Keyman.app/Contents/MacOS/Keyman"; }; name = Release; }; diff --git a/mac/Keyman4MacIM/Keyman4MacIM.xcodeproj/xcshareddata/xcschemes/Keyman.xcscheme b/mac/Keyman4MacIM/Keyman4MacIM.xcodeproj/xcshareddata/xcschemes/Keyman.xcscheme index 65112fe49f..9fd741da12 100644 --- a/mac/Keyman4MacIM/Keyman4MacIM.xcodeproj/xcshareddata/xcschemes/Keyman.xcscheme +++ b/mac/Keyman4MacIM/Keyman4MacIM.xcodeproj/xcshareddata/xcschemes/Keyman.xcscheme @@ -1,7 +1,7 @@ + version = "1.7"> @@ -52,6 +52,10 @@ BlueprintName = "KeymanTests" ReferencedContainer = "container:Keyman4MacIM.xcodeproj"> + + diff --git a/mac/Keyman4MacIM/Keyman4MacIM/KMInputMethodAppDelegate.h b/mac/Keyman4MacIM/Keyman4MacIM/KMInputMethodAppDelegate.h index e2751039bb..2c6e317951 100644 --- a/mac/Keyman4MacIM/Keyman4MacIM/KMInputMethodAppDelegate.h +++ b/mac/Keyman4MacIM/Keyman4MacIM/KMInputMethodAppDelegate.h @@ -11,7 +11,7 @@ #import #import -#import +#import #import "KMInputController.h" #import "KMAboutWindowController.h" #import "KMInfoWindowController.h" diff --git a/mac/Keyman4MacIM/Keyman4MacIM/OnScreenKeyboard/OSKWindowController.h b/mac/Keyman4MacIM/Keyman4MacIM/OnScreenKeyboard/OSKWindowController.h index 4b98f633b8..e595e9b595 100644 --- a/mac/Keyman4MacIM/Keyman4MacIM/OnScreenKeyboard/OSKWindowController.h +++ b/mac/Keyman4MacIM/Keyman4MacIM/OnScreenKeyboard/OSKWindowController.h @@ -7,7 +7,7 @@ // #import -#import +#import @interface OSKWindowController : NSWindowController diff --git a/mac/build.sh b/mac/build.sh index 00ab246a55..13e66be34c 100755 --- a/mac/build.sh +++ b/mac/build.sh @@ -247,8 +247,6 @@ if $CLEAN ; then fi if [ "$TEST_ACTION" == "test" ]; then - #temporary: - which carthage carthage bootstrap fi