Skip to content

Promote checkout-guest to run on Swift/Kotlin - #561

Merged
kieran-osgood-shopify merged 13 commits into
mainfrom
kieran-osgood/e2e-checkout-guest
Aug 20, 2026
Merged

Promote checkout-guest to run on Swift/Kotlin#561
kieran-osgood-shopify merged 13 commits into
mainfrom
kieran-osgood/e2e-checkout-guest

Conversation

@kieran-osgood-shopify

@kieran-osgood-shopify kieran-osgood-shopify commented Jul 31, 2026

Copy link
Copy Markdown
Contributor

What changes are you making?

Similar to #560 - moves the checkout-guest flow to also run on Swift/Kotlin

This will now mean every e2e command should report 4/4 tests run (swift/kotlin/rnios/rnandroid)


Before you merge

Important

  • I've added tests to support my implementation
  • I have read and agree with the Contribution Guidelines
  • I have read and agree with the Code of Conduct
  • I've updated the relevant platform README (platforms/swift/README.md and/or platforms/android/README.md)

Releasing a new Swift version?
  • I have bumped the version in ShopifyCheckoutKit.podspec
  • I have bumped the version in platforms/swift/Sources/ShopifyCheckoutKit/ShopifyCheckoutKit.swift
  • I have updated the SwiftPM/CocoaPods version snippets in platforms/swift/README.md (major version only)
Releasing a new Embedded Checkout Protocol version?
  • I have bumped embeddedCheckoutProtocolAndroid in platforms/android/gradle/libs.versions.toml
  • I have updated protocol/languages/kotlin/embedded-checkout-protocol/api/embedded-checkout-protocol.api if the public API changed
Releasing a new Android version?
  • I have bumped checkoutKitAndroid in platforms/android/gradle/libs.versions.toml
  • I have updated the Gradle/Maven version snippets in platforms/android/README.md

Tip

See the Contributing documentation for the full release process per platform.

@bitrise

bitrise Bot commented Jul 31, 2026

Copy link
Copy Markdown

Install this build

Open Tophat, select your target device, then click Install. Links open on the Mac running Tophat.

SDK Install
React Native Install with Tophat
Swift Install with Tophat
Kotlin Install with Tophat

Checkout Kit E2E results

Status Suite Target Platform OS version tag Device
react-native-ios react-native ios latest iPhone 15
iOS 27 Beta
react-native-android react-native android latest Google Pixel 9
Android 17.0
kotlin-android kotlin android latest Google Pixel 9
Android 17.0
swift-ios swift ios latest iPhone 15
iOS 27 Beta

kieran-osgood-shopify added a commit that referenced this pull request Jul 31, 2026
Six tests pass locally on all four targets and fail on BrowserStack. PR #561
and PR #562 show the same two patterns, so no sample change causes them. Both
patterns need the Maestro logs, which need BrowserStack access.

Separate them from the flake register, because a flake gives a different result
from the same code and these give the same result every run.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Assisted-By: devx/5b4b8d5b-690a-4389-841e-039723ade1da
@tiagocandido
tiagocandido force-pushed the kieran-osgood/e2e-checkout-hardcoded-buyer-identity branch from 4538a43 to ec85833 Compare August 3, 2026 12:12
@tiagocandido
tiagocandido changed the base branch from kieran-osgood/e2e-checkout-hardcoded-buyer-identity to graphite-base/561 August 3, 2026 14:42
@kieran-osgood-shopify
kieran-osgood-shopify force-pushed the kieran-osgood/e2e-checkout-guest branch from 0b5e09e to 260aa4a Compare August 4, 2026 17:04
@kieran-osgood-shopify
kieran-osgood-shopify changed the base branch from graphite-base/561 to kieran-osgood/e2e-checkout-hardcoded-buyer-identity August 4, 2026 17:04
@kieran-osgood-shopify
kieran-osgood-shopify marked this pull request as draft August 5, 2026 09:20
@kieran-osgood-shopify
kieran-osgood-shopify marked this pull request as ready for review August 14, 2026 16:17
@kieran-osgood-shopify
kieran-osgood-shopify force-pushed the kieran-osgood/e2e-checkout-hardcoded-buyer-identity branch from 8fcbde6 to a2b1a2f Compare August 17, 2026 12:51
@kieran-osgood-shopify
kieran-osgood-shopify force-pushed the kieran-osgood/e2e-checkout-guest branch from df7a799 to 81de4d9 Compare August 17, 2026 12:51
@kieran-osgood-shopify
kieran-osgood-shopify force-pushed the kieran-osgood/e2e-checkout-hardcoded-buyer-identity branch from a2b1a2f to e7b6633 Compare August 17, 2026 13:13
@kieran-osgood-shopify
kieran-osgood-shopify force-pushed the kieran-osgood/e2e-checkout-guest branch from 81de4d9 to d7d962c Compare August 17, 2026 13:13
@kieran-osgood-shopify
kieran-osgood-shopify changed the base branch from kieran-osgood/e2e-checkout-hardcoded-buyer-identity to graphite-base/561 August 17, 2026 14:38
Comment thread e2e/tests/shared/checkout-guest.yaml Outdated
@kieran-osgood-shopify
kieran-osgood-shopify force-pushed the kieran-osgood/e2e-checkout-guest branch from 7238234 to 111f3ea Compare August 18, 2026 09:27
@kieran-osgood-shopify
kieran-osgood-shopify changed the base branch from graphite-base/561 to kieran-osgood/e2e-checkout-hardcoded-buyer-identity August 18, 2026 09:27
@kieran-osgood-shopify
kieran-osgood-shopify changed the base branch from kieran-osgood/e2e-checkout-hardcoded-buyer-identity to graphite-base/561 August 18, 2026 10:24
@kieran-osgood-shopify
kieran-osgood-shopify force-pushed the kieran-osgood/e2e-checkout-guest branch from 111f3ea to ee190fc Compare August 18, 2026 10:24
@graphite-app
graphite-app Bot changed the base branch from graphite-base/561 to main August 18, 2026 10:25
kieran-osgood-shopify and others added 13 commits August 19, 2026 11:47
Moves the guest checkout test out of tests/react-native and into tests/shared, so
Swift, Kotlin, React Native iOS and React Native Android all run it. The old file
carried a wip tag to keep it out of the matrix; both go away together.

