Skip to content

Commit cabe142

Browse files
authored
Merge branch 'master' into evan/MOB-8113-add-placement-id-list-to-sync-messages
2 parents 152b30a + 31f8629 commit cabe142

File tree

21 files changed

+614
-280
lines changed

21 files changed

+614
-280
lines changed

.github/workflows/build-and-test.yml

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on: pull_request
44

55
jobs:
66
run-tests-job:
7-
runs-on: macos-14
7+
runs-on: macos-15
88

99
steps:
1010
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -18,10 +18,13 @@ jobs:
1818
gem install erb
1919
gem install xcpretty
2020
21+
- name: Print available simulators
22+
run: xcrun simctl list devices | cat
23+
2124
- name: Build and test
2225
run: |
23-
xcodebuild test -project swift-sdk.xcodeproj -scheme swift-sdk -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 16 Pro' -enableCodeCoverage YES CODE_SIGNING_REQUIRED=NO | xcpretty && exit ${PIPESTATUS[0]}
24-
26+
xcodebuild test -project swift-sdk.xcodeproj -scheme swift-sdk -sdk iphonesimulator -destination 'platform=iOS Simulator,name=iPhone 16 Pro,OS=18.2' -enableCodeCoverage YES -resultBundlePath TestResults.xcresult CODE_SIGNING_REQUIRED=NO | xcpretty && exit ${PIPESTATUS[0]}
27+
2528
- name: CocoaPods lint
2629
run: pod lib lint --allow-warnings
2730

.github/workflows/e2e.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on: pull_request
44

55
jobs:
66
run-e2e-job:
7-
runs-on: macos-14
7+
runs-on: macos-15
88

99
steps:
1010
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # v4.1.1
@@ -23,3 +23,5 @@ jobs:
2323
in_app_template_id: ${{secrets.E2E_IN_APP_TEMPLATE_ID}}
2424
run: |
2525
./tests/endpoint-tests/scripts/run_test.sh
26+
27+

sample-apps/swift-sample-app/swift-sample-app.xcodeproj/project.pbxproj

