From 19610741699bf33a41456c49f269b05c0861265d Mon Sep 17 00:00:00 2001 From: Yashasvi Bajpai <33063622+yashasvibajpai@users.noreply.github.com> Date: Mon, 11 Mar 2024 02:09:09 +0530 Subject: [PATCH] feat: add dcfaid support, add test --- .../__tests__/integrations/GoogleAds/__fixtures__/data.js | 4 ++++ .../__tests__/integrations/GoogleAds/browser.test.js | 6 ++++++ .../src/integrations/GoogleAds/browser.js | 5 +++++ 3 files changed, 15 insertions(+) diff --git a/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/__fixtures__/data.js b/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/__fixtures__/data.js index c58764343e..4932414fae 100644 --- a/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/__fixtures__/data.js +++ b/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/__fixtures__/data.js @@ -208,6 +208,10 @@ const googleAdsConfigs = [ { conversionLabel: 'KhF2CKvCs4gYEIXBi58p', name: productAdded }, ], }, + { + conversionId: 'conversionId', + dcfaId: 'dcfaId', + }, ]; const trackCallPayload = { diff --git a/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/browser.test.js b/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/browser.test.js index e8e89c6693..33f4e568c3 100644 --- a/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/browser.test.js +++ b/packages/analytics-js-integrations/__tests__/integrations/GoogleAds/browser.test.js @@ -49,6 +49,12 @@ describe('GoogleAds init tests', () => { googleAds.init(); expect(typeof window.gtag).toBe('function'); }); + + test('should call window.gtag with config and dcfaId when dcfaId is truthy', () => { + const googleAds = new GoogleAds(googleAdsConfigs[7], {}, destinationInfo); + googleAds.init(); + expect(typeof window.gtag).toBe('function'); + }); }); // Old Config Test Cases diff --git a/packages/analytics-js-integrations/src/integrations/GoogleAds/browser.js b/packages/analytics-js-integrations/src/integrations/GoogleAds/browser.js index 4a7d7816f1..03206bbea0 100644 --- a/packages/analytics-js-integrations/src/integrations/GoogleAds/browser.js +++ b/packages/analytics-js-integrations/src/integrations/GoogleAds/browser.js @@ -48,6 +48,7 @@ class GoogleAds { this.dynamicRemarketing = config.dynamicRemarketing; this.allowEnhancedConversions = config.allowEnhancedConversions || false; this.v2 = config.v2 || true; + this.dcfaId = config.dcfaId || ''; this.name = NAME; ({ shouldApplyDeviceModeTransformation: this.shouldApplyDeviceModeTransformation, @@ -77,6 +78,10 @@ class GoogleAds { } window.gtag('config', this.conversionId, config); + + if (this.dcfaId) { + window.gtag('config', this.dcfaId); + } } isLoaded() {