@mohasinac/appkit 4.58.0 → 4.59.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/.build-stamp.json +3 -3
- package/dist/_internal/server/jobs/handlers/messages.d.ts +1 -1
- package/dist/_internal/server/jobs/handlers/messages.js +1 -1
- package/dist/_internal/shared/types/base-document.d.ts +1 -1
- package/dist/constants/seed-meta.d.ts +113 -0
- package/dist/constants/seed-meta.js +91 -0
- package/dist/index.d.ts +0 -131
- package/dist/index.js +50 -294
- package/dist/server.d.ts +0 -69
- package/dist/server.js +0 -69
- package/package.json +4 -2
- package/scripts/seed-cli.mjs +69 -1
- package/dist/features/tester/seed-data/_happy-path.d.ts +0 -23
- package/dist/features/tester/seed-data/_happy-path.js +0 -710
- package/dist/features/tester/seed-data/_money-flows.d.ts +0 -23
- package/dist/features/tester/seed-data/_money-flows.js +0 -610
- package/dist/features/tester/seed-data/authored/_types.d.ts +0 -57
- package/dist/features/tester/seed-data/authored/_types.js +0 -35
- package/dist/features/tester/seed-data/authored/account-auth__profile-settings.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/account-auth__profile-settings.js +0 -226
- package/dist/features/tester/seed-data/authored/account-auth__signup-login.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/account-auth__signup-login.js +0 -329
- package/dist/features/tester/seed-data/authored/addresses__address-filters.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/addresses__address-filters.js +0 -41
- package/dist/features/tester/seed-data/authored/addresses__postal-lookup.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/addresses__postal-lookup.js +0 -76
- package/dist/features/tester/seed-data/authored/addresses__postal-validation.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/addresses__postal-validation.js +0 -78
- package/dist/features/tester/seed-data/authored/addresses__state-picker.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/addresses__state-picker.js +0 -59
- package/dist/features/tester/seed-data/authored/addresses__unban-request.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/addresses__unban-request.js +0 -77
- package/dist/features/tester/seed-data/authored/admin__admin-detail-round-trips.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__admin-detail-round-trips.js +0 -151
- package/dist/features/tester/seed-data/authored/admin__bans-and-trust.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__bans-and-trust.js +0 -265
- package/dist/features/tester/seed-data/authored/admin__blog-faqs.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__blog-faqs.js +0 -131
- package/dist/features/tester/seed-data/authored/admin__bug-hunter-rewards.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__bug-hunter-rewards.js +0 -143
- package/dist/features/tester/seed-data/authored/admin__bulk-actions.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__bulk-actions.js +0 -207
- package/dist/features/tester/seed-data/authored/admin__bundles.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__bundles.js +0 -144
- package/dist/features/tester/seed-data/authored/admin__buyer-data-admin.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__buyer-data-admin.js +0 -265
- package/dist/features/tester/seed-data/authored/admin__catalog-listings.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__catalog-listings.js +0 -318
- package/dist/features/tester/seed-data/authored/admin__category-brand-authoring.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__category-brand-authoring.js +0 -177
- package/dist/features/tester/seed-data/authored/admin__classifieds-digitalcodes-live.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__classifieds-digitalcodes-live.js +0 -165
- package/dist/features/tester/seed-data/authored/admin__content-deletes.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__content-deletes.js +0 -267
- package/dist/features/tester/seed-data/authored/admin__content-marketing.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__content-marketing.js +0 -188
- package/dist/features/tester/seed-data/authored/admin__coupons.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__coupons.js +0 -215
- package/dist/features/tester/seed-data/authored/admin__events-raffles-spin.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__events-raffles-spin.js +0 -202
- package/dist/features/tester/seed-data/authored/admin__firebase-function-effects.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__firebase-function-effects.js +0 -249
- package/dist/features/tester/seed-data/authored/admin__media-watermark.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__media-watermark.js +0 -148
- package/dist/features/tester/seed-data/authored/admin__orders-fulfillment.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__orders-fulfillment.js +0 -350
- package/dist/features/tester/seed-data/authored/admin__prize-draws-lotteries.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__prize-draws-lotteries.js +0 -129
- package/dist/features/tester/seed-data/authored/admin__site-system.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__site-system.js +0 -586
- package/dist/features/tester/seed-data/authored/admin__uncovered-admin-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__uncovered-admin-pages.js +0 -260
- package/dist/features/tester/seed-data/authored/admin__users-trust.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/admin__users-trust.js +0 -569
- package/dist/features/tester/seed-data/authored/buying__bidding.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__bidding.js +0 -449
- package/dist/features/tester/seed-data/authored/buying__browsing-search.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__browsing-search.js +0 -684
- package/dist/features/tester/seed-data/authored/buying__buying-checkout.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__buying-checkout.js +0 -546
- package/dist/features/tester/seed-data/authored/buying__buying-coupons.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__buying-coupons.js +0 -379
- package/dist/features/tester/seed-data/authored/buying__cart.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__cart.js +0 -1264
- package/dist/features/tester/seed-data/authored/buying__image-tile-layout.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__image-tile-layout.js +0 -122
- package/dist/features/tester/seed-data/authored/buying__my-orders.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__my-orders.js +0 -279
- package/dist/features/tester/seed-data/authored/buying__offers.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__offers.js +0 -1127
- package/dist/features/tester/seed-data/authored/buying__order-detail-actions.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__order-detail-actions.js +0 -153
- package/dist/features/tester/seed-data/authored/buying__order-status-lifecycle.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__order-status-lifecycle.js +0 -252
- package/dist/features/tester/seed-data/authored/buying__product-detail.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__product-detail.js +0 -474
- package/dist/features/tester/seed-data/authored/buying__return-request.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__return-request.js +0 -165
- package/dist/features/tester/seed-data/authored/buying__reviews-pagination.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__reviews-pagination.js +0 -260
- package/dist/features/tester/seed-data/authored/buying__reviews.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__reviews.js +0 -128
- package/dist/features/tester/seed-data/authored/buying__spares-and-groups.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__spares-and-groups.js +0 -96
- package/dist/features/tester/seed-data/authored/buying__user-dashboard-extras.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__user-dashboard-extras.js +0 -283
- package/dist/features/tester/seed-data/authored/buying__user-dashboard-navigation.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__user-dashboard-navigation.js +0 -169
- package/dist/features/tester/seed-data/authored/buying__user-uncovered-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__user-uncovered-pages.js +0 -105
- package/dist/features/tester/seed-data/authored/buying__wishlist-history.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/buying__wishlist-history.js +0 -374
- package/dist/features/tester/seed-data/authored/community-support__messages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/community-support__messages.js +0 -200
- package/dist/features/tester/seed-data/authored/community-support__public-profile.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/community-support__public-profile.js +0 -54
- package/dist/features/tester/seed-data/authored/community-support__support-tickets.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/community-support__support-tickets.js +0 -76
- package/dist/features/tester/seed-data/authored/content-discovery__authenticity-checker.d.ts +0 -4
- package/dist/features/tester/seed-data/authored/content-discovery__authenticity-checker.js +0 -590
- package/dist/features/tester/seed-data/authored/content-discovery__blog.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__blog.js +0 -110
- package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.js +0 -149
- package/dist/features/tester/seed-data/authored/content-discovery__category-counts-and-rollup.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__category-counts-and-rollup.js +0 -145
- package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.js +0 -174
- package/dist/features/tester/seed-data/authored/content-discovery__coupons.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__coupons.js +0 -169
- package/dist/features/tester/seed-data/authored/content-discovery__event-detail-subroutes.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__event-detail-subroutes.js +0 -209
- package/dist/features/tester/seed-data/authored/content-discovery__event-participation.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__event-participation.js +0 -207
- package/dist/features/tester/seed-data/authored/content-discovery__events.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__events.js +0 -377
- package/dist/features/tester/seed-data/authored/content-discovery__faq-help.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__faq-help.js +0 -87
- package/dist/features/tester/seed-data/authored/content-discovery__notifications.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__notifications.js +0 -147
- package/dist/features/tester/seed-data/authored/content-discovery__overflowing-pill-rows.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__overflowing-pill-rows.js +0 -209
- package/dist/features/tester/seed-data/authored/content-discovery__parts-database.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__parts-database.js +0 -167
- package/dist/features/tester/seed-data/authored/content-discovery__price-index-and-compare.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__price-index-and-compare.js +0 -73
- package/dist/features/tester/seed-data/authored/content-discovery__search.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__search.js +0 -363
- package/dist/features/tester/seed-data/authored/content-discovery__site-wide-index.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__site-wide-index.js +0 -340
- package/dist/features/tester/seed-data/authored/content-discovery__store-reviews-aggregate.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/content-discovery__store-reviews-aggregate.js +0 -88
- package/dist/features/tester/seed-data/authored/cta-layout__checkout-bottom-bar.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/cta-layout__checkout-bottom-bar.js +0 -78
- package/dist/features/tester/seed-data/authored/cta-layout__dialog-footers.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/cta-layout__dialog-footers.js +0 -76
- package/dist/features/tester/seed-data/authored/cta-layout__editor-action-bar.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/cta-layout__editor-action-bar.js +0 -62
- package/dist/features/tester/seed-data/authored/cta-layout__navbar-ctas.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/cta-layout__navbar-ctas.js +0 -163
- package/dist/features/tester/seed-data/authored/cta-layout__product-bottom-bar.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/cta-layout__product-bottom-bar.js +0 -61
- package/dist/features/tester/seed-data/authored/design-ux__action-bar-placement.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__action-bar-placement.js +0 -89
- package/dist/features/tester/seed-data/authored/design-ux__back-to-top-button.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__back-to-top-button.js +0 -95
- package/dist/features/tester/seed-data/authored/design-ux__carousel-arrow-bounds.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__carousel-arrow-bounds.js +0 -191
- package/dist/features/tester/seed-data/authored/design-ux__dashboard-layout.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__dashboard-layout.js +0 -158
- package/dist/features/tester/seed-data/authored/design-ux__feature-badge-picker.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__feature-badge-picker.js +0 -82
- package/dist/features/tester/seed-data/authored/design-ux__footer-theme.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__footer-theme.js +0 -106
- package/dist/features/tester/seed-data/authored/design-ux__form-validation-errors.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__form-validation-errors.js +0 -88
- package/dist/features/tester/seed-data/authored/design-ux__general-design.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__general-design.js +0 -204
- package/dist/features/tester/seed-data/authored/design-ux__hand-mode-layout.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__hand-mode-layout.js +0 -301
- package/dist/features/tester/seed-data/authored/design-ux__header-brand-mark-centring.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__header-brand-mark-centring.js +0 -90
- package/dist/features/tester/seed-data/authored/design-ux__header-controls-and-messages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__header-controls-and-messages.js +0 -85
- package/dist/features/tester/seed-data/authored/design-ux__homepage-carousels.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__homepage-carousels.js +0 -407
- package/dist/features/tester/seed-data/authored/design-ux__nav-reachability.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__nav-reachability.js +0 -88
- package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.js +0 -84
- package/dist/features/tester/seed-data/authored/design-ux__status-badge-legibility.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__status-badge-legibility.js +0 -214
- package/dist/features/tester/seed-data/authored/design-ux__sticky-cta-bar.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/design-ux__sticky-cta-bar.js +0 -275
- package/dist/features/tester/seed-data/authored/index.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/index.js +0 -301
- package/dist/features/tester/seed-data/authored/page-wiring__data-loss.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/page-wiring__data-loss.js +0 -125
- package/dist/features/tester/seed-data/authored/page-wiring__detail-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/page-wiring__detail-pages.js +0 -85
- package/dist/features/tester/seed-data/authored/page-wiring__drawer-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/page-wiring__drawer-pages.js +0 -92
- package/dist/features/tester/seed-data/authored/page-wiring__reachability.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/page-wiring__reachability.js +0 -115
- package/dist/features/tester/seed-data/authored/public-pages__auth-error-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__auth-error-pages.js +0 -137
- package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.js +0 -263
- package/dist/features/tester/seed-data/authored/public-pages__help-how-it-works.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__help-how-it-works.js +0 -229
- package/dist/features/tester/seed-data/authored/public-pages__help-scams-guides-subpages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__help-scams-guides-subpages.js +0 -325
- package/dist/features/tester/seed-data/authored/public-pages__legal-policy-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__legal-policy-pages.js +0 -126
- package/dist/features/tester/seed-data/authored/public-pages__newly-wired-browse-indexes.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__newly-wired-browse-indexes.js +0 -141
- package/dist/features/tester/seed-data/authored/public-pages__store-tabs.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__store-tabs.js +0 -115
- package/dist/features/tester/seed-data/authored/public-pages__stores-sellers-directories.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/public-pages__stores-sellers-directories.js +0 -253
- package/dist/features/tester/seed-data/authored/search-and-nav__employee-permissions.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/search-and-nav__employee-permissions.js +0 -93
- package/dist/features/tester/seed-data/authored/search-and-nav__header-search.d.ts +0 -3
- package/dist/features/tester/seed-data/authored/search-and-nav__header-search.js +0 -185
- package/dist/features/tester/seed-data/authored/search-and-nav__settings-deep-links.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/search-and-nav__settings-deep-links.js +0 -82
- package/dist/features/tester/seed-data/authored/search-and-nav__sidebar-search.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/search-and-nav__sidebar-search.js +0 -60
- package/dist/features/tester/seed-data/authored/selling__become-seller.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__become-seller.js +0 -117
- package/dist/features/tester/seed-data/authored/selling__digital-content-delivery.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__digital-content-delivery.js +0 -148
- package/dist/features/tester/seed-data/authored/selling__final-sale-authoring.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__final-sale-authoring.js +0 -108
- package/dist/features/tester/seed-data/authored/selling__listing-a-product.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__listing-a-product.js +0 -274
- package/dist/features/tester/seed-data/authored/selling__listing-edit-roundtrip.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__listing-edit-roundtrip.js +0 -145
- package/dist/features/tester/seed-data/authored/selling__listing-lifecycle.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__listing-lifecycle.js +0 -336
- package/dist/features/tester/seed-data/authored/selling__listing-type-fields-roundtrip.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__listing-type-fields-roundtrip.js +0 -136
- package/dist/features/tester/seed-data/authored/selling__media-limits.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__media-limits.js +0 -135
- package/dist/features/tester/seed-data/authored/selling__product-upload-details.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__product-upload-details.js +0 -155
- package/dist/features/tester/seed-data/authored/selling__quick-add-minimum-details.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__quick-add-minimum-details.js +0 -138
- package/dist/features/tester/seed-data/authored/selling__sectionised-forms.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__sectionised-forms.js +0 -191
- package/dist/features/tester/seed-data/authored/selling__seller-analytics-payouts.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-analytics-payouts.js +0 -138
- package/dist/features/tester/seed-data/authored/selling__seller-bids-bundles-filters.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-bids-bundles-filters.js +0 -106
- package/dist/features/tester/seed-data/authored/selling__seller-catalog-org.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-catalog-org.js +0 -192
- package/dist/features/tester/seed-data/authored/selling__seller-custom-brands.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-custom-brands.js +0 -109
- package/dist/features/tester/seed-data/authored/selling__seller-guide.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-guide.js +0 -34
- package/dist/features/tester/seed-data/authored/selling__seller-listing-types.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-listing-types.js +0 -348
- package/dist/features/tester/seed-data/authored/selling__seller-marketing-extras.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-marketing-extras.js +0 -87
- package/dist/features/tester/seed-data/authored/selling__seller-ops-comms.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-ops-comms.js +0 -90
- package/dist/features/tester/seed-data/authored/selling__seller-orders-at-scale.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-orders-at-scale.js +0 -85
- package/dist/features/tester/seed-data/authored/selling__seller-orders.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-orders.js +0 -213
- package/dist/features/tester/seed-data/authored/selling__seller-shipping-payouts-setup.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__seller-shipping-payouts-setup.js +0 -192
- package/dist/features/tester/seed-data/authored/selling__spares-and-group-editing.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__spares-and-group-editing.js +0 -77
- package/dist/features/tester/seed-data/authored/selling__store-dashboard-navigation.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__store-dashboard-navigation.js +0 -165
- package/dist/features/tester/seed-data/authored/selling__store-uncovered-pages.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/selling__store-uncovered-pages.js +0 -116
- package/dist/features/tester/seed-data/authored/seo__canonical-and-host.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/seo__canonical-and-host.js +0 -127
- package/dist/features/tester/seed-data/authored/seo__og-images.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/seo__og-images.js +0 -107
- package/dist/features/tester/seed-data/authored/seo__page-metadata.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/seo__page-metadata.js +0 -120
- package/dist/features/tester/seed-data/authored/seo__sitemap-and-robots.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/seo__sitemap-and-robots.js +0 -105
- package/dist/features/tester/seed-data/authored/tools__sticker-promote-to-listings.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/tools__sticker-promote-to-listings.js +0 -58
- package/dist/features/tester/seed-data/authored/tools__sticker-tracer.d.ts +0 -2
- package/dist/features/tester/seed-data/authored/tools__sticker-tracer.js +0 -284
- package/dist/features/tester/seed-data/index.d.ts +0 -2
- package/dist/features/tester/seed-data/index.js +0 -2
- package/dist/features/tester/seed-data/tester-checklist-seed-data.d.ts +0 -2
- package/dist/features/tester/seed-data/tester-checklist-seed-data.js +0 -7601
- package/dist/features/tester/seed-data/tester-responses-seed-data.d.ts +0 -2
- package/dist/features/tester/seed-data/tester-responses-seed-data.js +0 -95
- package/dist/features/tester/seed-data/tester-window.d.ts +0 -25
- package/dist/features/tester/seed-data/tester-window.js +0 -66
- package/dist/seed/_helpers/brand-rows.d.ts +0 -35
- package/dist/seed/_helpers/brand-rows.js +0 -600
- package/dist/seed/_helpers/category-content-generated.d.ts +0 -24
- package/dist/seed/_helpers/category-content-generated.js +0 -1853
- package/dist/seed/_helpers/category-content.d.ts +0 -68
- package/dist/seed/_helpers/category-content.js +0 -731
- package/dist/seed/_helpers/category-forest.d.ts +0 -4
- package/dist/seed/_helpers/category-forest.js +0 -824
- package/dist/seed/_helpers/category-images-generated.d.ts +0 -57
- package/dist/seed/_helpers/category-images-generated.js +0 -618
- package/dist/seed/_helpers/category-models/chunk0.d.ts +0 -2
- package/dist/seed/_helpers/category-models/chunk0.js +0 -2648
- package/dist/seed/_helpers/category-models/chunk1.d.ts +0 -2
- package/dist/seed/_helpers/category-models/chunk1.js +0 -2318
- package/dist/seed/_helpers/category-models/chunk2.d.ts +0 -2
- package/dist/seed/_helpers/category-models/chunk2.js +0 -2560
- package/dist/seed/_helpers/category-models/chunk3.d.ts +0 -2
- package/dist/seed/_helpers/category-models/chunk3.js +0 -2196
- package/dist/seed/_helpers/category-models/chunk4.d.ts +0 -2
- package/dist/seed/_helpers/category-models/chunk4.js +0 -1732
- package/dist/seed/_helpers/category-models.d.ts +0 -12
- package/dist/seed/_helpers/category-models.js +0 -45
- package/dist/seed/_helpers/category-names.d.ts +0 -54
- package/dist/seed/_helpers/category-names.js +0 -118
- package/dist/seed/_helpers/category-parts-glossary-map.d.ts +0 -1
- package/dist/seed/_helpers/category-parts-glossary-map.js +0 -2499
- package/dist/seed/_helpers/category-parts.d.ts +0 -9
- package/dist/seed/_helpers/category-parts.js +0 -15022
- package/dist/seed/_helpers/category-tree.d.ts +0 -27
- package/dist/seed/_helpers/category-tree.js +0 -119
- package/dist/seed/_helpers/character-features.d.ts +0 -10
- package/dist/seed/_helpers/character-features.js +0 -120
- package/dist/seed/_helpers/final-sale-fixtures.d.ts +0 -35
- package/dist/seed/_helpers/final-sale-fixtures.js +0 -61
- package/dist/seed/_helpers/franchise-rows.d.ts +0 -43
- package/dist/seed/_helpers/franchise-rows.js +0 -189
- package/dist/seed/_helpers/media.d.ts +0 -67
- package/dist/seed/_helpers/media.js +0 -172
- package/dist/seed/_helpers/part-colours-generated.d.ts +0 -18
- package/dist/seed/_helpers/part-colours-generated.js +0 -273
- package/dist/seed/_helpers/product-search-txt.d.ts +0 -18
- package/dist/seed/_helpers/product-search-txt.js +0 -23
- package/dist/seed/_helpers/search-txt-wrappers.d.ts +0 -26
- package/dist/seed/_helpers/search-txt-wrappers.js +0 -58
- package/dist/seed/addresses-seed-data.d.ts +0 -2
- package/dist/seed/addresses-seed-data.js +0 -78
- package/dist/seed/authenticity-knowledge-seed-data.d.ts +0 -78
- package/dist/seed/authenticity-knowledge-seed-data.js +0 -10729
- package/dist/seed/bey-products-seed-data.d.ts +0 -18
- package/dist/seed/bey-products-seed-data.js +0 -18011
- package/dist/seed/beys/chunk0.d.ts +0 -17
- package/dist/seed/beys/chunk0.js +0 -36733
- package/dist/seed/beys/chunk1.d.ts +0 -17
- package/dist/seed/beys/chunk1.js +0 -35728
- package/dist/seed/beys/chunk2.d.ts +0 -17
- package/dist/seed/beys/chunk2.js +0 -35857
- package/dist/seed/beys/chunk3.d.ts +0 -17
- package/dist/seed/beys/chunk3.js +0 -34476
- package/dist/seed/beys-seed-data.d.ts +0 -18
- package/dist/seed/beys-seed-data.js +0 -11
- package/dist/seed/bids-seed-data.d.ts +0 -2
- package/dist/seed/bids-seed-data.js +0 -206
- package/dist/seed/blog-posts-seed-data.d.ts +0 -6
- package/dist/seed/blog-posts-seed-data.js +0 -442
- package/dist/seed/carousel-slides-seed-data.d.ts +0 -2
- package/dist/seed/carousel-slides-seed-data.js +0 -411
- package/dist/seed/carousels-seed-data.d.ts +0 -2
- package/dist/seed/carousels-seed-data.js +0 -36
- package/dist/seed/cart-seed-data.d.ts +0 -2
- package/dist/seed/cart-seed-data.js +0 -241
- package/dist/seed/catalogue-seed-data.d.ts +0 -2
- package/dist/seed/catalogue-seed-data.js +0 -112
- package/dist/seed/categories-seed-data.d.ts +0 -3
- package/dist/seed/categories-seed-data.js +0 -816
- package/dist/seed/claimed-coupons-seed-data.d.ts +0 -2
- package/dist/seed/claimed-coupons-seed-data.js +0 -85
- package/dist/seed/coupon-usage-seed-data.d.ts +0 -9
- package/dist/seed/coupon-usage-seed-data.js +0 -55
- package/dist/seed/coupons-seed-data.d.ts +0 -2
- package/dist/seed/coupons-seed-data.js +0 -226
- package/dist/seed/defaults/categories.d.ts +0 -2
- package/dist/seed/defaults/categories.js +0 -12
- package/dist/seed/defaults/faqs.d.ts +0 -2
- package/dist/seed/defaults/faqs.js +0 -40
- package/dist/seed/events-seed-data.d.ts +0 -7
- package/dist/seed/events-seed-data.js +0 -482
- package/dist/seed/factories/address.factory.d.ts +0 -21
- package/dist/seed/factories/address.factory.js +0 -44
- package/dist/seed/factories/bid.factory.d.ts +0 -15
- package/dist/seed/factories/bid.factory.js +0 -33
- package/dist/seed/factories/blog-post.factory.d.ts +0 -15
- package/dist/seed/factories/blog-post.factory.js +0 -22
- package/dist/seed/factories/carousel.factory.d.ts +0 -11
- package/dist/seed/factories/carousel.factory.js +0 -17
- package/dist/seed/factories/cart.factory.d.ts +0 -25
- package/dist/seed/factories/cart.factory.js +0 -35
- package/dist/seed/factories/category.factory.d.ts +0 -11
- package/dist/seed/factories/category.factory.js +0 -16
- package/dist/seed/factories/coupon.factory.d.ts +0 -21
- package/dist/seed/factories/coupon.factory.js +0 -43
- package/dist/seed/factories/faq.factory.d.ts +0 -10
- package/dist/seed/factories/faq.factory.js +0 -15
- package/dist/seed/factories/notification.factory.d.ts +0 -18
- package/dist/seed/factories/notification.factory.js +0 -39
- package/dist/seed/factories/order.factory.d.ts +0 -20
- package/dist/seed/factories/order.factory.js +0 -20
- package/dist/seed/factories/payout.factory.d.ts +0 -21
- package/dist/seed/factories/payout.factory.js +0 -38
- package/dist/seed/factories/product.factory.d.ts +0 -27
- package/dist/seed/factories/product.factory.js +0 -80
- package/dist/seed/factories/review.factory.d.ts +0 -14
- package/dist/seed/factories/review.factory.js +0 -52
- package/dist/seed/factories/session.factory.d.ts +0 -15
- package/dist/seed/factories/session.factory.js +0 -31
- package/dist/seed/factories/store.factory.d.ts +0 -23
- package/dist/seed/factories/store.factory.js +0 -47
- package/dist/seed/factories/user.factory.d.ts +0 -19
- package/dist/seed/factories/user.factory.js +0 -56
- package/dist/seed/faq-seed-data.d.ts +0 -18
- package/dist/seed/faq-seed-data.js +0 -1956
- package/dist/seed/firestore-indexes.d.ts +0 -12
- package/dist/seed/firestore-indexes.js +0 -31
- package/dist/seed/grouped-listings-seed-data.d.ts +0 -2
- package/dist/seed/grouped-listings-seed-data.js +0 -283
- package/dist/seed/history-seed-data.d.ts +0 -12
- package/dist/seed/history-seed-data.js +0 -70
- package/dist/seed/homepage-sections-seed-data.d.ts +0 -2
- package/dist/seed/homepage-sections-seed-data.js +0 -1034
- package/dist/seed/index.d.ts +0 -100
- package/dist/seed/index.js +0 -115
- package/dist/seed/lottery-entries-seed-data.d.ts +0 -2
- package/dist/seed/lottery-entries-seed-data.js +0 -108
- package/dist/seed/manifest.d.ts +0 -16
- package/dist/seed/manifest.js +0 -235
- package/dist/seed/media-assets-seed-data.d.ts +0 -22
- package/dist/seed/media-assets-seed-data.js +0 -5593
- package/dist/seed/model-composition-seed-data.d.ts +0 -15
- package/dist/seed/model-composition-seed-data.js +0 -9032
- package/dist/seed/notifications-seed-data.d.ts +0 -2
- package/dist/seed/notifications-seed-data.js +0 -606
- package/dist/seed/offers-seed-data.d.ts +0 -2
- package/dist/seed/offers-seed-data.js +0 -398
- package/dist/seed/orders-seed-data.d.ts +0 -2
- package/dist/seed/orders-seed-data.js +0 -845
- package/dist/seed/part-glossary/chunk0.d.ts +0 -9
- package/dist/seed/part-glossary/chunk0.js +0 -35448
- package/dist/seed/part-glossary/chunk1.d.ts +0 -9
- package/dist/seed/part-glossary/chunk1.js +0 -40494
- package/dist/seed/part-glossary/chunk2.d.ts +0 -9
- package/dist/seed/part-glossary/chunk2.js +0 -51242
- package/dist/seed/part-glossary/chunk3.d.ts +0 -9
- package/dist/seed/part-glossary/chunk3.js +0 -53337
- package/dist/seed/part-glossary/chunk4.d.ts +0 -9
- package/dist/seed/part-glossary/chunk4.js +0 -51454
- package/dist/seed/part-glossary-seed-data.d.ts +0 -15
- package/dist/seed/part-glossary-seed-data.js +0 -25
- package/dist/seed/payouts-seed-data.d.ts +0 -2
- package/dist/seed/payouts-seed-data.js +0 -302
- package/dist/seed/product-features-seed-data.d.ts +0 -3
- package/dist/seed/product-features-seed-data.js +0 -366
- package/dist/seed/products-art-seed-data.d.ts +0 -2
- package/dist/seed/products-art-seed-data.js +0 -289
- package/dist/seed/products-auctions-seed-data.d.ts +0 -2
- package/dist/seed/products-auctions-seed-data.js +0 -475
- package/dist/seed/products-beyblade-x-seed-data.d.ts +0 -2
- package/dist/seed/products-beyblade-x-seed-data.js +0 -476
- package/dist/seed/products-catalogue/chunk0.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk0.js +0 -7262
- package/dist/seed/products-catalogue/chunk1.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk1.js +0 -7290
- package/dist/seed/products-catalogue/chunk10.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk10.js +0 -7290
- package/dist/seed/products-catalogue/chunk11.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk11.js +0 -7005
- package/dist/seed/products-catalogue/chunk12.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk12.js +0 -7002
- package/dist/seed/products-catalogue/chunk13.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk13.js +0 -7002
- package/dist/seed/products-catalogue/chunk14.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk14.js +0 -7002
- package/dist/seed/products-catalogue/chunk15.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk15.js +0 -7002
- package/dist/seed/products-catalogue/chunk16.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk16.js +0 -7002
- package/dist/seed/products-catalogue/chunk17.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk17.js +0 -7002
- package/dist/seed/products-catalogue/chunk18.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk18.js +0 -4398
- package/dist/seed/products-catalogue/chunk2.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk2.js +0 -7268
- package/dist/seed/products-catalogue/chunk3.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk3.js +0 -7264
- package/dist/seed/products-catalogue/chunk4.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk4.js +0 -7268
- package/dist/seed/products-catalogue/chunk5.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk5.js +0 -7258
- package/dist/seed/products-catalogue/chunk6.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk6.js +0 -7268
- package/dist/seed/products-catalogue/chunk7.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk7.js +0 -7311
- package/dist/seed/products-catalogue/chunk8.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk8.js +0 -7304
- package/dist/seed/products-catalogue/chunk9.d.ts +0 -12
- package/dist/seed/products-catalogue/chunk9.js +0 -7309
- package/dist/seed/products-catalogue-seed-data.d.ts +0 -2
- package/dist/seed/products-catalogue-seed-data.js +0 -60
- package/dist/seed/products-classifieds-seed-data.d.ts +0 -7
- package/dist/seed/products-classifieds-seed-data.js +0 -435
- package/dist/seed/products-digital-codes-seed-data.d.ts +0 -7
- package/dist/seed/products-digital-codes-seed-data.js +0 -395
- package/dist/seed/products-live-items-seed-data.d.ts +0 -7
- package/dist/seed/products-live-items-seed-data.js +0 -269
- package/dist/seed/products-preorders-seed-data.d.ts +0 -2
- package/dist/seed/products-preorders-seed-data.js +0 -360
- package/dist/seed/products-prize-draws-seed-data.d.ts +0 -7
- package/dist/seed/products-prize-draws-seed-data.js +0 -427
- package/dist/seed/products-spares-seed-data.d.ts +0 -2
- package/dist/seed/products-spares-seed-data.js +0 -368
- package/dist/seed/products-standard-seed-data.d.ts +0 -2
- package/dist/seed/products-standard-seed-data.js +0 -632
- package/dist/seed/products-stickers-seed-data.d.ts +0 -2
- package/dist/seed/products-stickers-seed-data.js +0 -319
- package/dist/seed/reviews-seed-data.d.ts +0 -1
- package/dist/seed/reviews-seed-data.js +0 -185
- package/dist/seed/runner.d.ts +0 -2
- package/dist/seed/runner.js +0 -125
- package/dist/seed/scammers-seed-data.d.ts +0 -2
- package/dist/seed/scammers-seed-data.js +0 -235
- package/dist/seed/seed-market-config.d.ts +0 -48
- package/dist/seed/seed-market-config.js +0 -199
- package/dist/seed/seed-purpose.d.ts +0 -299
- package/dist/seed/seed-purpose.js +0 -440
- package/dist/seed/sessions-seed-data.d.ts +0 -3
- package/dist/seed/sessions-seed-data.js +0 -116
- package/dist/seed/shipments-seed-data.d.ts +0 -5
- package/dist/seed/shipments-seed-data.js +0 -185
- package/dist/seed/site-settings-seed-data.d.ts +0 -2
- package/dist/seed/site-settings-seed-data.js +0 -1069
- package/dist/seed/store-addresses-seed-data.d.ts +0 -18
- package/dist/seed/store-addresses-seed-data.js +0 -71
- package/dist/seed/store-extensions-seed-data.d.ts +0 -11
- package/dist/seed/store-extensions-seed-data.js +0 -292
- package/dist/seed/stores-seed-data.d.ts +0 -6
- package/dist/seed/stores-seed-data.js +0 -242
- package/dist/seed/support-tickets-seed-data.d.ts +0 -16
- package/dist/seed/support-tickets-seed-data.js +0 -239
- package/dist/seed/tax-codes-seed-data.d.ts +0 -34
- package/dist/seed/tax-codes-seed-data.js +0 -100
- package/dist/seed/test-data-ttl.d.ts +0 -29
- package/dist/seed/test-data-ttl.js +0 -31
- package/dist/seed/test-utils.d.ts +0 -49
- package/dist/seed/test-utils.js +0 -110
- package/dist/seed/types.d.ts +0 -89
- package/dist/seed/types.js +0 -15
- package/dist/seed/users-seed-data.d.ts +0 -2
- package/dist/seed/users-seed-data.js +0 -597
- package/dist/seed/wishlists-seed-data.d.ts +0 -12
- package/dist/seed/wishlists-seed-data.js +0 -54
|
@@ -1,546 +0,0 @@
|
|
|
1
|
-
/*
|
|
2
|
-
* WHY: Authored six-part procedures for the buying/buying-checkout checklist page.
|
|
3
|
-
* WHAT: 30 case(s), keyed by full checklist id.
|
|
4
|
-
*
|
|
5
|
-
* Written by hand, case by case, against the label each one states. There is no
|
|
6
|
-
* generator: the authoring scripts were deleted once it was clear they were
|
|
7
|
-
* scaffolding around work that is simply writing.
|
|
8
|
-
*
|
|
9
|
-
* @tag domain:tester
|
|
10
|
-
* @tag layer:seed
|
|
11
|
-
* @tag pattern:none
|
|
12
|
-
* @tag access:server-only
|
|
13
|
-
* @tag consumers:seed-data/authored/index.ts
|
|
14
|
-
* @tag sideEffects:none
|
|
15
|
-
*/
|
|
16
|
-
export const authored = {
|
|
17
|
-
"checklist-buying-buying-checkout-add-to-cart": {
|
|
18
|
-
roles: ["buyer"],
|
|
19
|
-
startPage: "/products/product-beyblade-burst-valkyrie",
|
|
20
|
-
steps: [
|
|
21
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
22
|
-
"Open /products/product-beyblade-burst-valkyrie.",
|
|
23
|
-
"Click 'Add to Cart'.",
|
|
24
|
-
"Open /cart.",
|
|
25
|
-
],
|
|
26
|
-
inputs: { productId: "product-beyblade-burst-valkyrie", quantity: 1, price: 999 },
|
|
27
|
-
expectedBehaviour: "The item is added to the buyer's cart and persists when the cart page is opened.",
|
|
28
|
-
expectedUiState: "The Cart tab on /cart shows 'Beyblade Burst B-01 Valkyrie' with quantity 1 and price ₹999.00. The cart item count badge in the header has increased.",
|
|
29
|
-
expectedData: { cartLineQuantity: 1, cartLinePrice: 999 },
|
|
30
|
-
endResult: "After reloading /cart, 'Beyblade Burst B-01 Valkyrie' is still listed in the Cart tab.",
|
|
31
|
-
},
|
|
32
|
-
"checklist-buying-buying-checkout-add-to-cart-max-quantity": {
|
|
33
|
-
roles: ["buyer"],
|
|
34
|
-
startPage: "/products/product-beyblade-burst-valkyrie",
|
|
35
|
-
steps: [
|
|
36
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
37
|
-
"Open /products/product-beyblade-burst-valkyrie.",
|
|
38
|
-
"Click 'Add to Cart'.",
|
|
39
|
-
"Open /cart.",
|
|
40
|
-
"Click the '+' (Increase quantity) button for 'Beyblade Burst B-01 Valkyrie' repeatedly until it stops incrementing.",
|
|
41
|
-
],
|
|
42
|
-
inputs: { productId: "product-beyblade-burst-valkyrie", stockQuantity: 10 },
|
|
43
|
-
expectedBehaviour: "The quantity control caps at the listing's available stock and does not allow the buyer to exceed it. A message or disabled state makes the limit clear.",
|
|
44
|
-
expectedUiState: "The '+' (Increase quantity) button becomes disabled or unresponsive once the quantity matches the available stock shown on the product page ('Only 10 left — order soon!'). A message indicating the cap is visible.",
|
|
45
|
-
expectedData: { maxSelectableQuantity: 10 },
|
|
46
|
-
endResult: "After reloading /cart, the quantity shown does not exceed the stock cap that was enforced.",
|
|
47
|
-
},
|
|
48
|
-
"checklist-buying-buying-checkout-add-to-cart-out-of-stock": {
|
|
49
|
-
roles: ["buyer"],
|
|
50
|
-
startPage: "/products/product-beyblade-burst-valtryek-v3-sold-out",
|
|
51
|
-
steps: [
|
|
52
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
53
|
-
"Open /products/product-beyblade-burst-valtryek-v3-sold-out.",
|
|
54
|
-
],
|
|
55
|
-
expectedBehaviour: "The system prevents the buyer from adding an out-of-stock listing to the cart. No cart mutation occurs.",
|
|
56
|
-
expectedUiState: "The product detail page shows '✗ Out of Stock'. No 'Add to Cart' button is present — the purchase action area is absent or replaced by the out-of-stock indicator.",
|
|
57
|
-
expectedData: { addToCartButtonPresent: false },
|
|
58
|
-
endResult: "After reloading /products/product-beyblade-burst-valtryek-v3-sold-out, the page still shows '✗ Out of Stock' with no 'Add to Cart' button.",
|
|
59
|
-
},
|
|
60
|
-
"checklist-buying-buying-checkout-checkout-back-navigation": {
|
|
61
|
-
roles: ["buyer"],
|
|
62
|
-
startPage: "/checkout",
|
|
63
|
-
steps: [
|
|
64
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
65
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
66
|
-
"Open /cart and click 'Proceed to checkout'.",
|
|
67
|
-
"On Step 1, select the existing address and click 'Continue' to advance to Step 2.",
|
|
68
|
-
"Press the browser back button.",
|
|
69
|
-
"Click 'Continue' again to advance to Step 2.",
|
|
70
|
-
"Click 'Continue to payment' to advance to Step 3.",
|
|
71
|
-
"Press the browser back button again.",
|
|
72
|
-
"Click 'Continue to payment' and complete checkout normally.",
|
|
73
|
-
],
|
|
74
|
-
expectedBehaviour: "Using the browser back button mid-checkout returns the buyer to the previous step with the cart state intact and does not double-submit or duplicate any order.",
|
|
75
|
-
expectedUiState: "After pressing back from Step 2, Step 1 is shown with the previously selected address still selected. After pressing back from Step 3, Step 2 is shown. The Order Summary consistently shows the correct cart items throughout.",
|
|
76
|
-
expectedData: { ordersCreated: 1 },
|
|
77
|
-
endResult: "Only one order is created at the end. No duplicate orders appear in the buyer's order history.",
|
|
78
|
-
},
|
|
79
|
-
"checklist-buying-buying-checkout-checkout-cash-payment-no-validation-error": {
|
|
80
|
-
roles: ["buyer"],
|
|
81
|
-
startPage: "/checkout",
|
|
82
|
-
steps: [
|
|
83
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
84
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
85
|
-
"Complete Steps 1 and 2 of checkout.",
|
|
86
|
-
"On Step 3 (Payment), select 'UPI / Cash' (manual payment).",
|
|
87
|
-
"Check the consent checkbox.",
|
|
88
|
-
"Click 'Pay via UPI / Cash'.",
|
|
89
|
-
],
|
|
90
|
-
inputs: { paymentMethod: "UPI / Cash" },
|
|
91
|
-
expectedBehaviour: "Clicking 'Pay via UPI / Cash' with the consent checkbox checked places the order successfully. No 'Validation failed' error message appears.",
|
|
92
|
-
expectedUiState: "After clicking 'Pay via UPI / Cash', the page transitions to the order confirmation or payment proof upload page. No red error message reading 'Validation failed' or similar is shown.",
|
|
93
|
-
expectedData: { validationErrorShown: false },
|
|
94
|
-
endResult: "An order is created and visible in the buyer's order history. The order has an active 15-minute payment window for proof upload.",
|
|
95
|
-
},
|
|
96
|
-
"checklist-buying-buying-checkout-checkout-flow": {
|
|
97
|
-
roles: ["buyer"],
|
|
98
|
-
startPage: "/products/product-beyblade-burst-valkyrie",
|
|
99
|
-
steps: [
|
|
100
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
101
|
-
"Open /products/product-beyblade-burst-valkyrie.",
|
|
102
|
-
"Click 'Add to Cart'.",
|
|
103
|
-
"Open /cart.",
|
|
104
|
-
"Click 'Proceed to checkout'.",
|
|
105
|
-
"On Step 1 (Shipping Address), select the existing address 'Home — 123 Stadium Lane, Vijay Nagar, Indore, Madhya Pradesh 452010'.",
|
|
106
|
-
"Click 'Continue'.",
|
|
107
|
-
"On Step 2 (Add-ons & fees), click 'Continue to payment'.",
|
|
108
|
-
"On Step 3 (Payment), select a payment method and complete the order.",
|
|
109
|
-
],
|
|
110
|
-
inputs: { productId: "product-beyblade-burst-valkyrie", price: 999 },
|
|
111
|
-
expectedBehaviour: "The three-step checkout flow (Address → Add-ons → Payment) completes without errors, an order is created, and the buyer lands on an order confirmation page.",
|
|
112
|
-
expectedUiState: "Each step advances in sequence: 'Step 1 of 3: Shipping Address', then 'Step 2 of 3: Extras & fees', then the payment step. After completing payment, an order confirmation page is shown with an order number.",
|
|
113
|
-
expectedData: { checkoutStepCount: 3 },
|
|
114
|
-
endResult: "After reloading the order confirmation URL, the order details remain visible and the order status is not cancelled.",
|
|
115
|
-
},
|
|
116
|
-
"checklist-buying-buying-checkout-checkout-manual-payment-consent": {
|
|
117
|
-
roles: ["buyer"],
|
|
118
|
-
startPage: "/checkout",
|
|
119
|
-
steps: [
|
|
120
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
121
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
122
|
-
"Complete Steps 1 and 2 of checkout.",
|
|
123
|
-
"On Step 3 (Payment), select 'UPI / Cash' (manual payment).",
|
|
124
|
-
"Read the how-it-works guide that appears.",
|
|
125
|
-
"Check the consent checkbox.",
|
|
126
|
-
"Read the state of the 'Pay via UPI / Cash' button.",
|
|
127
|
-
],
|
|
128
|
-
inputs: { paymentMethod: "UPI / Cash" },
|
|
129
|
-
expectedBehaviour: "Selecting UPI/Cash shows a how-it-works guide covering payment steps, refund summary, and what happens if an item sells out. The 'Pay via UPI / Cash' button is disabled until the consent checkbox is checked.",
|
|
130
|
-
expectedUiState: "A how-it-works guide is visible with sections covering: payment steps, refund policy, and out-of-stock handling. The 'Pay via UPI / Cash' button is greyed out / disabled before the checkbox is checked. After checking the consent checkbox, the button becomes enabled.",
|
|
131
|
-
expectedData: { submitEnabledBeforeConsent: false },
|
|
132
|
-
endResult: "Nothing persists from this step until the button is actually clicked and the order is placed.",
|
|
133
|
-
},
|
|
134
|
-
"checklist-buying-buying-checkout-checkout-mobile-responsive": {
|
|
135
|
-
roles: ["buyer"],
|
|
136
|
-
startPage: "/cart",
|
|
137
|
-
steps: [
|
|
138
|
-
"Resize the browser to a mobile viewport of 390×844 pixels.",
|
|
139
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
140
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
141
|
-
"Open /cart.",
|
|
142
|
-
"Click 'Proceed to checkout'.",
|
|
143
|
-
"Complete Step 1 (address selection) on the mobile viewport.",
|
|
144
|
-
"Complete Step 2 (add-ons) on the mobile viewport.",
|
|
145
|
-
"Reach Step 3 (payment) on the mobile viewport.",
|
|
146
|
-
],
|
|
147
|
-
inputs: { viewportWidth: 390, viewportHeight: 844 },
|
|
148
|
-
expectedBehaviour: "The full checkout flow is usable on a 390×844 mobile viewport with no horizontal scrolling, no overlapping controls, and all buttons reachable by tap.",
|
|
149
|
-
expectedUiState: "At each step (cart, Step 1, Step 2, Step 3), the layout stacks vertically. The Order Summary panel, address cards, add-on checkboxes, and payment controls are all fully visible and usable without horizontal scrolling. No text is clipped.",
|
|
150
|
-
expectedData: { horizontalScrollPresent: false },
|
|
151
|
-
endResult: "Nothing additional persists from this layout check.",
|
|
152
|
-
},
|
|
153
|
-
"checklist-buying-buying-checkout-checkout-multi-seller-split": {
|
|
154
|
-
roles: ["buyer"],
|
|
155
|
-
startPage: "/cart",
|
|
156
|
-
steps: [
|
|
157
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
158
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart' (store-beyblade-arena).",
|
|
159
|
-
"Open /prize-draws/prizedraw-beyblade-mystery-box and enter it once at ₹99 (store-letitrip-official) — this is the only second seller in the catalogue.",
|
|
160
|
-
"Open /cart and confirm the Cart tab groups the two lines under two named sellers, Beyblade Arena and LetItRip Official.",
|
|
161
|
-
"Click 'Proceed to checkout'.",
|
|
162
|
-
"Select the existing address and click 'Continue' through each step.",
|
|
163
|
-
"Complete the checkout.",
|
|
164
|
-
],
|
|
165
|
-
inputs: {
|
|
166
|
-
storeAProduct: "product-beyblade-burst-valkyrie",
|
|
167
|
-
storeBProduct: "prizedraw-beyblade-mystery-box",
|
|
168
|
-
},
|
|
169
|
-
expectedBehaviour: "The checkout splits items from different sellers into separate orders, because storeId is the order-splitting key and per-store shipping, add-ons and payouts hang off it. The buyer receives one order per seller rather than a single combined order.",
|
|
170
|
-
expectedUiState: "On the order confirmation page, two separate order entries are shown — one for store-beyblade-arena (Beyblade Burst B-01 Valkyrie, ₹999) and one for store-letitrip-official (Beyblade Mystery Box, ₹99 entry). Each subtotal matches only that seller's items. A single combined order, or two orders both attributed to the same seller, is the failure.",
|
|
171
|
-
expectedData: { orderCount: 2 },
|
|
172
|
-
endResult: "Two separate orders exist in /user/orders — one per seller — and both survive a reload.",
|
|
173
|
-
},
|
|
174
|
-
"checklist-buying-buying-checkout-checkout-order-review": {
|
|
175
|
-
roles: ["buyer"],
|
|
176
|
-
startPage: "/products/product-beyblade-burst-valkyrie",
|
|
177
|
-
steps: [
|
|
178
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
179
|
-
"Open /products/product-beyblade-burst-valkyrie.",
|
|
180
|
-
"Click 'Add to Cart'.",
|
|
181
|
-
"Open /cart.",
|
|
182
|
-
"Click 'Proceed to checkout'.",
|
|
183
|
-
"On Step 1, select the existing address 'Home — 123 Stadium Lane, Vijay Nagar, Indore, Madhya Pradesh 452010'.",
|
|
184
|
-
"Click 'Continue'.",
|
|
185
|
-
"On Step 2 (Add-ons & fees), read the Order Summary panel before proceeding.",
|
|
186
|
-
],
|
|
187
|
-
expectedBehaviour: "The Order Summary panel during checkout accurately reflects the items in the cart, their quantities, the selected shipping address, and a correct total.",
|
|
188
|
-
expectedUiState: "The Order Summary panel shows: 'Shipping to Mock User 3, 123 Stadium Lane, Indore'; Subtotal with the correct item price(s); Platform fee; GST; and a correct Total. The item 'Beyblade Burst B-01 Valkyrie' at ₹999.00 is included.",
|
|
189
|
-
endResult: "Nothing additional persists from this review step. The order is not placed until payment is completed.",
|
|
190
|
-
},
|
|
191
|
-
"checklist-buying-buying-checkout-checkout-order-summary-full-breakdown": {
|
|
192
|
-
roles: ["buyer"],
|
|
193
|
-
startPage: "/checkout",
|
|
194
|
-
steps: [
|
|
195
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
196
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
197
|
-
"Complete Step 1 (address) and advance to Step 2 (Add-ons & fees).",
|
|
198
|
-
"Check the 'WhatsApp order updates (+₹10.00)' checkbox.",
|
|
199
|
-
"Check the 'Gift wrap (+₹49.00)' checkbox.",
|
|
200
|
-
"Read the Order Summary panel.",
|
|
201
|
-
],
|
|
202
|
-
expectedBehaviour: "The Order Summary panel on the payment step shows Shipping, individual checked add-on fees (WhatsApp updates and Gift wrap), GST, and Coupon discount (if any) as separate line items — not just Subtotal and Total. The Total updates to include the newly checked add-ons.",
|
|
203
|
-
expectedUiState: "The Order Summary shows individual line items: Subtotal, 'WhatsApp order updates' at ₹10.00, 'Gift wrap' at ₹49.00, Platform fee, GST, and Total. The Total is higher than Subtotal alone and matches Subtotal + add-ons + fees. Unchecked add-ons (Shipment protection) do not appear.",
|
|
204
|
-
endResult: "The Total shown in the Order Summary matches the Total on the order confirmation page after payment is completed.",
|
|
205
|
-
},
|
|
206
|
-
"checklist-buying-buying-checkout-checkout-otp-highvalue": {
|
|
207
|
-
roles: ["buyer"],
|
|
208
|
-
startPage: "/checkout",
|
|
209
|
-
steps: [
|
|
210
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
211
|
-
"Open /products/product-beyblade-original-dranzer-s and click 'Add to Cart' — ₹1,499.",
|
|
212
|
-
"Open /products/product-beyblade-original-driger-v and click 'Add to Cart' — ₹1,799.",
|
|
213
|
-
"Open /products/product-beyblade-metal-storm-pegasus and click 'Add to Cart' — ₹1,299.",
|
|
214
|
-
"Open /products/product-beyblade-burst-regalia-genesis and click 'Add to Cart' — ₹1,399.",
|
|
215
|
-
"Open /cart and read the subtotal, which is ₹5,996.",
|
|
216
|
-
"Click 'Proceed to checkout'.",
|
|
217
|
-
"On Step 1, select the existing address and click 'Continue'.",
|
|
218
|
-
"On Step 2, click 'Continue to payment'.",
|
|
219
|
-
"On Step 3, select any non-COD payment method.",
|
|
220
|
-
"Read the payment step for a 'Verify this order' prompt.",
|
|
221
|
-
"Open /cart in another tab, remove the ₹1,399 item so the subtotal is ₹4,597, and run the same checkout to the payment step.",
|
|
222
|
-
],
|
|
223
|
-
inputs: { otpThreshold: 5000, subtotalAbove: 5996, subtotalBelow: 4597 },
|
|
224
|
-
expectedBehaviour: "Above the ₹5,000 threshold and on a non-COD method, checkout inserts an emailed one-time code before payment. Below it, payment proceeds with no OTP at all — which is why the second half matters: a prompt that appears for every cart is not a threshold.",
|
|
225
|
-
expectedUiState: "At ₹5,996 a 'Verify this order' prompt appears with a code field and names the masked email it went to. At ₹4,597 no such prompt appears and the payment control is reached directly. A failure to send shows readable English, not a raw provider error code.",
|
|
226
|
-
expectedData: { otpRequiredAbove: true, otpRequiredBelow: false },
|
|
227
|
-
endResult: "Entering the correct code completes the order. Three items only add to ₹4,597 — the fourth is what actually crosses the threshold, and an earlier draft of this case stopped at three and could never have triggered the prompt it was checking for.",
|
|
228
|
-
},
|
|
229
|
-
"checklist-buying-buying-checkout-checkout-phonepe-charge-includes-shipping": {
|
|
230
|
-
roles: ["buyer"],
|
|
231
|
-
startPage: "/checkout",
|
|
232
|
-
steps: [
|
|
233
|
-
"Sign in as admin@letitrip.in / TempPass123!, open /admin/site, switch to the Shipping tab and confirm the 'PhonePe (online card/UPI) enabled' toggle is ON, and confirm the seller store-beyblade-arena has a configured shipping fee.",
|
|
234
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
235
|
-
"Open /products/product-beyblade-burst-valkyrie (price ₹999, store-beyblade-arena) and click 'Add to Cart'.",
|
|
236
|
-
"Complete Steps 1 and 2 of checkout.",
|
|
237
|
-
"On Step 3, select 'Pay Online (PhonePe)'.",
|
|
238
|
-
"Read the amount shown in the Order Summary before clicking the button.",
|
|
239
|
-
"Click 'Pay Online (PhonePe)' and observe the amount displayed inside the PhonePe checkout iframe.",
|
|
240
|
-
],
|
|
241
|
-
expectedBehaviour: "The amount shown inside the PhonePe checkout iframe must exactly match the Total shown in the Order Summary panel, including the seller's shipping fee. No discrepancy between the gateway charge and the recorded order total. This regression was originally fixed against Razorpay in 2026-08-20; PhonePe replaced Razorpay entirely and the pre-charge amount is built by the same fee-calculation code, so it is reachable through the new gateway too.",
|
|
242
|
-
expectedUiState: "The PhonePe iframe opens and shows a rupee amount that exactly matches the Total in the Order Summary (e.g. if the Order Summary shows ₹1,149.00, the PhonePe iframe shows ₹1,149.00 — not ₹999.00 or any other amount).",
|
|
243
|
-
endResult: "After payment, the order confirmation page shows a Total that matches the PhonePe iframe amount exactly.",
|
|
244
|
-
},
|
|
245
|
-
"checklist-buying-buying-checkout-emi-checkout-flow": {
|
|
246
|
-
roles: ["buyer"],
|
|
247
|
-
startPage: "/checkout",
|
|
248
|
-
steps: [
|
|
249
|
-
"Sign in as admin@letitrip.in / TempPass123! and confirm EMI is enabled in Site Settings → Payments → EMI.",
|
|
250
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
251
|
-
"Open /products/live-golden-retriever-puppy and click 'Add to Cart' — ₹25,000.",
|
|
252
|
-
"Complete Steps 1 and 2 of checkout.",
|
|
253
|
-
"On Step 3, read the payment methods and select 'EMI'.",
|
|
254
|
-
"Read the tenure options, the token amount and the surcharge.",
|
|
255
|
-
"Select a tenure and place the order.",
|
|
256
|
-
"Open /user/orders and open the order just created.",
|
|
257
|
-
"Open /cart in another tab, replace the item with product-beyblade-burst-valkyrie (₹999), and reach the payment step again.",
|
|
258
|
-
],
|
|
259
|
-
inputs: { highValueItem: "live-golden-retriever-puppy", highValuePrice: 25000, lowValuePrice: 999 },
|
|
260
|
-
expectedBehaviour: "EMI is offered only above the eligibility threshold and only when the seller has opted in — the site-wide flag alone is not enough. A ₹999 cart must not offer it. The buyer is quoted from the buyer-facing settings, which exclude the platform-versus-seller surcharge split; that figure is server-side only and must never reach the payment step.",
|
|
261
|
-
expectedUiState: "At ₹25,000 the payment step lists tenures with a per-instalment amount, a token amount and a surcharge for each. After placing the order its detail page shows the full instalment schedule. At ₹999 no EMI option appears at all.",
|
|
262
|
-
expectedData: { emiOfferedHighValue: true, emiOfferedLowValue: false },
|
|
263
|
-
endResult: "The schedule survives a reload of the order page. The low-value half is the real check — an EMI badge on a ₹1,499 product was a live bug caused by reading only the site-wide flag, and a case that only ever tests a large cart passes straight over it.",
|
|
264
|
-
},
|
|
265
|
-
"checklist-buying-buying-checkout-gst-breakdown-display": {
|
|
266
|
-
roles: ["buyer"],
|
|
267
|
-
startPage: "/checkout",
|
|
268
|
-
steps: [
|
|
269
|
-
"Sign in as admin@letitrip.in / TempPass123! and verify that Site Settings → Tax → GST is enabled.",
|
|
270
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
271
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
272
|
-
"Open /cart and click 'Proceed to checkout'.",
|
|
273
|
-
"On Step 1, select the existing address 'Home — 123 Stadium Lane, Vijay Nagar, Indore, Madhya Pradesh 452010' and click 'Continue'.",
|
|
274
|
-
"On Step 2, read the Order Summary panel.",
|
|
275
|
-
],
|
|
276
|
-
inputs: { productId: "product-beyblade-burst-valkyrie", price: 999 },
|
|
277
|
-
expectedBehaviour: "When GST is enabled, the Order Summary shows a GST line item. The breakdown is CGST+SGST when buyer and seller are in the same state, or IGST when they are in different states.",
|
|
278
|
-
expectedUiState: "The Order Summary panel shows a 'GST' line item (e.g. ₹1.80). The label or tooltip distinguishes CGST/SGST from IGST based on buyer vs seller state.",
|
|
279
|
-
endResult: "Nothing additional persists from viewing the GST breakdown.",
|
|
280
|
-
},
|
|
281
|
-
"checklist-buying-buying-checkout-order-confirmation": {
|
|
282
|
-
roles: ["buyer"],
|
|
283
|
-
startPage: "/checkout",
|
|
284
|
-
steps: [
|
|
285
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
286
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
287
|
-
"Complete the full checkout flow (address → add-ons → payment).",
|
|
288
|
-
"Land on the order confirmation page.",
|
|
289
|
-
"Check the registered email (rehan.sheikh@gmail.com) for a confirmation email.",
|
|
290
|
-
],
|
|
291
|
-
inputs: { productId: "product-beyblade-burst-valkyrie", price: 999 },
|
|
292
|
-
expectedBehaviour: "The order confirmation page shows correct order details matching what was in the cart. A confirmation email is sent to the buyer's registered address with the same order details.",
|
|
293
|
-
expectedUiState: "The order confirmation page shows: an order number, the item 'Beyblade Burst B-01 Valkyrie' at ₹999.00, the shipping address '123 Stadium Lane, Vijay Nagar, Indore, Madhya Pradesh 452010', and a Total that matches the checkout summary.",
|
|
294
|
-
endResult: "After reloading the order confirmation URL, all details remain visible and the order is not cancelled.",
|
|
295
|
-
},
|
|
296
|
-
"checklist-buying-buying-checkout-out-of-stock-policy-cancel": {
|
|
297
|
-
roles: ["buyer"],
|
|
298
|
-
startPage: "/checkout",
|
|
299
|
-
steps: [
|
|
300
|
-
/*
|
|
301
|
-
* 🛑 THE BUYER CHOOSES THIS AT CHECKOUT — it is not an admin setting.
|
|
302
|
-
*
|
|
303
|
-
* This step said "Sign in as admin and set Site Settings → Checkout →
|
|
304
|
-
* Out-of-stock policy". There is no such setting: `outOfStockPolicy` is a
|
|
305
|
-
* POLICY_SECTIONS field rendered by CheckoutRouteClient and passed
|
|
306
|
-
* straight into createCheckoutOrder. It appears nowhere in the admin
|
|
307
|
-
* feature. A tester would have hunted through Site Settings, not found
|
|
308
|
-
* it, and answered "could not test".
|
|
309
|
-
*
|
|
310
|
-
* The option labels were wrong too — 'Cancel whole order' is the app's
|
|
311
|
-
* "Cancel my whole order", and the sibling case's 'Skip unavailable
|
|
312
|
-
* items' is actually "Ship what's available and refund the rest", which
|
|
313
|
-
* shares no words with what the case asked for.
|
|
314
|
-
*/
|
|
315
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
316
|
-
"Add product-beyblade-burst-valkyrie (₹999, stock 10) and product-beyblade-original-dranzer-s (₹1,499) to the cart.",
|
|
317
|
-
"Open /checkout and advance to the payment step.",
|
|
318
|
-
"Under 'If an item goes out of stock', select 'Cancel my whole order'.",
|
|
319
|
-
"Before submitting, have another session reduce product-beyblade-burst-valkyrie's stock to 0.",
|
|
320
|
-
"Submit the checkout.",
|
|
321
|
-
],
|
|
322
|
-
inputs: { policy: "Cancel my whole order", goesOutOfStock: "product-beyblade-burst-valkyrie" },
|
|
323
|
-
expectedBehaviour: "With the cancel-whole-order policy, if any item in the batch goes out of stock mid-checkout, the entire checkout is rejected. No order is created and the buyer receives an error.",
|
|
324
|
-
expectedUiState: "After submitting, an error message is shown indicating that an item went out of stock and the entire order was cancelled. No order confirmation page is shown.",
|
|
325
|
-
expectedData: { ordersCreated: 0 },
|
|
326
|
-
endResult: "After reloading /cart, both items are still present in the cart (or the buyer is able to restart the checkout). No order record exists for this attempt.",
|
|
327
|
-
},
|
|
328
|
-
"checklist-buying-buying-checkout-out-of-stock-policy-skip": {
|
|
329
|
-
roles: ["buyer"],
|
|
330
|
-
startPage: "/checkout",
|
|
331
|
-
steps: [
|
|
332
|
-
/* Buyer-chosen at checkout, not an admin setting — see the sibling case. */
|
|
333
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
334
|
-
"Add product-beyblade-burst-valkyrie (₹999, stock 10) and product-beyblade-original-dranzer-s (₹1,499) to the cart.",
|
|
335
|
-
"Open /checkout and advance to the payment step.",
|
|
336
|
-
"Under 'If an item goes out of stock', select 'Ship what's available and refund the rest'.",
|
|
337
|
-
"Before submitting, have another session reduce product-beyblade-original-dranzer-s's stock to 0.",
|
|
338
|
-
"Submit the checkout.",
|
|
339
|
-
],
|
|
340
|
-
inputs: { policy: "Ship what's available and refund the rest", goesOutOfStock: "product-beyblade-original-dranzer-s" },
|
|
341
|
-
expectedBehaviour: "With the ship-what's-available policy, the out-of-stock item is dropped and an order is placed for only the still-available item(s). The buyer is informed which item was skipped.",
|
|
342
|
-
expectedUiState: "After submitting, the order confirmation page shows only product-beyblade-burst-valkyrie (₹999). A notice is shown indicating that product-beyblade-original-dranzer-s was unavailable and was removed from the order.",
|
|
343
|
-
expectedData: { orderLineCount: 1 },
|
|
344
|
-
endResult: "After reloading the order detail page, only product-beyblade-burst-valkyrie is listed in the order. product-beyblade-original-dranzer-s is not included.",
|
|
345
|
-
},
|
|
346
|
-
"checklist-buying-buying-checkout-payment-auto-approve-dispute": {
|
|
347
|
-
roles: ["buyer"],
|
|
348
|
-
startPage: "/checkout",
|
|
349
|
-
steps: [
|
|
350
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
351
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
352
|
-
"Complete checkout with UPI/Cash payment and upload a valid payment proof.",
|
|
353
|
-
"Wait 2 hours without the admin manually approving the order.",
|
|
354
|
-
"Reload the order detail page after 2 hours.",
|
|
355
|
-
"Click 'Raise a dispute' on the auto-approved order.",
|
|
356
|
-
],
|
|
357
|
-
inputs: { autoApproveHours: 2 },
|
|
358
|
-
expectedBehaviour: "After 2 hours with no admin action, the order is auto-approved and shows a badge indicating auto-approval. The 'Raise a dispute' button is present and submits successfully.",
|
|
359
|
-
expectedUiState: "The order detail page shows an auto-approved badge (e.g. 'Auto-approved' or similar label). A 'Raise a dispute' button is visible. After clicking it, a dispute form or confirmation appears, and submitting it succeeds without an error.",
|
|
360
|
-
endResult: "After reloading the order detail page, the dispute is recorded and the order status reflects the dispute.",
|
|
361
|
-
},
|
|
362
|
-
"checklist-buying-buying-checkout-payment-method-selection": {
|
|
363
|
-
roles: ["buyer"],
|
|
364
|
-
startPage: "/checkout",
|
|
365
|
-
steps: [
|
|
366
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
367
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
368
|
-
"Open /cart and click 'Proceed to checkout'.",
|
|
369
|
-
"Select the existing address and click 'Continue' through Step 1 and Step 2.",
|
|
370
|
-
"On Step 3 (Payment), read the available payment methods.",
|
|
371
|
-
"Select 'COD' (Cash on Delivery) if available and observe the UI.",
|
|
372
|
-
"Select 'UPI / Cash' (manual payment) and observe the UI.",
|
|
373
|
-
"If 'Pay Online (PhonePe)' is listed, select it and observe the UI.",
|
|
374
|
-
],
|
|
375
|
-
inputs: { productId: "product-beyblade-burst-valkyrie" },
|
|
376
|
-
expectedBehaviour: "Each payment method option can be selected and the UI adapts accordingly — COD shows a COD confirmation, manual payment shows a how-it-works guide and consent checkbox, PhonePe (when enabled) opens the hosted checkout iframe.",
|
|
377
|
-
expectedUiState: "Step 3 lists the available payment methods as selectable options. Selecting each one changes the lower section of the form to show method-specific instructions or controls. At least COD and UPI/Cash are shown.",
|
|
378
|
-
endResult: "Nothing persists until payment is actually submitted.",
|
|
379
|
-
},
|
|
380
|
-
"checklist-buying-buying-checkout-payment-proof-reupload": {
|
|
381
|
-
roles: ["buyer"],
|
|
382
|
-
startPage: "/checkout",
|
|
383
|
-
steps: [
|
|
384
|
-
"Sign in as admin@letitrip.in / TempPass123!.",
|
|
385
|
-
"Locate an existing manual-payment order that has proof submitted and request a proof re-upload from the order management panel.",
|
|
386
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
387
|
-
"Open the order's payment proof page.",
|
|
388
|
-
"Upload a new screenshot file as replacement proof.",
|
|
389
|
-
"Enter a new UTR number.",
|
|
390
|
-
"Check the agreement checkbox and submit.",
|
|
391
|
-
],
|
|
392
|
-
inputs: { proofFile: "public/test-media/sample-image.png", utr: "QA UTR reupload 552310" },
|
|
393
|
-
expectedBehaviour: "When an admin requests a re-upload, the buyer's payment window is extended and the proof upload form becomes active again. The buyer can submit new proof successfully.",
|
|
394
|
-
expectedUiState: "The payment proof page shows an active upload form (not locked). The countdown reflects the extended deadline. After submitting, a confirmation message appears.",
|
|
395
|
-
endResult: "After reloading the order detail page, the payment proof status shows the newly submitted proof and the re-upload request is resolved.",
|
|
396
|
-
},
|
|
397
|
-
"checklist-buying-buying-checkout-payment-proof-upload": {
|
|
398
|
-
roles: ["buyer"],
|
|
399
|
-
startPage: "/checkout",
|
|
400
|
-
steps: [
|
|
401
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
402
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
403
|
-
"Complete checkout with 'UPI / Cash' payment — check the consent checkbox and click 'Pay via UPI / Cash'.",
|
|
404
|
-
"On the payment proof page, upload a screenshot file as proof.",
|
|
405
|
-
"Enter a UTR number in the UTR field.",
|
|
406
|
-
"Check the 'mark-as-paid' agreement checkbox.",
|
|
407
|
-
"Click the submit/upload button.",
|
|
408
|
-
],
|
|
409
|
-
inputs: { proofFile: "public/test-media/sample-image.png", utr: "QA UTR upload 118427" },
|
|
410
|
-
expectedBehaviour: "The payment proof (screenshot file, UTR, and agreement checkbox) is accepted and submitted successfully. The order status updates to reflect that proof has been submitted and is awaiting admin review.",
|
|
411
|
-
expectedUiState: "After submission, a confirmation message appears (e.g. 'Proof submitted' or similar). The upload form is no longer editable or is replaced by a 'proof received' state. The countdown timer is still visible.",
|
|
412
|
-
endResult: "After reloading the order detail page, the payment proof status shows 'submitted' or 'pending review', and the uploaded screenshot is accessible.",
|
|
413
|
-
},
|
|
414
|
-
"checklist-buying-buying-checkout-payment-window-countdown": {
|
|
415
|
-
roles: ["buyer"],
|
|
416
|
-
startPage: "/checkout",
|
|
417
|
-
steps: [
|
|
418
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
419
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
420
|
-
"Open /cart and click 'Proceed to checkout'.",
|
|
421
|
-
"Complete Steps 1 and 2 of checkout.",
|
|
422
|
-
"On Step 3, select 'UPI / Cash' (manual payment).",
|
|
423
|
-
"Check the consent checkbox and click 'Pay via UPI / Cash'.",
|
|
424
|
-
"Wait 3 seconds on the page that loads after clicking 'Pay via UPI / Cash'.",
|
|
425
|
-
],
|
|
426
|
-
inputs: { paymentWindowMinutes: 15 },
|
|
427
|
-
expectedBehaviour: "After a manual-payment order is placed, the payment proof page shows a countdown timer giving the buyer 15 minutes to upload proof.",
|
|
428
|
-
expectedUiState: "The payment proof page displays a countdown reading approximately '0d 0h 14m Xs' (roughly 15 minutes from placement) and it is visibly ticking down in seconds. A payment proof upload section is also present on the same page.",
|
|
429
|
-
endResult: "After reloading the payment proof page, the countdown continues from where it left off (not reset) and the timer is still counting down toward zero.",
|
|
430
|
-
},
|
|
431
|
-
"checklist-buying-buying-checkout-payment-window-expiry": {
|
|
432
|
-
roles: ["buyer"],
|
|
433
|
-
startPage: "/checkout",
|
|
434
|
-
steps: [
|
|
435
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
436
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
437
|
-
"Complete checkout with 'UPI / Cash' payment — check the consent checkbox and click 'Pay via UPI / Cash'.",
|
|
438
|
-
"Do not upload any payment proof.",
|
|
439
|
-
"Wait for the 15-minute payment window to expire (or ask the admin to manually expire it via the admin panel).",
|
|
440
|
-
"Reload the order detail page.",
|
|
441
|
-
],
|
|
442
|
-
inputs: { paymentWindowMinutes: 15 },
|
|
443
|
-
expectedBehaviour: "Once the 15-minute window expires with no proof submitted, the order is automatically cancelled and the item's stock is restored.",
|
|
444
|
-
expectedUiState: "The order detail page shows a cancelled status. The payment proof upload form is no longer available.",
|
|
445
|
-
expectedData: { orderCancelled: true },
|
|
446
|
-
endResult: "After reloading /products/product-beyblade-burst-valkyrie, the stock count reflects the restored item (the stock is back to at least what it was before the order was placed).",
|
|
447
|
-
},
|
|
448
|
-
"checklist-buying-buying-checkout-shipping-address": {
|
|
449
|
-
roles: ["buyer"],
|
|
450
|
-
startPage: "/checkout",
|
|
451
|
-
steps: [
|
|
452
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
453
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
454
|
-
"Open /cart and click 'Proceed to checkout'.",
|
|
455
|
-
"On Step 1 (Shipping Address), click the address card 'Home — 123 Stadium Lane, Vijay Nagar, Indore, Madhya Pradesh 452010' to select it.",
|
|
456
|
-
"Click 'Continue'.",
|
|
457
|
-
],
|
|
458
|
-
inputs: { addressLabel: "Home" },
|
|
459
|
-
expectedBehaviour: "Selecting an existing address enables the Continue button and passes the address to the next step and the Order Summary.",
|
|
460
|
-
expectedUiState: "After clicking the address card, the Order Summary panel updates to show 'Shipping to Mock User 3, 123 Stadium Lane, Indore' and the 'Continue' button is no longer disabled.",
|
|
461
|
-
endResult: "The selected address is carried into Step 2 and shown in the Order Summary panel throughout the remaining checkout steps.",
|
|
462
|
-
},
|
|
463
|
-
"checklist-buying-buying-checkout-shipping-address-edit": {
|
|
464
|
-
roles: ["buyer"],
|
|
465
|
-
startPage: "/checkout",
|
|
466
|
-
steps: [
|
|
467
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
468
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
469
|
-
"Open /cart and click 'Proceed to checkout'.",
|
|
470
|
-
"On Step 1 (Shipping Address), locate the existing address and click its edit control.",
|
|
471
|
-
"Change the street field from its current value to 'QA Address buying-checkout-shipping-address-edit Updated Street'.",
|
|
472
|
-
"Save the changes.",
|
|
473
|
-
"Select the updated address and click 'Continue'.",
|
|
474
|
-
],
|
|
475
|
-
inputs: { street: "QA Address shipping-address-edit Updated Street" },
|
|
476
|
-
expectedBehaviour: "The address edit form opens inline, saves successfully, and the updated address is immediately reflected in the address list without leaving the checkout flow.",
|
|
477
|
-
expectedUiState: "After saving, the address list shows the updated street 'QA Address buying-checkout-shipping-address-edit Updated Street'. The Order Summary reflects the updated address when it is selected.",
|
|
478
|
-
endResult: "After reloading /user/addresses or revisiting the checkout, the address retains the updated street value.",
|
|
479
|
-
},
|
|
480
|
-
"checklist-buying-buying-checkout-shipping-address-inline-add": {
|
|
481
|
-
roles: ["buyer"],
|
|
482
|
-
startPage: "/checkout",
|
|
483
|
-
steps: [
|
|
484
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
485
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
486
|
-
"Open /cart and click 'Proceed to checkout'.",
|
|
487
|
-
"On Step 1 (Shipping Address), click '+ Add new address'.",
|
|
488
|
-
"Fill in the address form: Name 'QA Address buying-checkout-shipping-address-inline-add', Street '1 Test Street', City 'Mumbai', State 'Maharashtra', Pincode '400001'.",
|
|
489
|
-
"Save the new address.",
|
|
490
|
-
"Click the newly saved address card 'QA Address buying-checkout-shipping-address-inline-add' in the list.",
|
|
491
|
-
"Click 'Continue'.",
|
|
492
|
-
],
|
|
493
|
-
inputs: { name: "QA Address shipping-address-inline-add", street: "1 Test Street", city: "Mumbai", state: "Maharashtra", pincode: "400001" },
|
|
494
|
-
expectedBehaviour: "A new address is saved without leaving the checkout flow and is immediately available for selection on Step 1.",
|
|
495
|
-
expectedUiState: "After saving, the address 'QA Address buying-checkout-shipping-address-inline-add, 1 Test Street, Mumbai, Maharashtra 400001' appears in the address list on Step 1 and can be selected. The 'Continue' button becomes enabled once it is selected.",
|
|
496
|
-
endResult: "After completing the checkout, the saved address 'QA Address buying-checkout-shipping-address-inline-add' remains in the buyer's address book.",
|
|
497
|
-
},
|
|
498
|
-
"checklist-buying-buying-checkout-shipping-method-selection": {
|
|
499
|
-
roles: ["buyer"],
|
|
500
|
-
startPage: "/checkout",
|
|
501
|
-
steps: [
|
|
502
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
503
|
-
"Open /products/product-beyblade-burst-valkyrie and click 'Add to Cart'.",
|
|
504
|
-
"Open /cart and click 'Proceed to checkout'.",
|
|
505
|
-
"On Step 1, select the existing address 'Home — 123 Stadium Lane, Vijay Nagar, Indore, Madhya Pradesh 452010' and click 'Continue'.",
|
|
506
|
-
"On Step 2 (Add-ons & fees), if a shipping method selector is present, select a different shipping method and observe the shipping fee in the Order Summary.",
|
|
507
|
-
],
|
|
508
|
-
expectedBehaviour: "Changing the shipping method recalculates the shipping fee shown in the Order Summary immediately. The Total updates to include the new fee.",
|
|
509
|
-
expectedUiState: "The Order Summary shows a 'Shipping' line item that updates when a different shipping method is selected. The Total reflects the new shipping fee.",
|
|
510
|
-
endResult: "The shipping fee carried into the payment step matches the method selected on Step 2.",
|
|
511
|
-
needsReview: true,
|
|
512
|
-
reviewNote: "The step 2 add-ons screen did not show a shipping method selector in the session observed — it may only appear when the seller has configured multiple shipping options. Mark as needs-review until confirmed.",
|
|
513
|
-
},
|
|
514
|
-
/* ── Added 2026-09-14 (F3d) — the SIGNED-OUT checkout ────────────────────────
|
|
515
|
-
* 30 checkout cases existed and NONE was signed-out, so the refusal path — the
|
|
516
|
-
* single most important thing checkout does for a guest — had no coverage at
|
|
517
|
-
* all. Only roles exactly ["guest"] reaches the guest identity slice.
|
|
518
|
-
*/
|
|
519
|
-
"checklist-buying-buying-checkout-checkout-guest-redirected-to-signin": {
|
|
520
|
-
roles: ["guest"],
|
|
521
|
-
startPage: "/checkout",
|
|
522
|
-
steps: [
|
|
523
|
-
"While signed out, open /checkout directly by URL.",
|
|
524
|
-
"Note exactly what renders, and where the URL ends up.",
|
|
525
|
-
"If any form is shown, note which fields it asks for before refusing.",
|
|
526
|
-
],
|
|
527
|
-
expectedBehaviour: "The visitor is sent to sign in. Checkout does not render its address form to a signed-out visitor and only refuse at the end — that wastes the buyer's typing and reads as a bug in the payment step rather than an auth requirement.",
|
|
528
|
-
expectedUiState: "Either /auth/login or an explicit sign-in prompt. No address fields, no payment step, and no partially-rendered checkout shell with a spinner that never resolves.",
|
|
529
|
-
endResult: "No order and no draft address are created. Nothing persists.",
|
|
530
|
-
},
|
|
531
|
-
"checklist-buying-buying-checkout-checkout-guest-returns-after-signin": {
|
|
532
|
-
roles: ["guest"],
|
|
533
|
-
startPage: "/cart",
|
|
534
|
-
steps: [
|
|
535
|
-
"While signed out, add product-beyblade-burst-valkyrie to the cart.",
|
|
536
|
-
"Press the checkout CTA and follow the sign-in prompt.",
|
|
537
|
-
"Sign in as rehan.sheikh@gmail.com / TempPass123!.",
|
|
538
|
-
"Note which page you land on once signed in.",
|
|
539
|
-
"Note whether product-beyblade-burst-valkyrie is still in the cart.",
|
|
540
|
-
],
|
|
541
|
-
expectedBehaviour: "BEFORE: a signed-out visitor with one cart line is stopped at checkout. AFTER signing in they are returned to checkout with that same line still present — the guest cart has merged into the account cart. A redirect that forgets where it came from, or that loses the line, is the same as losing the sale.",
|
|
542
|
-
expectedUiState: "The landing page is checkout or the cart, not the homepage. The line for product-beyblade-burst-valkyrie is present with its original quantity, and prices are now visible because the viewer is signed in.",
|
|
543
|
-
expectedData: { cartLinesAfterSignIn: 1 },
|
|
544
|
-
endResult: "The line now lives in the ACCOUNT cart and will persist across sessions — remove it afterwards so later cases start clean. Place no order.",
|
|
545
|
-
},
|
|
546
|
-
};
|