Lines changed: 100 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -495,7 +495,7 @@
495495
"$(inherited)",
496496
"@executable_path/Frameworks",
497497
);
498-
PRODUCT_BUNDLE_IDENTIFIER = "com.example.iterable.swift-sample-app";
498+
PRODUCT_BUNDLE_IDENTIFIER = "*";
499499
PRODUCT_NAME = "$(TARGET_NAME)";
500500
SWIFT_VERSION = 5.0;
501501
TARGETED_DEVICE_FAMILY = "1,2";
@@ -514,7 +514,7 @@
514514
"$(inherited)",
515515
"@executable_path/Frameworks",
516516
);
517-
PRODUCT_BUNDLE_IDENTIFIER = "com.example.iterable.swift-sample-app";
517+
PRODUCT_BUNDLE_IDENTIFIER = "*";
518518
PRODUCT_NAME = "$(TARGET_NAME)";
519519
SWIFT_VERSION = 5.0;
520520
TARGETED_DEVICE_FAMILY = "1,2";
@@ -532,7 +532,7 @@
532532
"@executable_path/Frameworks",
533533
"@executable_path/../../Frameworks",
534534
);
535-
PRODUCT_BUNDLE_IDENTIFIER = "com.example.iterable.swift-sample-app.swift-sample-app-notification-extension";
535+
PRODUCT_BUNDLE_IDENTIFIER = "*";
536536
PRODUCT_NAME = "$(TARGET_NAME)";
537537
SKIP_INSTALL = YES;
538538
SWIFT_VERSION = 5.0;
@@ -551,14 +551,107 @@
551551
"@executable_path/Frameworks",
552552
"@executable_path/../../Frameworks",
553553
);
554-
PRODUCT_BUNDLE_IDENTIFIER = "com.example.iterable.swift-sample-app.swift-sample-app-notification-extension";
554+
PRODUCT_BUNDLE_IDENTIFIER = "*";
555555
PRODUCT_NAME = "$(TARGET_NAME)";
556556
SKIP_INSTALL = YES;
557557
SWIFT_VERSION = 5.0;
558558
TARGETED_DEVICE_FAMILY = "1,2";
559559
};
560560
name = Release;
561561
};
562+
AC123456789ABCDEF /* Internal */ = {
563+
isa = XCBuildConfiguration;
564+
buildSettings = {
565+
ALWAYS_SEARCH_USER_PATHS = NO;
566+
CLANG_ANALYZER_NONNULL = YES;
567+
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
568+
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
569+
CLANG_CXX_LIBRARY = "libc++";
570+
CLANG_ENABLE_MODULES = YES;
571+
CLANG_ENABLE_OBJC_ARC = YES;
572+
CLANG_ENABLE_OBJC_WEAK = YES;
573+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
574+
CLANG_WARN_BOOL_CONVERSION = YES;
575+
CLANG_WARN_COMMA = YES;
576+
CLANG_WARN_CONSTANT_CONVERSION = YES;
577+
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
578+
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
579+
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
580+
CLANG_WARN_EMPTY_BODY = YES;
581+
CLANG_WARN_ENUM_CONVERSION = YES;
582+
CLANG_WARN_INFINITE_RECURSION = YES;
583+
CLANG_WARN_INT_CONVERSION = YES;
584+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
585+
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
586+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
587+
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
588+
CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
589+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
590+
CLANG_WARN_STRICT_PROTOTYPES = YES;
591+
CLANG_WARN_SUSPICIOUS_MOVE = YES;
592+
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
593+
CLANG_WARN_UNREACHABLE_CODE = YES;
594+
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
595+
CODE_SIGN_IDENTITY = "iPhone Developer";
596+
COPY_PHASE_STRIP = NO;
597+
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
598+
ENABLE_NS_ASSERTIONS = NO;
599+
ENABLE_STRICT_OBJC_MSGSEND = YES;
600+
GCC_C_LANGUAGE_STANDARD = gnu11;
601+
GCC_NO_COMMON_BLOCKS = YES;
602+
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
603+
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
604+
GCC_WARN_UNDECLARED_SELECTOR = YES;
605+
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
606+
GCC_WARN_UNUSED_FUNCTION = YES;
607+
GCC_WARN_UNUSED_VARIABLE = YES;
608+
IPHONEOS_DEPLOYMENT_TARGET = 12.0;
609+
MTL_ENABLE_DEBUG_INFO = NO;
610+
SDKROOT = iphoneos;
611+
SWIFT_COMPILATION_MODE = wholemodule;
612+
SWIFT_OPTIMIZATION_LEVEL = "-O";
613+
VALIDATE_PRODUCT = YES;
614+
};
615+
name = Internal;
616+
};
617+
AC123456789ABCDE0 /* Internal */ = {
618+
isa = XCBuildConfiguration;
619+
buildSettings = {
620+
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
621+
CODE_SIGN_ENTITLEMENTS = "swift-sample-app/swift-sample-app.entitlements";
622+
CODE_SIGN_STYLE = Automatic;
623+
DEVELOPMENT_TEAM = "BP98Z28R86";
624+
INFOPLIST_FILE = "swift-sample-app/Info.plist";
625+
LD_RUNPATH_SEARCH_PATHS = (
626+
"$(inherited)",
627+
"@executable_path/Frameworks",
628+
);
629+
PRODUCT_BUNDLE_IDENTIFIER = "com.iterable.swift-sample-app";
630+
PRODUCT_NAME = "$(TARGET_NAME)";
631+
SWIFT_VERSION = 5.0;
632+
TARGETED_DEVICE_FAMILY = "1,2";
633+
};
634+
name = Internal;
635+
};
636+
AC123456789ABCDE1 /* Internal */ = {
637+
isa = XCBuildConfiguration;
638+
buildSettings = {
639+
CODE_SIGN_STYLE = Automatic;
640+
DEVELOPMENT_TEAM = "BP98Z28R86";
641+
INFOPLIST_FILE = "swift-sample-app-notification-extension/Info.plist";
642+
LD_RUNPATH_SEARCH_PATHS = (
643+
"$(inherited)",
644+
"@executable_path/Frameworks",
645+
"@executable_path/../../Frameworks",
646+
);
647+
PRODUCT_BUNDLE_IDENTIFIER = "com.iterable.swift-sample-app.notification-extension";
648+
PRODUCT_NAME = "$(TARGET_NAME)";
649+
SKIP_INSTALL = YES;
650+
SWIFT_VERSION = 5.0;
651+
TARGETED_DEVICE_FAMILY = "1,2";
652+
};
653+
name = Internal;
654+
};
562655
/* End XCBuildConfiguration section */
563656

