E2E framework plus tests - #3829
Draft
joe-ayoub-segment wants to merge 237 commits into
Draft
Conversation
- Engage fixtures now use createE2EEngageAudienceEvent (via engageEvent wrapper); RETL fixtures use createE2ERetlAudienceEvent (retlEvent); Connections fixtures use createE2EEvent (connectionsEvent) — the dedicated Connections-event helper. - Membership boolean is set opposite to dmp_company_action on realism fixtures to document that dmp_company_action governs (the override is proven in unit tests). - Company identifier rides in enrichedTraits; dropped the duplicate Engage realism fixture (covered by the Engage existing-ADD case). 11/11 pass live. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
… for e2e testing Bring the pinterest-conversions destination code from the pinterest-new-events branch (PR 3820) onto the e2e framework branch so the new events/fields can be exercised against Pinterest via the e2e fixtures. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ges validation, network_type enum, item_brand_id max - Add validateLanguages: each device_info.languages value must be a 2-char ISO 639-1 code; handles a single string or an array; throws PayloadValidationError. - Add network_type enum choices (wifi, cellular_2g..6g, ethernet, unknown). - Add maximum:64 to getContentsField item_brand_id. - Tests for the languages validation. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…ll passing) Cover all 22 event types, new fields (app_info/device_info/custom_data_2/contents), legacy + undefined-data_format paths, invalid-payload validation, and the 7-day server rejection. All 34 fixtures pass against the Pinterest test account. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…leProduct Cover all presets routing to the ecommerce actions, incl. the new Product Added / Product Removed (cart_updated add/remove) presets: - ecommerce: order placed, checkout started, order refunded, order cancelled, product added, product removed, cart replace, cart minimal, mixed batch, missing-identifier validation error (10 fixtures) - ecommerceSingleProduct: product viewed, catalog_type, batch (3 fixtures) - braze/__e2e__/index.ts destination config (api_key/app_id via $env, iad-01 endpoint) All 13 fixtures pass against live Braze (syncMode add). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…updated
Integrates the STRATCONN-6937 batch multistatus fix into the cart_updated
feature branch:
- send(): match Braze errors on the sent-array index (payload.index),
skip payloads filtered by validate(), null-safe errors lookup
- per-item sent/body: sent = transformed event (object) when sent, body =
{ success: true } on 2xx and error.type on Braze error; omit both when
nothing was sent (invalid syncMode / validate() filter)
- reconcile multistatus unit tests + add regression tests for filtered-index
attribution and fully-successful batch
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This is a staging/integration branch, not a merge candidate. It exists so that end-to-end (e2e) tests can be authored for in-flight PRs before the e2e framework itself lands on main. Treat it as a working surface for e2e test development, not a feature PR.
Do not merge this into main. The underlying feature work lives in its own individual PRs (linked below), which go through the normal review/merge process on their own.
What's in this branch
Branched from feat/e2e-test-types-and-fixtures (the e2e framework PR #3817), with the following feature branches merged in to provide the destination code the e2e tests need to exercise:
One merge conflict was resolved (braze/index.ts — Track Calls preset subscribe filter, kept the superset that excludes Product Added/Product Removed, consistent with the dedicated presets those branches add).
e2e tests added
google-enhanced-conversions (first destination):
This fills the one e2e coverage gap for g-e-c: the prior fixtures covered Engage, JourneysV1, and RETL, but not the new Journeys V2 support.
Notes