IDPROD-2773 part 2: Add tests to StripeCameraCore (#502)

Add tests to StripeCameraCore
This commit is contained in:
Mel 2021-11-16 15:38:17 -08:00 committed by GitHub
parent 14608c01f7
commit 07343d31f0
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
7 changed files with 209 additions and 9 deletions

View File

@ -78,7 +78,7 @@ jobs:
steps:
- macos/switch-ruby:
version: "system" # Xcode's ipatool depends on a specific version of ruby, without this App Store archiving will fail
version: "system" # Xcode's ipatool depends on a specific version of ruby, without this App Store archiving will fail
- run: git clone "$CIRCLE_REPOSITORY_URL" --branch "$CIRCLE_BRANCH" .
- run: "sudo gem install bundler"
- run: "bundle install"
@ -94,6 +94,14 @@ jobs:
- run: "bundle exec fastlane stripeios_tests"
- archive_logs
stripecameracore-tests:
executor: mac-executor
steps:
- prep_all
- run: "bundle exec fastlane stripecameracore_tests"
- archive_logs
stripecore-tests:
executor: mac-executor
@ -268,6 +276,7 @@ workflows:
- size-report
- check-docs
- stripeios-tests
- stripecameracore-tests
- stripecore-tests
- stripeidentity-tests
- stripecardscan-tests

View File

@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 50;
objectVersion = 52;
objects = {
/* Begin PBXBuildFile section */
@ -21,6 +21,10 @@
E63B67262742EF2400CFEDBA /* Project-Debug.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = E63B671C2742EF2400CFEDBA /* Project-Debug.xcconfig */; };
E63B67272742EF2400CFEDBA /* StripeiOS-Release.xcconfig in Resources */ = {isa = PBXBuildFile; fileRef = E63B671D2742EF2400CFEDBA /* StripeiOS-Release.xcconfig */; };
E63B672A2742F2AA00CFEDBA /* Placeholder.swift in Sources */ = {isa = PBXBuildFile; fileRef = E63B67292742F2AA00CFEDBA /* Placeholder.swift */; };
E63B673427433CEA00CFEDBA /* StripeCameraCoreTestUtils.h in Headers */ = {isa = PBXBuildFile; fileRef = E63B673227433CEA00CFEDBA /* StripeCameraCoreTestUtils.h */; settings = {ATTRIBUTES = (Public, ); }; };
E63B673927433D1800CFEDBA /* StripeCameraCoreTestUtils.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E63B673027433CEA00CFEDBA /* StripeCameraCoreTestUtils.framework */; };
E63B673A27433D6E00CFEDBA /* StripeCameraCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = E63B66F92742EEBF00CFEDBA /* StripeCameraCore.framework */; };
E63B673C27433E4D00CFEDBA /* FBSnapshotTestCase.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = E63B673B27433E4D00CFEDBA /* FBSnapshotTestCase.xcframework */; };
/* End PBXBuildFile section */
/* Begin PBXContainerItemProxy section */
@ -51,6 +55,10 @@
E63B671C2742EF2400CFEDBA /* Project-Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "Project-Debug.xcconfig"; sourceTree = "<group>"; };
E63B671D2742EF2400CFEDBA /* StripeiOS-Release.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; path = "StripeiOS-Release.xcconfig"; sourceTree = "<group>"; };
E63B67292742F2AA00CFEDBA /* Placeholder.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Placeholder.swift; sourceTree = "<group>"; };
E63B673027433CEA00CFEDBA /* StripeCameraCoreTestUtils.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = StripeCameraCoreTestUtils.framework; sourceTree = BUILT_PRODUCTS_DIR; };
E63B673227433CEA00CFEDBA /* StripeCameraCoreTestUtils.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = StripeCameraCoreTestUtils.h; sourceTree = "<group>"; };
E63B673327433CEA00CFEDBA /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
E63B673B27433E4D00CFEDBA /* FBSnapshotTestCase.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = FBSnapshotTestCase.xcframework; path = ../Carthage/Build/FBSnapshotTestCase.xcframework; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@ -65,10 +73,20 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
E63B673C27433E4D00CFEDBA /* FBSnapshotTestCase.xcframework in Frameworks */,
E63B673927433D1800CFEDBA /* StripeCameraCoreTestUtils.framework in Frameworks */,
E63B67032742EEBF00CFEDBA /* StripeCameraCore.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
E63B672D27433CEA00CFEDBA /* Frameworks */ = {
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
E63B673A27433D6E00CFEDBA /* StripeCameraCore.framework in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXFrameworksBuildPhase section */
/* Begin PBXGroup section */
@ -78,7 +96,9 @@
E63B67132742EF2400CFEDBA /* BuildConfigurations */,
E63B66FB2742EEBF00CFEDBA /* StripeCameraCore */,
E63B67062742EEBF00CFEDBA /* StripeCameraCoreTests */,
E63B673127433CEA00CFEDBA /* StripeCameraCoreTestUtils */,
E63B66FA2742EEBF00CFEDBA /* Products */,
E63B673827433D1800CFEDBA /* Frameworks */,
);
sourceTree = "<group>";
};
@ -87,6 +107,7 @@
children = (
E63B66F92742EEBF00CFEDBA /* StripeCameraCore.framework */,
E63B67022742EEBF00CFEDBA /* StripeCameraCoreTests.xctest */,
E63B673027433CEA00CFEDBA /* StripeCameraCoreTestUtils.framework */,
);
name = Products;
sourceTree = "<group>";
@ -136,6 +157,23 @@
path = Source;
sourceTree = "<group>";
};
E63B673127433CEA00CFEDBA /* StripeCameraCoreTestUtils */ = {
isa = PBXGroup;
children = (
E63B673227433CEA00CFEDBA /* StripeCameraCoreTestUtils.h */,
E63B673327433CEA00CFEDBA /* Info.plist */,
);
path = StripeCameraCoreTestUtils;
sourceTree = "<group>";
};
E63B673827433D1800CFEDBA /* Frameworks */ = {
isa = PBXGroup;
children = (
E63B673B27433E4D00CFEDBA /* FBSnapshotTestCase.xcframework */,
);
name = Frameworks;
sourceTree = "<group>";
};
/* End PBXGroup section */
/* Begin PBXHeadersBuildPhase section */
@ -147,6 +185,14 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
E63B672B27433CEA00CFEDBA /* Headers */ = {
isa = PBXHeadersBuildPhase;
buildActionMask = 2147483647;
files = (
E63B673427433CEA00CFEDBA /* StripeCameraCoreTestUtils.h in Headers */,
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXHeadersBuildPhase section */
/* Begin PBXNativeTarget section */
@ -186,6 +232,24 @@
productReference = E63B67022742EEBF00CFEDBA /* StripeCameraCoreTests.xctest */;
productType = "com.apple.product-type.bundle.unit-test";
};
E63B672F27433CEA00CFEDBA /* StripeCameraCoreTestUtils */ = {
isa = PBXNativeTarget;
buildConfigurationList = E63B673727433CEA00CFEDBA /* Build configuration list for PBXNativeTarget "StripeCameraCoreTestUtils" */;
buildPhases = (
E63B672B27433CEA00CFEDBA /* Headers */,
E63B672C27433CEA00CFEDBA /* Sources */,
E63B672D27433CEA00CFEDBA /* Frameworks */,
E63B672E27433CEA00CFEDBA /* Resources */,
);
buildRules = (
);
dependencies = (
);
name = StripeCameraCoreTestUtils;
productName = StripeCameraCoreTestUtils;
productReference = E63B673027433CEA00CFEDBA /* StripeCameraCoreTestUtils.framework */;
productType = "com.apple.product-type.framework";
};
/* End PBXNativeTarget section */
/* Begin PBXProject section */
@ -202,6 +266,9 @@
E63B67012742EEBF00CFEDBA = {
CreatedOnToolsVersion = 12.5;
};
E63B672F27433CEA00CFEDBA = {
CreatedOnToolsVersion = 12.5;
};
};
};
buildConfigurationList = E63B66F32742EEBF00CFEDBA /* Build configuration list for PBXProject "StripeCameraCore" */;
@ -219,6 +286,7 @@
targets = (
E63B66F82742EEBF00CFEDBA /* StripeCameraCore */,
E63B67012742EEBF00CFEDBA /* StripeCameraCoreTests */,
E63B672F27433CEA00CFEDBA /* StripeCameraCoreTestUtils */,
);
};
/* End PBXProject section */
@ -248,6 +316,13 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
E63B672E27433CEA00CFEDBA /* Resources */ = {
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXResourcesBuildPhase section */
/* Begin PBXSourcesBuildPhase section */
@ -267,6 +342,13 @@
);
runOnlyForDeploymentPostprocessing = 0;
};
E63B672C27433CEA00CFEDBA /* Sources */ = {
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
);
runOnlyForDeploymentPostprocessing = 0;
};
/* End PBXSourcesBuildPhase section */
/* Begin PBXTargetDependency section */
@ -316,9 +398,7 @@
isa = XCBuildConfiguration;
baseConfigurationReference = E63B67152742EF2400CFEDBA /* StripeiOS-Debug.xcconfig */;
buildSettings = {
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_STYLE = Automatic;
DEFINES_MODULE = YES;
DEVELOPMENT_TEAM = Y28TH9SHX7;
INFOPLIST_FILE = StripeCameraCore/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
@ -337,9 +417,7 @@
isa = XCBuildConfiguration;
baseConfigurationReference = E63B671D2742EF2400CFEDBA /* StripeiOS-Release.xcconfig */;
buildSettings = {
CLANG_ENABLE_MODULES = YES;
CODE_SIGN_STYLE = Automatic;
DEFINES_MODULE = YES;
DEVELOPMENT_TEAM = Y28TH9SHX7;
INFOPLIST_FILE = StripeCameraCore/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
@ -357,7 +435,6 @@
isa = XCBuildConfiguration;
baseConfigurationReference = E63B67142742EF2400CFEDBA /* StripeiOS Tests-Debug.xcconfig */;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = Y28TH9SHX7;
INFOPLIST_FILE = StripeCameraCoreTests/Info.plist;
@ -376,7 +453,6 @@
isa = XCBuildConfiguration;
baseConfigurationReference = E63B67172742EF2400CFEDBA /* StripeiOS Tests-Release.xcconfig */;
buildSettings = {
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = Y28TH9SHX7;
INFOPLIST_FILE = StripeCameraCoreTests/Info.plist;
@ -391,6 +467,42 @@
};
name = Release;
};
E63B673527433CEA00CFEDBA /* Debug */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = E63B67152742EF2400CFEDBA /* StripeiOS-Debug.xcconfig */;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = Y28TH9SHX7;
INFOPLIST_FILE = StripeCameraCoreTestUtils/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.stripe.StripeCameraCoreTestUtils;
PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
SWIFT_VERSION = 5.0;
};
name = Debug;
};
E63B673627433CEA00CFEDBA /* Release */ = {
isa = XCBuildConfiguration;
baseConfigurationReference = E63B671D2742EF2400CFEDBA /* StripeiOS-Release.xcconfig */;
buildSettings = {
CODE_SIGN_STYLE = Automatic;
DEVELOPMENT_TEAM = Y28TH9SHX7;
INFOPLIST_FILE = StripeCameraCoreTestUtils/Info.plist;
LD_RUNPATH_SEARCH_PATHS = (
"$(inherited)",
"@executable_path/Frameworks",
"@loader_path/Frameworks",
);
PRODUCT_BUNDLE_IDENTIFIER = com.stripe.StripeCameraCoreTestUtils;
PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
SWIFT_VERSION = 5.0;
};
name = Release;
};
/* End XCBuildConfiguration section */
/* Begin XCConfigurationList section */
@ -421,6 +533,15 @@
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
E63B673727433CEA00CFEDBA /* Build configuration list for PBXNativeTarget "StripeCameraCoreTestUtils" */ = {
isa = XCConfigurationList;
buildConfigurations = (
E63B673527433CEA00CFEDBA /* Debug */,
E63B673627433CEA00CFEDBA /* Release */,
);
defaultConfigurationIsVisible = 0;
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
};
rootObject = E63B66F02742EEBF00CFEDBA /* Project object */;