564657
/* Begin XCConfigurationList section */
@@ -567,6 +660,7 @@
567660
buildConfigurations = (
568661
ACA3A14520E2F6B100FEF74F /* Debug */,
569662
ACA3A14620E2F6B100FEF74F /* Release */,
663+
AC123456789ABCDEF /* Internal */,
570664
);
571665
defaultConfigurationIsVisible = 0;
572666
defaultConfigurationName = Release;
@@ -576,6 +670,7 @@
576670
buildConfigurations = (
577671
ACA3A14820E2F6B100FEF74F /* Debug */,
578672
ACA3A14920E2F6B100FEF74F /* Release */,
673+
AC123456789ABCDE0 /* Internal */,
579674
);
580675
defaultConfigurationIsVisible = 0;
581676
defaultConfigurationName = Release;
@@ -585,6 +680,7 @@
585680
buildConfigurations = (
586681
ACA3A15720E2F83E00FEF74F /* Debug */,
587682
ACA3A15820E2F83E00FEF74F /* Release */,
683+
AC123456789ABCDE1 /* Internal */,
588684
);
589685
defaultConfigurationIsVisible = 0;
590686
defaultConfigurationName = Release;
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<Scheme
3+
LastUpgradeVersion = "1620"
4+
version = "1.7">
5+
<BuildAction
6+
parallelizeBuildables = "YES"
7+
buildImplicitDependencies = "YES"
8+
buildArchitectures = "Automatic">
9+
<BuildActionEntries>
10+
<BuildActionEntry
11+
buildForTesting = "YES"
12+
buildForRunning = "YES"
13+
buildForProfiling = "YES"
14+
buildForArchiving = "YES"
15+
buildForAnalyzing = "YES">
16+
<BuildableReference
17+
BuildableIdentifier = "primary"
18+
BlueprintIdentifier = "ACA3A13420E2F6AF00FEF74F"
19+
BuildableName = "swift-sample-app.app"
20+
BlueprintName = "swift-sample-app"
21+
ReferencedContainer = "container:swift-sample-app.xcodeproj">
22+
</BuildableReference>
23+
</BuildActionEntry>
24+
</BuildActionEntries>
25+
</BuildAction>
26+
<TestAction
27+
buildConfiguration = "Internal"
28+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
29+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
30+
shouldUseLaunchSchemeArgsEnv = "YES"
31+
shouldAutocreateTestPlan = "YES">
32+
</TestAction>
33+
<LaunchAction
34+
buildConfiguration = "Internal"
35+
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
36+
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
37+
launchStyle = "0"
38+
useCustomWorkingDirectory = "NO"
39+
ignoresPersistentStateOnLaunch = "NO"
40+
debugDocumentVersioning = "YES"
41+
debugServiceExtension = "internal"
42+
allowLocationSimulation = "YES">
43+
<BuildableProductRunnable
44+
runnableDebuggingMode = "0">
45+
<BuildableReference
46+
BuildableIdentifier = "primary"
47+
BlueprintIdentifier = "ACA3A13420E2F6AF00FEF74F"
48+
BuildableName = "swift-sample-app.app"
49+
BlueprintName = "swift-sample-app"
50+
ReferencedContainer = "container:swift-sample-app.xcodeproj">
51+
</BuildableReference>
52+
</BuildableProductRunnable>
53+
</LaunchAction>
54+
<ProfileAction
55+
buildConfiguration = "Internal"
56+
shouldUseLaunchSchemeArgsEnv = "YES"
57+
savedToolIdentifier = ""
58+
useCustomWorkingDirectory = "NO"
59+
debugDocumentVersioning = "YES">
60+
<BuildableProductRunnable
61+
runnableDebuggingMode = "0">
62+
<BuildableReference
63+
BuildableIdentifier = "primary"
64+
BlueprintIdentifier = "ACA3A13420E2F6AF00FEF74F"
65+
BuildableName = "swift-sample-app.app"
66+
BlueprintName = "swift-sample-app"
67+
ReferencedContainer = "container:swift-sample-app.xcodeproj">
68+
</BuildableReference>
69+
</BuildableProductRunnable>
70+
</ProfileAction>
71+
<AnalyzeAction
72+
buildConfiguration = "Internal">
73+
</AnalyzeAction>
74+
<ArchiveAction
75+
buildConfiguration = "Internal"
76+
revealArchiveInOrganizer = "YES">
77+
</ArchiveAction>
78+
</Scheme>