Three flow fixes came out of running it:

- fill-shipping-address.yaml asked for visibilityPercentage 10 in four places. A
  value under 100 rounds down to zero, so those scrolls stopped before they moved.
  centerElement replaces all four.
- The shop requires a phone number on a delivery address, and no flow filled it.
  The field only appears when a shop asks for it, so the new step is optional.
- Checkout copies the delivery name into "Name on card", and inputText appends to
  it. fill-payment-card.yaml now erases the field first.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Assisted-By: devx/5b4b8d5b-690a-4389-841e-039723ade1da
@github-actions

github-actions Bot commented Aug 20, 2026

Copy link
Copy Markdown

React Native — Coverage Report

Lines Statements Branches Functions
Coverage: 91%
90.97% (363/399) 87.29% (213/244) 100% (92/92)

@github-actions

Copy link
Copy Markdown

Package Size

Platform Artifact Base Head Delta
React Native npm tarball 107.3 KiB 107.3 KiB 0 B
Android release AAR 291.2 KiB 291.2 KiB 0 B
React Native file breakdown
File Base Head Delta
node_modules/@shopify/checkout-kit-protocol/src/generated/Models.ts 85.4 KiB 85.4 KiB 0 B
node_modules/@shopify/checkout-kit-protocol/src/generated/Models.d.ts 53.0 KiB 53.0 KiB 0 B
android/src/main/java/com/shopify/reactnative/checkoutkit/ShopifyCheckoutKitModule.java 16.0 KiB 16.0 KiB 0 B
ios/ShopifyCheckoutKit.swift 15.9 KiB 15.9 KiB 0 B
ios/AcceleratedCheckoutButtons.swift 14.1 KiB 14.1 KiB 0 B
src/components/AcceleratedCheckoutButtons.tsx 13.0 KiB 13.0 KiB 0 B
src/index.ts 12.7 KiB 12.7 KiB 0 B
lib/commonjs/index.js 12.4 KiB 12.4 KiB 0 B
lib/commonjs/components/AcceleratedCheckoutButtons.js 11.4 KiB 11.4 KiB 0 B
src/index.d.ts 11.1 KiB 11.1 KiB 0 B
lib/commonjs/components/AcceleratedCheckoutButtons.js.map 10.4 KiB 10.4 KiB 0 B
lib/module/index.js 10.4 KiB 10.4 KiB 0 B
lib/module/components/AcceleratedCheckoutButtons.js 10.2 KiB 10.2 KiB 0 B
node_modules/@shopify/checkout-kit-protocol/src/generated/ProtocolNotifications.ts 9.5 KiB 9.5 KiB 0 B
lib/module/components/AcceleratedCheckoutButtons.js.map 9.1 KiB 9.1 KiB 0 B
lib/module/index.js.map 8.1 KiB 8.1 KiB 0 B
src/present-dispatcher.ts 8.0 KiB 8.0 KiB 0 B
lib/commonjs/index.js.map 7.9 KiB 7.9 KiB 0 B
node_modules/@shopify/checkout-kit-protocol/src/generated/ProtocolNotifications.d.ts 7.6 KiB 7.6 KiB 0 B
node_modules/@shopify/checkout-kit-protocol/src/generated/ProtocolRenameMap.ts 7.2 KiB 7.2 KiB 0 B
…and 117 smaller files
Android file breakdown
File Base Head Delta
classes.jar 308.4 KiB 308.4 KiB 0 B
res/layout/checkout_view_content.xml 2.6 KiB 2.6 KiB 0 B
res/layout/checkout_sheet_content.xml 2.0 KiB 2.0 KiB 0 B
res/values/values.xml 1.3 KiB 1.3 KiB 0 B
R.txt 1.2 KiB 1.2 KiB 0 B
AndroidManifest.xml 922 B 922 B 0 B
proguard.txt 798 B 798 B 0 B
res/drawable/close.xml 431 B 431 B 0 B
res/menu/checkout_menu.xml 354 B 354 B 0 B
META-INF/com/android/build/gradle/aar-metadata.properties 157 B 157 B 0 B

Measured from the PR base SHA and PR head SHA. The file breakdown shows uncompressed sizes within each package artifact, so individual files do not sum to the compressed artifact total. This comment reports package artifact sizes only; it is not a final app binary-size report.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

#gsd:50662 Rebase Checkout Kit on UCP

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants