Committed by
GitHub
Merge pull request #812 from navaronbracke/example_app_ios_macos_cleanup
feat: RunnerTests for iOS/MacOS
Showing
11 changed files
with
467 additions
and
52 deletions
| 1 | # Uncomment this line to define a global platform for your project | 1 | # Uncomment this line to define a global platform for your project |
| 2 | -platform :ios, '11.0' | 2 | +# platform :ios, '11.0' |
| 3 | 3 | ||
| 4 | # CocoaPods analytics sends network stats synchronously affecting flutter build latency. | 4 | # CocoaPods analytics sends network stats synchronously affecting flutter build latency. |
| 5 | ENV['COCOAPODS_DISABLE_STATS'] = 'true' | 5 | ENV['COCOAPODS_DISABLE_STATS'] = 'true' |
| @@ -32,13 +32,15 @@ target 'Runner' do | @@ -32,13 +32,15 @@ target 'Runner' do | ||
| 32 | use_modular_headers! | 32 | use_modular_headers! |
| 33 | 33 | ||
| 34 | flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) | 34 | flutter_install_all_ios_pods File.dirname(File.realpath(__FILE__)) |
| 35 | + target 'RunnerTests' do | ||
| 36 | + inherit! :search_paths | ||
| 37 | + end | ||
| 35 | end | 38 | end |
| 36 | 39 | ||
| 37 | post_install do |installer| | 40 | post_install do |installer| |
| 38 | installer.pods_project.targets.each do |target| | 41 | installer.pods_project.targets.each do |target| |
| 39 | flutter_additional_ios_build_settings(target) | 42 | flutter_additional_ios_build_settings(target) |
| 40 | target.build_configurations.each do |config| | 43 | target.build_configurations.each do |config| |
| 41 | - config.build_settings['ENABLE_BITCODE'] = 'NO' | ||
| 42 | config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0' | 44 | config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '11.0' |
| 43 | end | 45 | end |
| 44 | end | 46 | end |
| @@ -8,14 +8,26 @@ | @@ -8,14 +8,26 @@ | ||
| 8 | 8 | ||
| 9 | /* Begin PBXBuildFile section */ | 9 | /* Begin PBXBuildFile section */ |
| 10 | 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; | 10 | 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; |
| 11 | + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C807B294A618700263BE5 /* RunnerTests.swift */; }; | ||
| 11 | 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; | 12 | 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; |
| 12 | 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; | 13 | 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; |
| 13 | 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; | 14 | 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; |
| 14 | 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; | 15 | 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; |
| 15 | 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; | 16 | 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; |
| 16 | - A5A2C2B73A9F26060DE9FB22 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 54E006799E73DEAB41FD3623 /* Pods_Runner.framework */; }; | 17 | + A277671F4E603C31E191FCBF /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = FB50C06655B1959BAA8EAF64 /* Pods_Runner.framework */; }; |
| 18 | + F8C489EFA0FC3A131EBA1838 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9F20A7A668B7797BBB5443C1 /* Pods_RunnerTests.framework */; }; | ||
| 17 | /* End PBXBuildFile section */ | 19 | /* End PBXBuildFile section */ |
| 18 | 20 | ||
| 21 | +/* Begin PBXContainerItemProxy section */ | ||
| 22 | + 331C8085294A63A400263BE5 /* PBXContainerItemProxy */ = { | ||
| 23 | + isa = PBXContainerItemProxy; | ||
| 24 | + containerPortal = 97C146E61CF9000F007C117D /* Project object */; | ||
| 25 | + proxyType = 1; | ||
| 26 | + remoteGlobalIDString = 97C146ED1CF9000F007C117D; | ||
| 27 | + remoteInfo = Runner; | ||
| 28 | + }; | ||
| 29 | +/* End PBXContainerItemProxy section */ | ||
| 30 | + | ||
| 19 | /* Begin PBXCopyFilesBuildPhase section */ | 31 | /* Begin PBXCopyFilesBuildPhase section */ |
| 20 | 9705A1C41CF9048500538489 /* Embed Frameworks */ = { | 32 | 9705A1C41CF9048500538489 /* Embed Frameworks */ = { |
| 21 | isa = PBXCopyFilesBuildPhase; | 33 | isa = PBXCopyFilesBuildPhase; |
| @@ -32,12 +44,14 @@ | @@ -32,12 +44,14 @@ | ||
| 32 | /* Begin PBXFileReference section */ | 44 | /* Begin PBXFileReference section */ |
| 33 | 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; }; | 45 | 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = "<group>"; }; |
| 34 | 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; }; | 46 | 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = "<group>"; }; |
| 35 | - 32FD382A786B3A0080FE63FD /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; }; | 47 | + 331C807B294A618700263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = "<group>"; }; |
| 48 | + 331C8081294A63A400263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 49 | + 337C24E5CFDB233CDBA51D9D /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; }; | ||
| 36 | 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; }; | 50 | 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = "<group>"; }; |
| 37 | - 54E006799E73DEAB41FD3623 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 38 | 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; }; | 51 | 74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = "<group>"; }; |
| 39 | 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; | 52 | 74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; }; |
| 40 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; | 53 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = "<group>"; }; |
| 54 | + 7F6B8553738879C25774B609 /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = "<group>"; }; | ||
| 41 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; | 55 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = "<group>"; }; |
| 42 | 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; | 56 | 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = "<group>"; }; |
| 43 | 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; | 57 | 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| @@ -45,30 +59,40 @@ | @@ -45,30 +59,40 @@ | ||
| 45 | 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; | 59 | 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; |
| 46 | 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; | 60 | 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; |
| 47 | 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; | 61 | 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; }; |
| 48 | - D5B36FCD262B39F867CFDEEE /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; }; | ||
| 49 | - F0D5742F0690BE32D07B033A /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; }; | 62 | + 9F20A7A668B7797BBB5443C1 /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; |
| 63 | + A5A24D61913C510FB38A434E /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = "<group>"; }; | ||
| 64 | + ADC5B74E7E0BCF65C9CD3AA9 /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = "<group>"; }; | ||
| 65 | + CB190BADFE09EBDD6E5B44BE /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; }; | ||
| 66 | + F3732C1D66ACA2383B88CDC2 /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; }; | ||
| 67 | + FB50C06655B1959BAA8EAF64 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 50 | /* End PBXFileReference section */ | 68 | /* End PBXFileReference section */ |
| 51 | 69 | ||
| 52 | /* Begin PBXFrameworksBuildPhase section */ | 70 | /* Begin PBXFrameworksBuildPhase section */ |
| 71 | + 0F3F7D03C80D20F6F18A5A17 /* Frameworks */ = { | ||
| 72 | + isa = PBXFrameworksBuildPhase; | ||
| 73 | + buildActionMask = 2147483647; | ||
| 74 | + files = ( | ||
| 75 | + F8C489EFA0FC3A131EBA1838 /* Pods_RunnerTests.framework in Frameworks */, | ||
| 76 | + ); | ||
| 77 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 78 | + }; | ||
| 53 | 97C146EB1CF9000F007C117D /* Frameworks */ = { | 79 | 97C146EB1CF9000F007C117D /* Frameworks */ = { |
| 54 | isa = PBXFrameworksBuildPhase; | 80 | isa = PBXFrameworksBuildPhase; |
| 55 | buildActionMask = 2147483647; | 81 | buildActionMask = 2147483647; |
| 56 | files = ( | 82 | files = ( |
| 57 | - A5A2C2B73A9F26060DE9FB22 /* Pods_Runner.framework in Frameworks */, | 83 | + A277671F4E603C31E191FCBF /* Pods_Runner.framework in Frameworks */, |
| 58 | ); | 84 | ); |
| 59 | runOnlyForDeploymentPostprocessing = 0; | 85 | runOnlyForDeploymentPostprocessing = 0; |
| 60 | }; | 86 | }; |
| 61 | /* End PBXFrameworksBuildPhase section */ | 87 | /* End PBXFrameworksBuildPhase section */ |
| 62 | 88 | ||
| 63 | /* Begin PBXGroup section */ | 89 | /* Begin PBXGroup section */ |
| 64 | - 203D5C95A734778D93D18369 /* Pods */ = { | 90 | + 331C8082294A63A400263BE5 /* RunnerTests */ = { |
| 65 | isa = PBXGroup; | 91 | isa = PBXGroup; |
| 66 | children = ( | 92 | children = ( |
| 67 | - D5B36FCD262B39F867CFDEEE /* Pods-Runner.debug.xcconfig */, | ||
| 68 | - 32FD382A786B3A0080FE63FD /* Pods-Runner.release.xcconfig */, | ||
| 69 | - F0D5742F0690BE32D07B033A /* Pods-Runner.profile.xcconfig */, | 93 | + 331C807B294A618700263BE5 /* RunnerTests.swift */, |
| 70 | ); | 94 | ); |
| 71 | - path = Pods; | 95 | + path = RunnerTests; |
| 72 | sourceTree = "<group>"; | 96 | sourceTree = "<group>"; |
| 73 | }; | 97 | }; |
| 74 | 9740EEB11CF90186004384FC /* Flutter */ = { | 98 | 9740EEB11CF90186004384FC /* Flutter */ = { |
| @@ -88,8 +112,9 @@ | @@ -88,8 +112,9 @@ | ||
| 88 | 9740EEB11CF90186004384FC /* Flutter */, | 112 | 9740EEB11CF90186004384FC /* Flutter */, |
| 89 | 97C146F01CF9000F007C117D /* Runner */, | 113 | 97C146F01CF9000F007C117D /* Runner */, |
| 90 | 97C146EF1CF9000F007C117D /* Products */, | 114 | 97C146EF1CF9000F007C117D /* Products */, |
| 91 | - 203D5C95A734778D93D18369 /* Pods */, | ||
| 92 | - FF36E403CAC9E06A5A96BB9F /* Frameworks */, | 115 | + 331C8082294A63A400263BE5 /* RunnerTests */, |
| 116 | + C3326B04728E979C0CAEA680 /* Pods */, | ||
| 117 | + E31F04DB28A3D0F29210F29D /* Frameworks */, | ||
| 93 | ); | 118 | ); |
| 94 | sourceTree = "<group>"; | 119 | sourceTree = "<group>"; |
| 95 | }; | 120 | }; |
| @@ -97,6 +122,7 @@ | @@ -97,6 +122,7 @@ | ||
| 97 | isa = PBXGroup; | 122 | isa = PBXGroup; |
| 98 | children = ( | 123 | children = ( |
| 99 | 97C146EE1CF9000F007C117D /* Runner.app */, | 124 | 97C146EE1CF9000F007C117D /* Runner.app */, |
| 125 | + 331C8081294A63A400263BE5 /* RunnerTests.xctest */, | ||
| 100 | ); | 126 | ); |
| 101 | name = Products; | 127 | name = Products; |
| 102 | sourceTree = "<group>"; | 128 | sourceTree = "<group>"; |
| @@ -116,10 +142,24 @@ | @@ -116,10 +142,24 @@ | ||
| 116 | path = Runner; | 142 | path = Runner; |
| 117 | sourceTree = "<group>"; | 143 | sourceTree = "<group>"; |
| 118 | }; | 144 | }; |
| 119 | - FF36E403CAC9E06A5A96BB9F /* Frameworks */ = { | 145 | + C3326B04728E979C0CAEA680 /* Pods */ = { |
| 120 | isa = PBXGroup; | 146 | isa = PBXGroup; |
| 121 | children = ( | 147 | children = ( |
| 122 | - 54E006799E73DEAB41FD3623 /* Pods_Runner.framework */, | 148 | + CB190BADFE09EBDD6E5B44BE /* Pods-Runner.debug.xcconfig */, |
| 149 | + F3732C1D66ACA2383B88CDC2 /* Pods-Runner.release.xcconfig */, | ||
| 150 | + 337C24E5CFDB233CDBA51D9D /* Pods-Runner.profile.xcconfig */, | ||
| 151 | + A5A24D61913C510FB38A434E /* Pods-RunnerTests.debug.xcconfig */, | ||
| 152 | + ADC5B74E7E0BCF65C9CD3AA9 /* Pods-RunnerTests.release.xcconfig */, | ||
| 153 | + 7F6B8553738879C25774B609 /* Pods-RunnerTests.profile.xcconfig */, | ||
| 154 | + ); | ||
| 155 | + path = Pods; | ||
| 156 | + sourceTree = "<group>"; | ||
| 157 | + }; | ||
| 158 | + E31F04DB28A3D0F29210F29D /* Frameworks */ = { | ||
| 159 | + isa = PBXGroup; | ||
| 160 | + children = ( | ||
| 161 | + FB50C06655B1959BAA8EAF64 /* Pods_Runner.framework */, | ||
| 162 | + 9F20A7A668B7797BBB5443C1 /* Pods_RunnerTests.framework */, | ||
| 123 | ); | 163 | ); |
| 124 | name = Frameworks; | 164 | name = Frameworks; |
| 125 | sourceTree = "<group>"; | 165 | sourceTree = "<group>"; |
| @@ -127,18 +167,37 @@ | @@ -127,18 +167,37 @@ | ||
| 127 | /* End PBXGroup section */ | 167 | /* End PBXGroup section */ |
| 128 | 168 | ||
| 129 | /* Begin PBXNativeTarget section */ | 169 | /* Begin PBXNativeTarget section */ |
| 170 | + 331C8080294A63A400263BE5 /* RunnerTests */ = { | ||
| 171 | + isa = PBXNativeTarget; | ||
| 172 | + buildConfigurationList = 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; | ||
| 173 | + buildPhases = ( | ||
| 174 | + C7DE006A696F551C4E067E41 /* [CP] Check Pods Manifest.lock */, | ||
| 175 | + 331C807D294A63A400263BE5 /* Sources */, | ||
| 176 | + 331C807F294A63A400263BE5 /* Resources */, | ||
| 177 | + 0F3F7D03C80D20F6F18A5A17 /* Frameworks */, | ||
| 178 | + ); | ||
| 179 | + buildRules = ( | ||
| 180 | + ); | ||
| 181 | + dependencies = ( | ||
| 182 | + 331C8086294A63A400263BE5 /* PBXTargetDependency */, | ||
| 183 | + ); | ||
| 184 | + name = RunnerTests; | ||
| 185 | + productName = RunnerTests; | ||
| 186 | + productReference = 331C8081294A63A400263BE5 /* RunnerTests.xctest */; | ||
| 187 | + productType = "com.apple.product-type.bundle.unit-test"; | ||
| 188 | + }; | ||
| 130 | 97C146ED1CF9000F007C117D /* Runner */ = { | 189 | 97C146ED1CF9000F007C117D /* Runner */ = { |
| 131 | isa = PBXNativeTarget; | 190 | isa = PBXNativeTarget; |
| 132 | buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; | 191 | buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; |
| 133 | buildPhases = ( | 192 | buildPhases = ( |
| 134 | - B086C54F5791A4E759CB6822 /* [CP] Check Pods Manifest.lock */, | 193 | + C8221F629E52D01B6ABC23B2 /* [CP] Check Pods Manifest.lock */, |
| 135 | 9740EEB61CF901F6004384FC /* Run Script */, | 194 | 9740EEB61CF901F6004384FC /* Run Script */, |
| 136 | 97C146EA1CF9000F007C117D /* Sources */, | 195 | 97C146EA1CF9000F007C117D /* Sources */, |
| 137 | 97C146EB1CF9000F007C117D /* Frameworks */, | 196 | 97C146EB1CF9000F007C117D /* Frameworks */, |
| 138 | 97C146EC1CF9000F007C117D /* Resources */, | 197 | 97C146EC1CF9000F007C117D /* Resources */, |
| 139 | 9705A1C41CF9048500538489 /* Embed Frameworks */, | 198 | 9705A1C41CF9048500538489 /* Embed Frameworks */, |
| 140 | 3B06AD1E1E4923F5004D2608 /* Thin Binary */, | 199 | 3B06AD1E1E4923F5004D2608 /* Thin Binary */, |
| 141 | - F825A499E8C466DB9DC6247D /* [CP] Embed Pods Frameworks */, | 200 | + 3DBCC0215D7BED1D9A756EA3 /* [CP] Embed Pods Frameworks */, |
| 142 | ); | 201 | ); |
| 143 | buildRules = ( | 202 | buildRules = ( |
| 144 | ); | 203 | ); |
| @@ -155,9 +214,14 @@ | @@ -155,9 +214,14 @@ | ||
| 155 | 97C146E61CF9000F007C117D /* Project object */ = { | 214 | 97C146E61CF9000F007C117D /* Project object */ = { |
| 156 | isa = PBXProject; | 215 | isa = PBXProject; |
| 157 | attributes = { | 216 | attributes = { |
| 217 | + BuildIndependentTargetsInParallel = YES; | ||
| 158 | LastUpgradeCheck = 1430; | 218 | LastUpgradeCheck = 1430; |
| 159 | ORGANIZATIONNAME = ""; | 219 | ORGANIZATIONNAME = ""; |
| 160 | TargetAttributes = { | 220 | TargetAttributes = { |
| 221 | + 331C8080294A63A400263BE5 = { | ||
| 222 | + CreatedOnToolsVersion = 14.0; | ||
| 223 | + TestTargetID = 97C146ED1CF9000F007C117D; | ||
| 224 | + }; | ||
| 161 | 97C146ED1CF9000F007C117D = { | 225 | 97C146ED1CF9000F007C117D = { |
| 162 | CreatedOnToolsVersion = 7.3.1; | 226 | CreatedOnToolsVersion = 7.3.1; |
| 163 | LastSwiftMigration = 1100; | 227 | LastSwiftMigration = 1100; |
| @@ -178,11 +242,19 @@ | @@ -178,11 +242,19 @@ | ||
| 178 | projectRoot = ""; | 242 | projectRoot = ""; |
| 179 | targets = ( | 243 | targets = ( |
| 180 | 97C146ED1CF9000F007C117D /* Runner */, | 244 | 97C146ED1CF9000F007C117D /* Runner */, |
| 245 | + 331C8080294A63A400263BE5 /* RunnerTests */, | ||
| 181 | ); | 246 | ); |
| 182 | }; | 247 | }; |
| 183 | /* End PBXProject section */ | 248 | /* End PBXProject section */ |
| 184 | 249 | ||
| 185 | /* Begin PBXResourcesBuildPhase section */ | 250 | /* Begin PBXResourcesBuildPhase section */ |
| 251 | + 331C807F294A63A400263BE5 /* Resources */ = { | ||
| 252 | + isa = PBXResourcesBuildPhase; | ||
| 253 | + buildActionMask = 2147483647; | ||
| 254 | + files = ( | ||
| 255 | + ); | ||
| 256 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 257 | + }; | ||
| 186 | 97C146EC1CF9000F007C117D /* Resources */ = { | 258 | 97C146EC1CF9000F007C117D /* Resources */ = { |
| 187 | isa = PBXResourcesBuildPhase; | 259 | isa = PBXResourcesBuildPhase; |
| 188 | buildActionMask = 2147483647; | 260 | buildActionMask = 2147483647; |
| @@ -213,6 +285,23 @@ | @@ -213,6 +285,23 @@ | ||
| 213 | shellPath = /bin/sh; | 285 | shellPath = /bin/sh; |
| 214 | shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; | 286 | shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; |
| 215 | }; | 287 | }; |
| 288 | + 3DBCC0215D7BED1D9A756EA3 /* [CP] Embed Pods Frameworks */ = { | ||
| 289 | + isa = PBXShellScriptBuildPhase; | ||
| 290 | + buildActionMask = 2147483647; | ||
| 291 | + files = ( | ||
| 292 | + ); | ||
| 293 | + inputFileListPaths = ( | ||
| 294 | + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", | ||
| 295 | + ); | ||
| 296 | + name = "[CP] Embed Pods Frameworks"; | ||
| 297 | + outputFileListPaths = ( | ||
| 298 | + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", | ||
| 299 | + ); | ||
| 300 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 301 | + shellPath = /bin/sh; | ||
| 302 | + shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; | ||
| 303 | + showEnvVarsInLog = 0; | ||
| 304 | + }; | ||
| 216 | 9740EEB61CF901F6004384FC /* Run Script */ = { | 305 | 9740EEB61CF901F6004384FC /* Run Script */ = { |
| 217 | isa = PBXShellScriptBuildPhase; | 306 | isa = PBXShellScriptBuildPhase; |
| 218 | alwaysOutOfDate = 1; | 307 | alwaysOutOfDate = 1; |
| @@ -228,7 +317,7 @@ | @@ -228,7 +317,7 @@ | ||
| 228 | shellPath = /bin/sh; | 317 | shellPath = /bin/sh; |
| 229 | shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; | 318 | shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; |
| 230 | }; | 319 | }; |
| 231 | - B086C54F5791A4E759CB6822 /* [CP] Check Pods Manifest.lock */ = { | 320 | + C7DE006A696F551C4E067E41 /* [CP] Check Pods Manifest.lock */ = { |
| 232 | isa = PBXShellScriptBuildPhase; | 321 | isa = PBXShellScriptBuildPhase; |
| 233 | buildActionMask = 2147483647; | 322 | buildActionMask = 2147483647; |
| 234 | files = ( | 323 | files = ( |
| @@ -243,33 +332,46 @@ | @@ -243,33 +332,46 @@ | ||
| 243 | outputFileListPaths = ( | 332 | outputFileListPaths = ( |
| 244 | ); | 333 | ); |
| 245 | outputPaths = ( | 334 | outputPaths = ( |
| 246 | - "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", | 335 | + "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt", |
| 247 | ); | 336 | ); |
| 248 | runOnlyForDeploymentPostprocessing = 0; | 337 | runOnlyForDeploymentPostprocessing = 0; |
| 249 | shellPath = /bin/sh; | 338 | shellPath = /bin/sh; |
| 250 | shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; | 339 | shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; |
| 251 | showEnvVarsInLog = 0; | 340 | showEnvVarsInLog = 0; |
| 252 | }; | 341 | }; |
| 253 | - F825A499E8C466DB9DC6247D /* [CP] Embed Pods Frameworks */ = { | 342 | + C8221F629E52D01B6ABC23B2 /* [CP] Check Pods Manifest.lock */ = { |
| 254 | isa = PBXShellScriptBuildPhase; | 343 | isa = PBXShellScriptBuildPhase; |
| 255 | buildActionMask = 2147483647; | 344 | buildActionMask = 2147483647; |
| 256 | files = ( | 345 | files = ( |
| 257 | ); | 346 | ); |
| 258 | inputFileListPaths = ( | 347 | inputFileListPaths = ( |
| 259 | - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-input-files.xcfilelist", | ||
| 260 | ); | 348 | ); |
| 261 | - name = "[CP] Embed Pods Frameworks"; | 349 | + inputPaths = ( |
| 350 | + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", | ||
| 351 | + "${PODS_ROOT}/Manifest.lock", | ||
| 352 | + ); | ||
| 353 | + name = "[CP] Check Pods Manifest.lock"; | ||
| 262 | outputFileListPaths = ( | 354 | outputFileListPaths = ( |
| 263 | - "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks-${CONFIGURATION}-output-files.xcfilelist", | 355 | + ); |
| 356 | + outputPaths = ( | ||
| 357 | + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", | ||
| 264 | ); | 358 | ); |
| 265 | runOnlyForDeploymentPostprocessing = 0; | 359 | runOnlyForDeploymentPostprocessing = 0; |
| 266 | shellPath = /bin/sh; | 360 | shellPath = /bin/sh; |
| 267 | - shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; | 361 | + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; |
| 268 | showEnvVarsInLog = 0; | 362 | showEnvVarsInLog = 0; |
| 269 | }; | 363 | }; |
| 270 | /* End PBXShellScriptBuildPhase section */ | 364 | /* End PBXShellScriptBuildPhase section */ |
| 271 | 365 | ||
| 272 | /* Begin PBXSourcesBuildPhase section */ | 366 | /* Begin PBXSourcesBuildPhase section */ |
| 367 | + 331C807D294A63A400263BE5 /* Sources */ = { | ||
| 368 | + isa = PBXSourcesBuildPhase; | ||
| 369 | + buildActionMask = 2147483647; | ||
| 370 | + files = ( | ||
| 371 | + 331C808B294A63AB00263BE5 /* RunnerTests.swift in Sources */, | ||
| 372 | + ); | ||
| 373 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 374 | + }; | ||
| 273 | 97C146EA1CF9000F007C117D /* Sources */ = { | 375 | 97C146EA1CF9000F007C117D /* Sources */ = { |
| 274 | isa = PBXSourcesBuildPhase; | 376 | isa = PBXSourcesBuildPhase; |
| 275 | buildActionMask = 2147483647; | 377 | buildActionMask = 2147483647; |
| @@ -281,6 +383,14 @@ | @@ -281,6 +383,14 @@ | ||
| 281 | }; | 383 | }; |
| 282 | /* End PBXSourcesBuildPhase section */ | 384 | /* End PBXSourcesBuildPhase section */ |
| 283 | 385 | ||
| 386 | +/* Begin PBXTargetDependency section */ | ||
| 387 | + 331C8086294A63A400263BE5 /* PBXTargetDependency */ = { | ||
| 388 | + isa = PBXTargetDependency; | ||
| 389 | + target = 97C146ED1CF9000F007C117D /* Runner */; | ||
| 390 | + targetProxy = 331C8085294A63A400263BE5 /* PBXContainerItemProxy */; | ||
| 391 | + }; | ||
| 392 | +/* End PBXTargetDependency section */ | ||
| 393 | + | ||
| 284 | /* Begin PBXVariantGroup section */ | 394 | /* Begin PBXVariantGroup section */ |
| 285 | 97C146FA1CF9000F007C117D /* Main.storyboard */ = { | 395 | 97C146FA1CF9000F007C117D /* Main.storyboard */ = { |
| 286 | isa = PBXVariantGroup; | 396 | isa = PBXVariantGroup; |
| @@ -376,6 +486,56 @@ | @@ -376,6 +486,56 @@ | ||
| 376 | }; | 486 | }; |
| 377 | name = Profile; | 487 | name = Profile; |
| 378 | }; | 488 | }; |
| 489 | + 331C8088294A63A400263BE5 /* Debug */ = { | ||
| 490 | + isa = XCBuildConfiguration; | ||
| 491 | + baseConfigurationReference = A5A24D61913C510FB38A434E /* Pods-RunnerTests.debug.xcconfig */; | ||
| 492 | + buildSettings = { | ||
| 493 | + BUNDLE_LOADER = "$(TEST_HOST)"; | ||
| 494 | + CODE_SIGN_STYLE = Automatic; | ||
| 495 | + CURRENT_PROJECT_VERSION = 1; | ||
| 496 | + GENERATE_INFOPLIST_FILE = YES; | ||
| 497 | + MARKETING_VERSION = 1.0; | ||
| 498 | + PRODUCT_BUNDLE_IDENTIFIER = com.example.mobile-scanner.RunnerTests; | ||
| 499 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 500 | + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; | ||
| 501 | + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; | ||
| 502 | + SWIFT_VERSION = 5.0; | ||
| 503 | + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; | ||
| 504 | + }; | ||
| 505 | + name = Debug; | ||
| 506 | + }; | ||
| 507 | + 331C8089294A63A400263BE5 /* Release */ = { | ||
| 508 | + isa = XCBuildConfiguration; | ||
| 509 | + baseConfigurationReference = ADC5B74E7E0BCF65C9CD3AA9 /* Pods-RunnerTests.release.xcconfig */; | ||
| 510 | + buildSettings = { | ||
| 511 | + BUNDLE_LOADER = "$(TEST_HOST)"; | ||
| 512 | + CODE_SIGN_STYLE = Automatic; | ||
| 513 | + CURRENT_PROJECT_VERSION = 1; | ||
| 514 | + GENERATE_INFOPLIST_FILE = YES; | ||
| 515 | + MARKETING_VERSION = 1.0; | ||
| 516 | + PRODUCT_BUNDLE_IDENTIFIER = com.example.mobile-scanner.RunnerTests; | ||
| 517 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 518 | + SWIFT_VERSION = 5.0; | ||
| 519 | + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; | ||
| 520 | + }; | ||
| 521 | + name = Release; | ||
| 522 | + }; | ||
| 523 | + 331C808A294A63A400263BE5 /* Profile */ = { | ||
| 524 | + isa = XCBuildConfiguration; | ||
| 525 | + baseConfigurationReference = 7F6B8553738879C25774B609 /* Pods-RunnerTests.profile.xcconfig */; | ||
| 526 | + buildSettings = { | ||
| 527 | + BUNDLE_LOADER = "$(TEST_HOST)"; | ||
| 528 | + CODE_SIGN_STYLE = Automatic; | ||
| 529 | + CURRENT_PROJECT_VERSION = 1; | ||
| 530 | + GENERATE_INFOPLIST_FILE = YES; | ||
| 531 | + MARKETING_VERSION = 1.0; | ||
| 532 | + PRODUCT_BUNDLE_IDENTIFIER = com.example.mobile-scanner.RunnerTests; | ||
| 533 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 534 | + SWIFT_VERSION = 5.0; | ||
| 535 | + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Runner.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/Runner"; | ||
| 536 | + }; | ||
| 537 | + name = Profile; | ||
| 538 | + }; | ||
| 379 | 97C147031CF9000F007C117D /* Debug */ = { | 539 | 97C147031CF9000F007C117D /* Debug */ = { |
| 380 | isa = XCBuildConfiguration; | 540 | isa = XCBuildConfiguration; |
| 381 | buildSettings = { | 541 | buildSettings = { |
| @@ -537,6 +697,16 @@ | @@ -537,6 +697,16 @@ | ||
| 537 | /* End XCBuildConfiguration section */ | 697 | /* End XCBuildConfiguration section */ |
| 538 | 698 | ||
| 539 | /* Begin XCConfigurationList section */ | 699 | /* Begin XCConfigurationList section */ |
| 700 | + 331C8087294A63A400263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { | ||
| 701 | + isa = XCConfigurationList; | ||
| 702 | + buildConfigurations = ( | ||
| 703 | + 331C8088294A63A400263BE5 /* Debug */, | ||
| 704 | + 331C8089294A63A400263BE5 /* Release */, | ||
| 705 | + 331C808A294A63A400263BE5 /* Profile */, | ||
| 706 | + ); | ||
| 707 | + defaultConfigurationIsVisible = 0; | ||
| 708 | + defaultConfigurationName = Release; | ||
| 709 | + }; | ||
| 540 | 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { | 710 | 97C146E91CF9000F007C117D /* Build configuration list for PBXProject "Runner" */ = { |
| 541 | isa = XCConfigurationList; | 711 | isa = XCConfigurationList; |
| 542 | buildConfigurations = ( | 712 | buildConfigurations = ( |
| @@ -37,6 +37,17 @@ | @@ -37,6 +37,17 @@ | ||
| 37 | </BuildableReference> | 37 | </BuildableReference> |
| 38 | </MacroExpansion> | 38 | </MacroExpansion> |
| 39 | <Testables> | 39 | <Testables> |
| 40 | + <TestableReference | ||
| 41 | + skipped = "NO" | ||
| 42 | + parallelizable = "YES"> | ||
| 43 | + <BuildableReference | ||
| 44 | + BuildableIdentifier = "primary" | ||
| 45 | + BlueprintIdentifier = "331C8080294A63A400263BE5" | ||
| 46 | + BuildableName = "RunnerTests.xctest" | ||
| 47 | + BlueprintName = "RunnerTests" | ||
| 48 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 49 | + </BuildableReference> | ||
| 50 | + </TestableReference> | ||
| 40 | </Testables> | 51 | </Testables> |
| 41 | </TestAction> | 52 | </TestAction> |
| 42 | <LaunchAction | 53 | <LaunchAction |
| @@ -2,8 +2,6 @@ | @@ -2,8 +2,6 @@ | ||
| 2 | <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> | 2 | <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> |
| 3 | <plist version="1.0"> | 3 | <plist version="1.0"> |
| 4 | <dict> | 4 | <dict> |
| 5 | - <key>CADisableMinimumFrameDurationOnPhone</key> | ||
| 6 | - <true/> | ||
| 7 | <key>CFBundleDevelopmentRegion</key> | 5 | <key>CFBundleDevelopmentRegion</key> |
| 8 | <string>$(DEVELOPMENT_LANGUAGE)</string> | 6 | <string>$(DEVELOPMENT_LANGUAGE)</string> |
| 9 | <key>CFBundleDisplayName</key> | 7 | <key>CFBundleDisplayName</key> |
| @@ -30,8 +28,6 @@ | @@ -30,8 +28,6 @@ | ||
| 30 | <string>This app needs camera access to scan QR codes</string> | 28 | <string>This app needs camera access to scan QR codes</string> |
| 31 | <key>NSPhotoLibraryUsageDescription</key> | 29 | <key>NSPhotoLibraryUsageDescription</key> |
| 32 | <string>This app needs photos access to get QR code from photo library</string> | 30 | <string>This app needs photos access to get QR code from photo library</string> |
| 33 | - <key>UIApplicationSupportsIndirectInputEvents</key> | ||
| 34 | - <true/> | ||
| 35 | <key>UILaunchStoryboardName</key> | 31 | <key>UILaunchStoryboardName</key> |
| 36 | <string>LaunchScreen</string> | 32 | <string>LaunchScreen</string> |
| 37 | <key>UIMainStoryboardFile</key> | 33 | <key>UIMainStoryboardFile</key> |
| @@ -51,5 +47,9 @@ | @@ -51,5 +47,9 @@ | ||
| 51 | </array> | 47 | </array> |
| 52 | <key>UIViewControllerBasedStatusBarAppearance</key> | 48 | <key>UIViewControllerBasedStatusBarAppearance</key> |
| 53 | <false/> | 49 | <false/> |
| 50 | + <key>CADisableMinimumFrameDurationOnPhone</key> | ||
| 51 | + <true/> | ||
| 52 | + <key>UIApplicationSupportsIndirectInputEvents</key> | ||
| 53 | + <true/> | ||
| 54 | </dict> | 54 | </dict> |
| 55 | </plist> | 55 | </plist> |
example/ios/RunnerTests/RunnerTests.swift
0 → 100644
| 1 | +import Flutter | ||
| 2 | +import UIKit | ||
| 3 | +import XCTest | ||
| 4 | + | ||
| 5 | +@testable import mobile_scanner | ||
| 6 | + | ||
| 7 | +// This demonstrates a simple unit test of the Swift portion of this plugin's implementation. | ||
| 8 | +// | ||
| 9 | +// See https://developer.apple.com/documentation/xctest for more information about using XCTest. | ||
| 10 | + | ||
| 11 | +class RunnerTests: XCTestCase { | ||
| 12 | + | ||
| 13 | + // TODO: this test was left as-is from the template, but it obviuosly fails for now. | ||
| 14 | + // Add new tests later. | ||
| 15 | + /* | ||
| 16 | + func testGetPlatformVersion() { | ||
| 17 | + let plugin = MobileScannerPlugin() | ||
| 18 | + | ||
| 19 | + let call = FlutterMethodCall(methodName: "getPlatformVersion", arguments: []) | ||
| 20 | + | ||
| 21 | + let resultExpectation = expectation(description: "result block must be called.") | ||
| 22 | + plugin.handle(call) { result in | ||
| 23 | + XCTAssertEqual(result as! String, "iOS " + UIDevice.current.systemVersion) | ||
| 24 | + resultExpectation.fulfill() | ||
| 25 | + } | ||
| 26 | + waitForExpectations(timeout: 1) | ||
| 27 | + }*/ | ||
| 28 | + | ||
| 29 | +} |
| @@ -31,6 +31,9 @@ target 'Runner' do | @@ -31,6 +31,9 @@ target 'Runner' do | ||
| 31 | use_modular_headers! | 31 | use_modular_headers! |
| 32 | 32 | ||
| 33 | flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) | 33 | flutter_install_all_macos_pods File.dirname(File.realpath(__FILE__)) |
| 34 | + target 'RunnerTests' do | ||
| 35 | + inherit! :search_paths | ||
| 36 | + end | ||
| 34 | end | 37 | end |
| 35 | 38 | ||
| 36 | post_install do |installer| | 39 | post_install do |installer| |
| @@ -21,15 +21,24 @@ | @@ -21,15 +21,24 @@ | ||
| 21 | /* End PBXAggregateTarget section */ | 21 | /* End PBXAggregateTarget section */ |
| 22 | 22 | ||
| 23 | /* Begin PBXBuildFile section */ | 23 | /* Begin PBXBuildFile section */ |
| 24 | + 331C80D8294CF71000263BE5 /* RunnerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 331C80D7294CF71000263BE5 /* RunnerTests.swift */; }; | ||
| 24 | 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; | 25 | 335BBD1B22A9A15E00E9071D /* GeneratedPluginRegistrant.swift in Sources */ = {isa = PBXBuildFile; fileRef = 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */; }; |
| 25 | 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; | 26 | 33CC10F12044A3C60003C045 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC10F02044A3C60003C045 /* AppDelegate.swift */; }; |
| 26 | 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; | 27 | 33CC10F32044A3C60003C045 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F22044A3C60003C045 /* Assets.xcassets */; }; |
| 27 | 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; | 28 | 33CC10F62044A3C60003C045 /* MainMenu.xib in Resources */ = {isa = PBXBuildFile; fileRef = 33CC10F42044A3C60003C045 /* MainMenu.xib */; }; |
| 28 | 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; | 29 | 33CC11132044BFA00003C045 /* MainFlutterWindow.swift in Sources */ = {isa = PBXBuildFile; fileRef = 33CC11122044BFA00003C045 /* MainFlutterWindow.swift */; }; |
| 29 | - 5348E36EDC155A01222C3599 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 41950513928B2DA794C685E3 /* Pods_Runner.framework */; }; | 30 | + 58A22AC50A792ECA6D027507 /* Pods_RunnerTests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 419C3BC9593F6DE903D740F0 /* Pods_RunnerTests.framework */; }; |
| 31 | + F209F1436A19CBC32BFFB26A /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = EEB40B96A6FFC92607527710 /* Pods_Runner.framework */; }; | ||
| 30 | /* End PBXBuildFile section */ | 32 | /* End PBXBuildFile section */ |
| 31 | 33 | ||
| 32 | /* Begin PBXContainerItemProxy section */ | 34 | /* Begin PBXContainerItemProxy section */ |
| 35 | + 331C80D9294CF71000263BE5 /* PBXContainerItemProxy */ = { | ||
| 36 | + isa = PBXContainerItemProxy; | ||
| 37 | + containerPortal = 33CC10E52044A3C60003C045 /* Project object */; | ||
| 38 | + proxyType = 1; | ||
| 39 | + remoteGlobalIDString = 33CC10EC2044A3C60003C045; | ||
| 40 | + remoteInfo = Runner; | ||
| 41 | + }; | ||
| 33 | 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { | 42 | 33CC111F2044C79F0003C045 /* PBXContainerItemProxy */ = { |
| 34 | isa = PBXContainerItemProxy; | 43 | isa = PBXContainerItemProxy; |
| 35 | containerPortal = 33CC10E52044A3C60003C045 /* Project object */; | 44 | containerPortal = 33CC10E52044A3C60003C045 /* Project object */; |
| @@ -53,6 +62,9 @@ | @@ -53,6 +62,9 @@ | ||
| 53 | /* End PBXCopyFilesBuildPhase section */ | 62 | /* End PBXCopyFilesBuildPhase section */ |
| 54 | 63 | ||
| 55 | /* Begin PBXFileReference section */ | 64 | /* Begin PBXFileReference section */ |
| 65 | + 23E216AF8BD40EB8E52863BE /* Pods-RunnerTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.release.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.release.xcconfig"; sourceTree = "<group>"; }; | ||
| 66 | + 331C80D5294CF71000263BE5 /* RunnerTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = RunnerTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 67 | + 331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = "<group>"; }; | ||
| 56 | 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; }; | 68 | 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = "<group>"; }; |
| 57 | 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; }; | 69 | 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = "<group>"; }; |
| 58 | 33CC10ED2044A3C60003C045 /* mobile_scanner_example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = mobile_scanner_example.app; sourceTree = BUILT_PRODUCTS_DIR; }; | 70 | 33CC10ED2044A3C60003C045 /* mobile_scanner_example.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = mobile_scanner_example.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| @@ -67,34 +79,43 @@ | @@ -67,34 +79,43 @@ | ||
| 67 | 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = "<group>"; }; | 79 | 33E51913231747F40026EE4D /* DebugProfile.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DebugProfile.entitlements; sourceTree = "<group>"; }; |
| 68 | 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = "<group>"; }; | 80 | 33E51914231749380026EE4D /* Release.entitlements */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.entitlements; path = Release.entitlements; sourceTree = "<group>"; }; |
| 69 | 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = "<group>"; }; | 81 | 33E5194F232828860026EE4D /* AppInfo.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = AppInfo.xcconfig; sourceTree = "<group>"; }; |
| 70 | - 41950513928B2DA794C685E3 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 71 | - 433FCBF2B1E3F653F96B3C79 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; }; | 82 | + 419C3BC9593F6DE903D740F0 /* Pods_RunnerTests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_RunnerTests.framework; sourceTree = BUILT_PRODUCTS_DIR; }; |
| 72 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; }; | 83 | 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Release.xcconfig; sourceTree = "<group>"; }; |
| 84 | + 8201964090D9F78BC65FF5D2 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = "<group>"; }; | ||
| 73 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; }; | 85 | 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = Debug.xcconfig; sourceTree = "<group>"; }; |
| 74 | - 97D4F0103EE99761EF216A9C /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; }; | ||
| 75 | - B67CB61EED45BF13A197D997 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; }; | 86 | + 9AB9A83BADC7F755AA147D15 /* Pods-RunnerTests.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.profile.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.profile.xcconfig"; sourceTree = "<group>"; }; |
| 87 | + AA0CC45DA8C7F4A77CA80A2E /* Pods-RunnerTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-RunnerTests.debug.xcconfig"; path = "Target Support Files/Pods-RunnerTests/Pods-RunnerTests.debug.xcconfig"; sourceTree = "<group>"; }; | ||
| 88 | + CAEA4D71BCF9158847C4F6AC /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = "<group>"; }; | ||
| 89 | + E1DC1D18B8C13B1C75763506 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = "<group>"; }; | ||
| 90 | + EEB40B96A6FFC92607527710 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; | ||
| 76 | /* End PBXFileReference section */ | 91 | /* End PBXFileReference section */ |
| 77 | 92 | ||
| 78 | /* Begin PBXFrameworksBuildPhase section */ | 93 | /* Begin PBXFrameworksBuildPhase section */ |
| 94 | + 331C80D2294CF70F00263BE5 /* Frameworks */ = { | ||
| 95 | + isa = PBXFrameworksBuildPhase; | ||
| 96 | + buildActionMask = 2147483647; | ||
| 97 | + files = ( | ||
| 98 | + 58A22AC50A792ECA6D027507 /* Pods_RunnerTests.framework in Frameworks */, | ||
| 99 | + ); | ||
| 100 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 101 | + }; | ||
| 79 | 33CC10EA2044A3C60003C045 /* Frameworks */ = { | 102 | 33CC10EA2044A3C60003C045 /* Frameworks */ = { |
| 80 | isa = PBXFrameworksBuildPhase; | 103 | isa = PBXFrameworksBuildPhase; |
| 81 | buildActionMask = 2147483647; | 104 | buildActionMask = 2147483647; |
| 82 | files = ( | 105 | files = ( |
| 83 | - 5348E36EDC155A01222C3599 /* Pods_Runner.framework in Frameworks */, | 106 | + F209F1436A19CBC32BFFB26A /* Pods_Runner.framework in Frameworks */, |
| 84 | ); | 107 | ); |
| 85 | runOnlyForDeploymentPostprocessing = 0; | 108 | runOnlyForDeploymentPostprocessing = 0; |
| 86 | }; | 109 | }; |
| 87 | /* End PBXFrameworksBuildPhase section */ | 110 | /* End PBXFrameworksBuildPhase section */ |
| 88 | 111 | ||
| 89 | /* Begin PBXGroup section */ | 112 | /* Begin PBXGroup section */ |
| 90 | - 20F8C9AA20C2A495C125E194 /* Pods */ = { | 113 | + 331C80D6294CF71000263BE5 /* RunnerTests */ = { |
| 91 | isa = PBXGroup; | 114 | isa = PBXGroup; |
| 92 | children = ( | 115 | children = ( |
| 93 | - B67CB61EED45BF13A197D997 /* Pods-Runner.debug.xcconfig */, | ||
| 94 | - 97D4F0103EE99761EF216A9C /* Pods-Runner.release.xcconfig */, | ||
| 95 | - 433FCBF2B1E3F653F96B3C79 /* Pods-Runner.profile.xcconfig */, | 116 | + 331C80D7294CF71000263BE5 /* RunnerTests.swift */, |
| 96 | ); | 117 | ); |
| 97 | - path = Pods; | 118 | + path = RunnerTests; |
| 98 | sourceTree = "<group>"; | 119 | sourceTree = "<group>"; |
| 99 | }; | 120 | }; |
| 100 | 33BA886A226E78AF003329D5 /* Configs */ = { | 121 | 33BA886A226E78AF003329D5 /* Configs */ = { |
| @@ -113,9 +134,10 @@ | @@ -113,9 +134,10 @@ | ||
| 113 | children = ( | 134 | children = ( |
| 114 | 33FAB671232836740065AC1E /* Runner */, | 135 | 33FAB671232836740065AC1E /* Runner */, |
| 115 | 33CEB47122A05771004F2AC0 /* Flutter */, | 136 | 33CEB47122A05771004F2AC0 /* Flutter */, |
| 137 | + 331C80D6294CF71000263BE5 /* RunnerTests */, | ||
| 116 | 33CC10EE2044A3C60003C045 /* Products */, | 138 | 33CC10EE2044A3C60003C045 /* Products */, |
| 117 | - 20F8C9AA20C2A495C125E194 /* Pods */, | ||
| 118 | - 64FFE901A03ED70F67D8DCD6 /* Frameworks */, | 139 | + D73912EC22F37F3D000D13A0 /* Frameworks */, |
| 140 | + 48C702343BA8440B9F0C4C3B /* Pods */, | ||
| 119 | ); | 141 | ); |
| 120 | sourceTree = "<group>"; | 142 | sourceTree = "<group>"; |
| 121 | }; | 143 | }; |
| @@ -123,6 +145,7 @@ | @@ -123,6 +145,7 @@ | ||
| 123 | isa = PBXGroup; | 145 | isa = PBXGroup; |
| 124 | children = ( | 146 | children = ( |
| 125 | 33CC10ED2044A3C60003C045 /* mobile_scanner_example.app */, | 147 | 33CC10ED2044A3C60003C045 /* mobile_scanner_example.app */, |
| 148 | + 331C80D5294CF71000263BE5 /* RunnerTests.xctest */, | ||
| 126 | ); | 149 | ); |
| 127 | name = Products; | 150 | name = Products; |
| 128 | sourceTree = "<group>"; | 151 | sourceTree = "<group>"; |
| @@ -162,10 +185,25 @@ | @@ -162,10 +185,25 @@ | ||
| 162 | path = Runner; | 185 | path = Runner; |
| 163 | sourceTree = "<group>"; | 186 | sourceTree = "<group>"; |
| 164 | }; | 187 | }; |
| 165 | - 64FFE901A03ED70F67D8DCD6 /* Frameworks */ = { | 188 | + 48C702343BA8440B9F0C4C3B /* Pods */ = { |
| 166 | isa = PBXGroup; | 189 | isa = PBXGroup; |
| 167 | children = ( | 190 | children = ( |
| 168 | - 41950513928B2DA794C685E3 /* Pods_Runner.framework */, | 191 | + E1DC1D18B8C13B1C75763506 /* Pods-Runner.debug.xcconfig */, |
| 192 | + CAEA4D71BCF9158847C4F6AC /* Pods-Runner.release.xcconfig */, | ||
| 193 | + 8201964090D9F78BC65FF5D2 /* Pods-Runner.profile.xcconfig */, | ||
| 194 | + AA0CC45DA8C7F4A77CA80A2E /* Pods-RunnerTests.debug.xcconfig */, | ||
| 195 | + 23E216AF8BD40EB8E52863BE /* Pods-RunnerTests.release.xcconfig */, | ||
| 196 | + 9AB9A83BADC7F755AA147D15 /* Pods-RunnerTests.profile.xcconfig */, | ||
| 197 | + ); | ||
| 198 | + name = Pods; | ||
| 199 | + path = Pods; | ||
| 200 | + sourceTree = "<group>"; | ||
| 201 | + }; | ||
| 202 | + D73912EC22F37F3D000D13A0 /* Frameworks */ = { | ||
| 203 | + isa = PBXGroup; | ||
| 204 | + children = ( | ||
| 205 | + EEB40B96A6FFC92607527710 /* Pods_Runner.framework */, | ||
| 206 | + 419C3BC9593F6DE903D740F0 /* Pods_RunnerTests.framework */, | ||
| 169 | ); | 207 | ); |
| 170 | name = Frameworks; | 208 | name = Frameworks; |
| 171 | sourceTree = "<group>"; | 209 | sourceTree = "<group>"; |
| @@ -173,17 +211,36 @@ | @@ -173,17 +211,36 @@ | ||
| 173 | /* End PBXGroup section */ | 211 | /* End PBXGroup section */ |
| 174 | 212 | ||
| 175 | /* Begin PBXNativeTarget section */ | 213 | /* Begin PBXNativeTarget section */ |
| 214 | + 331C80D4294CF70F00263BE5 /* RunnerTests */ = { | ||
| 215 | + isa = PBXNativeTarget; | ||
| 216 | + buildConfigurationList = 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */; | ||
| 217 | + buildPhases = ( | ||
| 218 | + 26566874B4D5506B07E5CB72 /* [CP] Check Pods Manifest.lock */, | ||
| 219 | + 331C80D1294CF70F00263BE5 /* Sources */, | ||
| 220 | + 331C80D2294CF70F00263BE5 /* Frameworks */, | ||
| 221 | + 331C80D3294CF70F00263BE5 /* Resources */, | ||
| 222 | + ); | ||
| 223 | + buildRules = ( | ||
| 224 | + ); | ||
| 225 | + dependencies = ( | ||
| 226 | + 331C80DA294CF71000263BE5 /* PBXTargetDependency */, | ||
| 227 | + ); | ||
| 228 | + name = RunnerTests; | ||
| 229 | + productName = RunnerTests; | ||
| 230 | + productReference = 331C80D5294CF71000263BE5 /* RunnerTests.xctest */; | ||
| 231 | + productType = "com.apple.product-type.bundle.unit-test"; | ||
| 232 | + }; | ||
| 176 | 33CC10EC2044A3C60003C045 /* Runner */ = { | 233 | 33CC10EC2044A3C60003C045 /* Runner */ = { |
| 177 | isa = PBXNativeTarget; | 234 | isa = PBXNativeTarget; |
| 178 | buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; | 235 | buildConfigurationList = 33CC10FB2044A3C60003C045 /* Build configuration list for PBXNativeTarget "Runner" */; |
| 179 | buildPhases = ( | 236 | buildPhases = ( |
| 180 | - 11C0752B00246A027DB2D859 /* [CP] Check Pods Manifest.lock */, | 237 | + FF04EF1310CEA88A9000CF01 /* [CP] Check Pods Manifest.lock */, |
| 181 | 33CC10E92044A3C60003C045 /* Sources */, | 238 | 33CC10E92044A3C60003C045 /* Sources */, |
| 182 | 33CC10EA2044A3C60003C045 /* Frameworks */, | 239 | 33CC10EA2044A3C60003C045 /* Frameworks */, |
| 183 | 33CC10EB2044A3C60003C045 /* Resources */, | 240 | 33CC10EB2044A3C60003C045 /* Resources */, |
| 184 | 33CC110E2044A8840003C045 /* Bundle Framework */, | 241 | 33CC110E2044A8840003C045 /* Bundle Framework */, |
| 185 | 3399D490228B24CF009A79C7 /* ShellScript */, | 242 | 3399D490228B24CF009A79C7 /* ShellScript */, |
| 186 | - E6424ECF3C1308BAAF6E5E67 /* [CP] Embed Pods Frameworks */, | 243 | + 861067CDDCB0554984369B14 /* [CP] Embed Pods Frameworks */, |
| 187 | ); | 244 | ); |
| 188 | buildRules = ( | 245 | buildRules = ( |
| 189 | ); | 246 | ); |
| @@ -205,6 +262,10 @@ | @@ -205,6 +262,10 @@ | ||
| 205 | LastUpgradeCheck = 1430; | 262 | LastUpgradeCheck = 1430; |
| 206 | ORGANIZATIONNAME = ""; | 263 | ORGANIZATIONNAME = ""; |
| 207 | TargetAttributes = { | 264 | TargetAttributes = { |
| 265 | + 331C80D4294CF70F00263BE5 = { | ||
| 266 | + CreatedOnToolsVersion = 14.0; | ||
| 267 | + TestTargetID = 33CC10EC2044A3C60003C045; | ||
| 268 | + }; | ||
| 208 | 33CC10EC2044A3C60003C045 = { | 269 | 33CC10EC2044A3C60003C045 = { |
| 209 | CreatedOnToolsVersion = 9.2; | 270 | CreatedOnToolsVersion = 9.2; |
| 210 | LastSwiftMigration = 1100; | 271 | LastSwiftMigration = 1100; |
| @@ -235,12 +296,20 @@ | @@ -235,12 +296,20 @@ | ||
| 235 | projectRoot = ""; | 296 | projectRoot = ""; |
| 236 | targets = ( | 297 | targets = ( |
| 237 | 33CC10EC2044A3C60003C045 /* Runner */, | 298 | 33CC10EC2044A3C60003C045 /* Runner */, |
| 299 | + 331C80D4294CF70F00263BE5 /* RunnerTests */, | ||
| 238 | 33CC111A2044C6BA0003C045 /* Flutter Assemble */, | 300 | 33CC111A2044C6BA0003C045 /* Flutter Assemble */, |
| 239 | ); | 301 | ); |
| 240 | }; | 302 | }; |
| 241 | /* End PBXProject section */ | 303 | /* End PBXProject section */ |
| 242 | 304 | ||
| 243 | /* Begin PBXResourcesBuildPhase section */ | 305 | /* Begin PBXResourcesBuildPhase section */ |
| 306 | + 331C80D3294CF70F00263BE5 /* Resources */ = { | ||
| 307 | + isa = PBXResourcesBuildPhase; | ||
| 308 | + buildActionMask = 2147483647; | ||
| 309 | + files = ( | ||
| 310 | + ); | ||
| 311 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 312 | + }; | ||
| 244 | 33CC10EB2044A3C60003C045 /* Resources */ = { | 313 | 33CC10EB2044A3C60003C045 /* Resources */ = { |
| 245 | isa = PBXResourcesBuildPhase; | 314 | isa = PBXResourcesBuildPhase; |
| 246 | buildActionMask = 2147483647; | 315 | buildActionMask = 2147483647; |
| @@ -253,7 +322,7 @@ | @@ -253,7 +322,7 @@ | ||
| 253 | /* End PBXResourcesBuildPhase section */ | 322 | /* End PBXResourcesBuildPhase section */ |
| 254 | 323 | ||
| 255 | /* Begin PBXShellScriptBuildPhase section */ | 324 | /* Begin PBXShellScriptBuildPhase section */ |
| 256 | - 11C0752B00246A027DB2D859 /* [CP] Check Pods Manifest.lock */ = { | 325 | + 26566874B4D5506B07E5CB72 /* [CP] Check Pods Manifest.lock */ = { |
| 257 | isa = PBXShellScriptBuildPhase; | 326 | isa = PBXShellScriptBuildPhase; |
| 258 | buildActionMask = 2147483647; | 327 | buildActionMask = 2147483647; |
| 259 | files = ( | 328 | files = ( |
| @@ -268,7 +337,7 @@ | @@ -268,7 +337,7 @@ | ||
| 268 | outputFileListPaths = ( | 337 | outputFileListPaths = ( |
| 269 | ); | 338 | ); |
| 270 | outputPaths = ( | 339 | outputPaths = ( |
| 271 | - "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", | 340 | + "$(DERIVED_FILE_DIR)/Pods-RunnerTests-checkManifestLockResult.txt", |
| 272 | ); | 341 | ); |
| 273 | runOnlyForDeploymentPostprocessing = 0; | 342 | runOnlyForDeploymentPostprocessing = 0; |
| 274 | shellPath = /bin/sh; | 343 | shellPath = /bin/sh; |
| @@ -313,7 +382,7 @@ | @@ -313,7 +382,7 @@ | ||
| 313 | shellPath = /bin/sh; | 382 | shellPath = /bin/sh; |
| 314 | shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; | 383 | shellScript = "\"$FLUTTER_ROOT\"/packages/flutter_tools/bin/macos_assemble.sh && touch Flutter/ephemeral/tripwire"; |
| 315 | }; | 384 | }; |
| 316 | - E6424ECF3C1308BAAF6E5E67 /* [CP] Embed Pods Frameworks */ = { | 385 | + 861067CDDCB0554984369B14 /* [CP] Embed Pods Frameworks */ = { |
| 317 | isa = PBXShellScriptBuildPhase; | 386 | isa = PBXShellScriptBuildPhase; |
| 318 | buildActionMask = 2147483647; | 387 | buildActionMask = 2147483647; |
| 319 | files = ( | 388 | files = ( |
| @@ -330,9 +399,39 @@ | @@ -330,9 +399,39 @@ | ||
| 330 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; | 399 | shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; |
| 331 | showEnvVarsInLog = 0; | 400 | showEnvVarsInLog = 0; |
| 332 | }; | 401 | }; |
| 402 | + FF04EF1310CEA88A9000CF01 /* [CP] Check Pods Manifest.lock */ = { | ||
| 403 | + isa = PBXShellScriptBuildPhase; | ||
| 404 | + buildActionMask = 2147483647; | ||
| 405 | + files = ( | ||
| 406 | + ); | ||
| 407 | + inputFileListPaths = ( | ||
| 408 | + ); | ||
| 409 | + inputPaths = ( | ||
| 410 | + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", | ||
| 411 | + "${PODS_ROOT}/Manifest.lock", | ||
| 412 | + ); | ||
| 413 | + name = "[CP] Check Pods Manifest.lock"; | ||
| 414 | + outputFileListPaths = ( | ||
| 415 | + ); | ||
| 416 | + outputPaths = ( | ||
| 417 | + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", | ||
| 418 | + ); | ||
| 419 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 420 | + shellPath = /bin/sh; | ||
| 421 | + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; | ||
| 422 | + showEnvVarsInLog = 0; | ||
| 423 | + }; | ||
| 333 | /* End PBXShellScriptBuildPhase section */ | 424 | /* End PBXShellScriptBuildPhase section */ |
| 334 | 425 | ||
| 335 | /* Begin PBXSourcesBuildPhase section */ | 426 | /* Begin PBXSourcesBuildPhase section */ |
| 427 | + 331C80D1294CF70F00263BE5 /* Sources */ = { | ||
| 428 | + isa = PBXSourcesBuildPhase; | ||
| 429 | + buildActionMask = 2147483647; | ||
| 430 | + files = ( | ||
| 431 | + 331C80D8294CF71000263BE5 /* RunnerTests.swift in Sources */, | ||
| 432 | + ); | ||
| 433 | + runOnlyForDeploymentPostprocessing = 0; | ||
| 434 | + }; | ||
| 336 | 33CC10E92044A3C60003C045 /* Sources */ = { | 435 | 33CC10E92044A3C60003C045 /* Sources */ = { |
| 337 | isa = PBXSourcesBuildPhase; | 436 | isa = PBXSourcesBuildPhase; |
| 338 | buildActionMask = 2147483647; | 437 | buildActionMask = 2147483647; |
| @@ -346,6 +445,11 @@ | @@ -346,6 +445,11 @@ | ||
| 346 | /* End PBXSourcesBuildPhase section */ | 445 | /* End PBXSourcesBuildPhase section */ |
| 347 | 446 | ||
| 348 | /* Begin PBXTargetDependency section */ | 447 | /* Begin PBXTargetDependency section */ |
| 448 | + 331C80DA294CF71000263BE5 /* PBXTargetDependency */ = { | ||
| 449 | + isa = PBXTargetDependency; | ||
| 450 | + target = 33CC10EC2044A3C60003C045 /* Runner */; | ||
| 451 | + targetProxy = 331C80D9294CF71000263BE5 /* PBXContainerItemProxy */; | ||
| 452 | + }; | ||
| 349 | 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { | 453 | 33CC11202044C79F0003C045 /* PBXTargetDependency */ = { |
| 350 | isa = PBXTargetDependency; | 454 | isa = PBXTargetDependency; |
| 351 | target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; | 455 | target = 33CC111A2044C6BA0003C045 /* Flutter Assemble */; |
| @@ -366,6 +470,51 @@ | @@ -366,6 +470,51 @@ | ||
| 366 | /* End PBXVariantGroup section */ | 470 | /* End PBXVariantGroup section */ |
| 367 | 471 | ||
| 368 | /* Begin XCBuildConfiguration section */ | 472 | /* Begin XCBuildConfiguration section */ |
| 473 | + 331C80DB294CF71000263BE5 /* Debug */ = { | ||
| 474 | + isa = XCBuildConfiguration; | ||
| 475 | + baseConfigurationReference = AA0CC45DA8C7F4A77CA80A2E /* Pods-RunnerTests.debug.xcconfig */; | ||
| 476 | + buildSettings = { | ||
| 477 | + BUNDLE_LOADER = "$(TEST_HOST)"; | ||
| 478 | + CURRENT_PROJECT_VERSION = 1; | ||
| 479 | + GENERATE_INFOPLIST_FILE = YES; | ||
| 480 | + MARKETING_VERSION = 1.0; | ||
| 481 | + PRODUCT_BUNDLE_IDENTIFIER = dev.steenbakker.mobileScannerExample.RunnerTests; | ||
| 482 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 483 | + SWIFT_VERSION = 5.0; | ||
| 484 | + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/mobile_scanner_example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/mobile_scanner_example"; | ||
| 485 | + }; | ||
| 486 | + name = Debug; | ||
| 487 | + }; | ||
| 488 | + 331C80DC294CF71000263BE5 /* Release */ = { | ||
| 489 | + isa = XCBuildConfiguration; | ||
| 490 | + baseConfigurationReference = 23E216AF8BD40EB8E52863BE /* Pods-RunnerTests.release.xcconfig */; | ||
| 491 | + buildSettings = { | ||
| 492 | + BUNDLE_LOADER = "$(TEST_HOST)"; | ||
| 493 | + CURRENT_PROJECT_VERSION = 1; | ||
| 494 | + GENERATE_INFOPLIST_FILE = YES; | ||
| 495 | + MARKETING_VERSION = 1.0; | ||
| 496 | + PRODUCT_BUNDLE_IDENTIFIER = dev.steenbakker.mobileScannerExample.RunnerTests; | ||
| 497 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 498 | + SWIFT_VERSION = 5.0; | ||
| 499 | + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/mobile_scanner_example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/mobile_scanner_example"; | ||
| 500 | + }; | ||
| 501 | + name = Release; | ||
| 502 | + }; | ||
| 503 | + 331C80DD294CF71000263BE5 /* Profile */ = { | ||
| 504 | + isa = XCBuildConfiguration; | ||
| 505 | + baseConfigurationReference = 9AB9A83BADC7F755AA147D15 /* Pods-RunnerTests.profile.xcconfig */; | ||
| 506 | + buildSettings = { | ||
| 507 | + BUNDLE_LOADER = "$(TEST_HOST)"; | ||
| 508 | + CURRENT_PROJECT_VERSION = 1; | ||
| 509 | + GENERATE_INFOPLIST_FILE = YES; | ||
| 510 | + MARKETING_VERSION = 1.0; | ||
| 511 | + PRODUCT_BUNDLE_IDENTIFIER = dev.steenbakker.mobileScannerExample.RunnerTests; | ||
| 512 | + PRODUCT_NAME = "$(TARGET_NAME)"; | ||
| 513 | + SWIFT_VERSION = 5.0; | ||
| 514 | + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/mobile_scanner_example.app/$(BUNDLE_EXECUTABLE_FOLDER_PATH)/mobile_scanner_example"; | ||
| 515 | + }; | ||
| 516 | + name = Profile; | ||
| 517 | + }; | ||
| 369 | 338D0CE9231458BD00FA5F75 /* Profile */ = { | 518 | 338D0CE9231458BD00FA5F75 /* Profile */ = { |
| 370 | isa = XCBuildConfiguration; | 519 | isa = XCBuildConfiguration; |
| 371 | baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; | 520 | baseConfigurationReference = 7AFA3C8E1D35360C0083082E /* Release.xcconfig */; |
| @@ -599,6 +748,16 @@ | @@ -599,6 +748,16 @@ | ||
| 599 | /* End XCBuildConfiguration section */ | 748 | /* End XCBuildConfiguration section */ |
| 600 | 749 | ||
| 601 | /* Begin XCConfigurationList section */ | 750 | /* Begin XCConfigurationList section */ |
| 751 | + 331C80DE294CF71000263BE5 /* Build configuration list for PBXNativeTarget "RunnerTests" */ = { | ||
| 752 | + isa = XCConfigurationList; | ||
| 753 | + buildConfigurations = ( | ||
| 754 | + 331C80DB294CF71000263BE5 /* Debug */, | ||
| 755 | + 331C80DC294CF71000263BE5 /* Release */, | ||
| 756 | + 331C80DD294CF71000263BE5 /* Profile */, | ||
| 757 | + ); | ||
| 758 | + defaultConfigurationIsVisible = 0; | ||
| 759 | + defaultConfigurationName = Release; | ||
| 760 | + }; | ||
| 602 | 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { | 761 | 33CC10E82044A3C60003C045 /* Build configuration list for PBXProject "Runner" */ = { |
| 603 | isa = XCConfigurationList; | 762 | isa = XCConfigurationList; |
| 604 | buildConfigurations = ( | 763 | buildConfigurations = ( |
| @@ -37,6 +37,17 @@ | @@ -37,6 +37,17 @@ | ||
| 37 | </BuildableReference> | 37 | </BuildableReference> |
| 38 | </MacroExpansion> | 38 | </MacroExpansion> |
| 39 | <Testables> | 39 | <Testables> |
| 40 | + <TestableReference | ||
| 41 | + skipped = "NO" | ||
| 42 | + parallelizable = "YES"> | ||
| 43 | + <BuildableReference | ||
| 44 | + BuildableIdentifier = "primary" | ||
| 45 | + BlueprintIdentifier = "331C80D4294CF70F00263BE5" | ||
| 46 | + BuildableName = "RunnerTests.xctest" | ||
| 47 | + BlueprintName = "RunnerTests" | ||
| 48 | + ReferencedContainer = "container:Runner.xcodeproj"> | ||
| 49 | + </BuildableReference> | ||
| 50 | + </TestableReference> | ||
| 40 | </Testables> | 51 | </Testables> |
| 41 | </TestAction> | 52 | </TestAction> |
| 42 | <LaunchAction | 53 | <LaunchAction |
| @@ -11,4 +11,4 @@ PRODUCT_NAME = mobile_scanner_example | @@ -11,4 +11,4 @@ PRODUCT_NAME = mobile_scanner_example | ||
| 11 | PRODUCT_BUNDLE_IDENTIFIER = dev.steenbakker.mobileScannerExample | 11 | PRODUCT_BUNDLE_IDENTIFIER = dev.steenbakker.mobileScannerExample |
| 12 | 12 | ||
| 13 | // The copyright displayed in application information | 13 | // The copyright displayed in application information |
| 14 | -PRODUCT_COPYRIGHT = Copyright © 2022 dev.steenbakker. All rights reserved. | 14 | +PRODUCT_COPYRIGHT = Copyright © 2023 dev.steenbakker. All rights reserved. |
| @@ -3,7 +3,7 @@ import FlutterMacOS | @@ -3,7 +3,7 @@ import FlutterMacOS | ||
| 3 | 3 | ||
| 4 | class MainFlutterWindow: NSWindow { | 4 | class MainFlutterWindow: NSWindow { |
| 5 | override func awakeFromNib() { | 5 | override func awakeFromNib() { |
| 6 | - let flutterViewController = FlutterViewController.init() | 6 | + let flutterViewController = FlutterViewController() |
| 7 | let windowFrame = self.frame | 7 | let windowFrame = self.frame |
| 8 | self.contentViewController = flutterViewController | 8 | self.contentViewController = flutterViewController |
| 9 | self.setFrame(windowFrame, display: true) | 9 | self.setFrame(windowFrame, display: true) |
example/macos/RunnerTests/RunnerTests.swift
0 → 100644
| 1 | +import FlutterMacOS | ||
| 2 | +import Cocoa | ||
| 3 | +import XCTest | ||
| 4 | + | ||
| 5 | +@testable import mobile_scanner | ||
| 6 | + | ||
| 7 | +// This demonstrates a simple unit test of the Swift portion of this plugin's implementation. | ||
| 8 | +// | ||
| 9 | +// See https://developer.apple.com/documentation/xctest for more information about using XCTest. | ||
| 10 | + | ||
| 11 | +class RunnerTests: XCTestCase { | ||
| 12 | + | ||
| 13 | + // TODO: this test was left as-is from the template, but it obviuosly fails for now. | ||
| 14 | + // Add new tests later. | ||
| 15 | + /* | ||
| 16 | + func testGetPlatformVersion() { | ||
| 17 | + let plugin = MobileScannerPlugin() | ||
| 18 | + | ||
| 19 | + let call = FlutterMethodCall(methodName: "getPlatformVersion", arguments: []) | ||
| 20 | + | ||
| 21 | + let resultExpectation = expectation(description: "result block must be called.") | ||
| 22 | + plugin.handle(call) { result in | ||
| 23 | + XCTAssertEqual(result as! String, | ||
| 24 | + "macOS " + ProcessInfo.processInfo.operatingSystemVersionString) | ||
| 25 | + resultExpectation.fulfill() | ||
| 26 | + } | ||
| 27 | + waitForExpectations(timeout: 1) | ||
| 28 | + }*/ | ||
| 29 | + | ||
| 30 | +} |
-
Please register or login to post a comment