swift-sdk.xcodeproj/project.pbxproj

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -710,6 +710,8 @@
710710
8AAA8C832D074C2000DF8220 /* RequestProcessorUtil.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RequestProcessorUtil.swift; sourceTree = "<group>"; };
711711
8AAA8C842D074C2000DF8220 /* RequestSender.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RequestSender.swift; sourceTree = "<group>"; };
712712
8AB8D7D12D3805A900DECFE5 /* IterableAPIMobileFrameworkDetector.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = IterableAPIMobileFrameworkDetector.swift; sourceTree = "<group>"; };
713+
8AC534392D760B6C00F84F44 /* swift-sdk.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = "swift-sdk.xctestplan"; sourceTree = "<group>"; };
714+
8AC5343A2D760BD400F84F44 /* endpoint-tests.xctestplan */ = {isa = PBXFileReference; lastKnownFileType = text; path = "endpoint-tests.xctestplan"; sourceTree = "<group>"; };
713715
9FF05EAB2AFEA5FA005311F7 /* MockAuthManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockAuthManager.swift; sourceTree = "<group>"; };
714716
AC02CAA5234E50B5006617E0 /* RegistrationTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RegistrationTests.swift; sourceTree = "<group>"; };
715717
AC05644A26387B54001FB810 /* MockPersistence.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MockPersistence.swift; sourceTree = "<group>"; };
@@ -1538,6 +1540,8 @@
15381540
ACFCA72920EB02DB00BFB277 /* tests */ = {
15391541
isa = PBXGroup;
15401542
children = (
1543+
8AC534392D760B6C00F84F44 /* swift-sdk.xctestplan */,
1544+
8AC5343A2D760BD400F84F44 /* endpoint-tests.xctestplan */,
15411545
AC995F932166EC310099A184 /* common */,
15421546
AC28480824AA44C600C1FC7F /* endpoint-tests */,
15431547
ACFBEA15262DC68C000935DD /* hosting-apps */,

swift-sdk.xcodeproj/xcshareddata/xcschemes/endpoint-tests.xcscheme

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
33
LastUpgradeVersion = "1420"
4-
version = "1.3">
4+
version = "1.7">
55
<BuildAction
66
parallelizeBuildables = "YES"
77
buildImplicitDependencies = "YES">
@@ -11,6 +11,12 @@
1111
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
1212
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
1313
shouldUseLaunchSchemeArgsEnv = "YES">
14+
<TestPlans>
15+
<TestPlanReference
16+
reference = "container:tests/endpoint-tests.xctestplan"
17+
default = "YES">
18+
</TestPlanReference>
19+
</TestPlans>
1420
<Testables>
1521
<TestableReference
1622
skipped = "NO">
@@ -51,15 +57,6 @@
5157
savedToolIdentifier = ""
5258
useCustomWorkingDirectory = "NO"
5359
debugDocumentVersioning = "YES">
54-
<MacroExpansion>
55-
<BuildableReference
56-
BuildableIdentifier = "primary"
57-
BlueprintIdentifier = "ACF560D220E443BF000AAC23"
58-
BuildableName = "host-app.app"
59-
BlueprintName = "host-app"
60-
ReferencedContainer = "container:swift-sdk.xcodeproj">
61-
</BuildableReference>
62-
</MacroExpansion>
6360
</ProfileAction>
6461
<AnalyzeAction
6562
buildConfiguration = "Debug">

0 commit comments

Comments
 (0)