Skip to content
20 changes: 0 additions & 20 deletions src/app/components/ATIAnalytics/amp/ampAnalyticsJson.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,26 +4,6 @@ import { ReverbBeaconConfig } from '../types';
import ampAnalyticsJson from './ampAnalyticsJson';

describe('AMP ATI Analytics', () => {
it('should match this JSON structure', () => {
expect(
ampAnalyticsJson({
baseUrl: 'https://exampleBaseAtiUrl.com?',
pageviewParams: 'param1=value1&param2=value2',
}),
).toEqual({
transport: {
beacon: false,
xhrpost: false,
image: true,
},
requests: {
base: 'https://exampleBaseAtiUrl.com?',
pageview: '${base}param1=value1&param2=value2', // eslint-disable-line no-template-curly-in-string
},
triggers: { trackPageview: { on: 'visible', request: 'pageview' } },
});
});

describe('Reverb URL Helper - getAmpAnalyticsPageViewUrl', () => {
const mockReverbParams = {
params: {
Expand Down
14 changes: 3 additions & 11 deletions src/app/components/ATIAnalytics/amp/ampAnalyticsJson.ts
Original file line number Diff line number Diff line change
Expand Up @@ -34,17 +34,9 @@ const applyGeoVariantDestinationForSupportedServices = ({
};
};

const ampAnalyticsJson = ({
baseUrl,
pageviewParams,
reverbParams,
}: ATIAnalyticsProps) => {
const ampAnalyticsRequestConfiguration = reverbParams
? reverbUrlHelper.getAmpAnalyticsPageViewUrl(reverbParams)
: {
base: baseUrl,
pageview: '${base}' + pageviewParams,
};
const ampAnalyticsJson = ({ reverbParams }: ATIAnalyticsProps) => {
const ampAnalyticsRequestConfiguration =
reverbUrlHelper.getAmpAnalyticsPageViewUrl(reverbParams);

const appName =
reverbParams?.params.page.additionalProperties?.app_name ?? '';
Expand Down
21 changes: 0 additions & 21 deletions src/app/components/ATIAnalytics/amp/index.test.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,31 +6,10 @@ import { ReverbBeaconConfig } from '../types';
import splitUrl from '../atiUrl/splitUrl';

describe('Amp ATI Analytics', () => {
const atiBaseUrl = 'https://foobar.com?';

beforeEach(() => {
jest.resetModules();
});

it('creates an AMP analytics container with required parameters', () => {
process.env.SIMORGH_ATI_BASE_URL = atiBaseUrl;

const { container } = render(
<AmpATIAnalytics pageviewParams="key1=value1&key2=value2" />,
);

expect(container.querySelectorAll('amp-analytics').length).toEqual(1);
expect(
container.querySelectorAll(
'amp-analytics script[type="application/json"]',
).length,
).toEqual(1);
expect(
container.querySelector('amp-analytics script[type="application/json"]')
?.innerHTML,
).toMatch(atiBaseUrl);
});

it('creates an AMP analytics container with required parameters when the reverbParams prop is provided', () => {
const mockReverbParams = {
params: {
Expand Down
8 changes: 1 addition & 7 deletions src/app/components/ATIAnalytics/amp/index.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
/** @jsx jsx */
import { jsx } from '@emotion/react';
import { getEnvConfig } from '#app/lib/utilities/getEnvConfig';
import getAmpAnalyticsJson from './ampAnalyticsJson';
import { ATIAnalyticsProps, AMPAnalyticsData } from '../types';

Expand All @@ -12,16 +11,11 @@ const JsonInlinedScript = (data: AMPAnalyticsData) => (
/>
);

const AmpATIAnalytics = ({
pageviewParams,
reverbParams,
}: ATIAnalyticsProps) => {
const AmpATIAnalytics = ({ reverbParams }: ATIAnalyticsProps) => {
return (
<amp-analytics data-e2e="ati-amp-analytics">
{JsonInlinedScript(
getAmpAnalyticsJson({
baseUrl: getEnvConfig().SIMORGH_ATI_BASE_URL,
pageviewParams,
reverbParams,
}),
)}
Expand Down
2 changes: 1 addition & 1 deletion src/app/components/ATIAnalytics/canonical/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ const addScript = ({ script, parameters, nonce }: InlineScriptProps) => {
};

const CanonicalATIAnalytics = ({
pageviewParams,
pageviewParams = '',
reverbParams,
}: ATIAnalyticsProps) => {
const { isLite, nonce } = use(RequestContext);
Expand Down
Loading
Loading