View File

@ -26,7 +26,23 @@
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES">
shouldUseLaunchSchemeArgsEnv = "NO">
<MacroExpansion>
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "E63B66F82742EEBF00CFEDBA"
BuildableName = "StripeCameraCore.framework"
BlueprintName = "StripeCameraCore"
ReferencedContainer = "container:StripeCameraCore.xcodeproj">
</BuildableReference>
</MacroExpansion>
<EnvironmentVariables>
<EnvironmentVariable
key = "FB_REFERENCE_IMAGE_DIR"
value = "$(SRCROOT)/../Tests/ReferenceImages"
isEnabled = "YES">
</EnvironmentVariable>
</EnvironmentVariables>
<Testables>
<TestableReference
skipped = "NO">

View File

@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>CFBundleDevelopmentRegion</key>
<string>$(DEVELOPMENT_LANGUAGE)</string>
<key>CFBundleExecutable</key>
<string>$(EXECUTABLE_NAME)</string>
<key>CFBundleIdentifier</key>
<string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
<key>CFBundleInfoDictionaryVersion</key>
<string>6.0</string>
<key>CFBundleName</key>
<string>$(PRODUCT_NAME)</string>
<key>CFBundlePackageType</key>
<string>$(PRODUCT_BUNDLE_PACKAGE_TYPE)</string>
<key>CFBundleShortVersionString</key>
<string>1.0</string>
<key>CFBundleVersion</key>
<string>$(CURRENT_PROJECT_VERSION)</string>
</dict>
</plist>

View File

@ -0,0 +1,18 @@
//
// StripeCameraCoreTestUtils.h
// StripeCameraCoreTestUtils
//
// Created by Mel Ludowise on 11/15/21.
//
#import <Foundation/Foundation.h>
//! Project version number for StripeCameraCoreTestUtils.
FOUNDATION_EXPORT double StripeCameraCoreTestUtilsVersionNumber;
//! Project version string for StripeCameraCoreTestUtils.
FOUNDATION_EXPORT const unsigned char StripeCameraCoreTestUtilsVersionString[];
// In this header, you should import all the public headers of your framework using statements like #import <StripeCameraCoreTestUtils/PublicHeader.h>

View File

@ -80,6 +80,7 @@ platform :ios do
sh("rm -rf build-ci-tests")
sh("./ci_scripts/test.rb --build-only --scheme StripeCore")
sh("./ci_scripts/test.rb --build-only --scheme StripeUICore")
sh("./ci_scripts/test.rb --build-only --scheme StripeCameraCore")
sh("./ci_scripts/test.rb --build-only --scheme StripeApplePay")
sh("./ci_scripts/test.rb --build-only --scheme StripeiOS")
sh("./ci_scripts/test.rb --build-only --scheme StripeIdentity")
@ -97,6 +98,12 @@ platform :ios do
end
end
lane :stripecameracore_tests do
Dir.chdir("..") do
sh("./ci_scripts/test.rb --scheme StripeCameraCore --device '#{DEFAULT_TEST_DEVICE}' --version #{DEFAULT_TEST_VERSION}")
end
end
lane :stripecore_tests do
Dir.chdir("..") do
sh("./ci_scripts/test.rb --scheme StripeCore --device '#{DEFAULT_TEST_DEVICE}' --version #{DEFAULT_TEST_VERSION}")
@ -155,6 +162,7 @@ platform :ios do
lane :legacy_tests_11 do
Dir.chdir("..") do
sh("./ci_scripts/test.rb --scheme 'StripeiOS' --device 'iPhone 6' --version 11.4 --skip-snapshot-tests")
sh("./ci_scripts/test.rb --scheme 'StripeCameraCore' --device 'iPhone 6' --version 11.4 --skip-snapshot-tests")
sh("./ci_scripts/test.rb --scheme 'StripeCore' --device 'iPhone 6' --version 11.4 --skip-snapshot-tests")
sh("./ci_scripts/test.rb --scheme 'StripeUICore' --device 'iPhone 6' --version 11.4 --skip-snapshot-tests")
sh("./ci_scripts/test.rb --scheme 'StripeApplePay' --device 'iPhone 6' --version 11.4 --skip-snapshot-tests")
@ -165,6 +173,7 @@ platform :ios do
lane :legacy_tests_12 do
Dir.chdir("..") do
sh("./ci_scripts/test.rb --scheme 'StripeiOS' --device 'iPhone 6' --version 12.4 --skip-snapshot-tests")
sh("./ci_scripts/test.rb --scheme 'StripeCameraCore' --device 'iPhone 6' --version 12.4 --skip-snapshot-tests")
sh("./ci_scripts/test.rb --scheme 'StripeCore' --device 'iPhone 6' --version 12.4 --skip-snapshot-tests")
sh("./ci_scripts/test.rb --scheme 'StripeUICore' --device 'iPhone 6' --version 12.4 --skip-snapshot-tests")
sh("./ci_scripts/test.rb --scheme 'StripeApplePay' --device 'iPhone 6' --version 12.4 --skip-snapshot-tests")

View File

@ -61,6 +61,11 @@ fastlane ios ci_builds
fastlane ios stripeios_tests
```
### ios stripecameracore_tests
```
fastlane ios stripecameracore_tests
```
### ios stripecore_tests
```
fastlane ios stripecore_tests