Skip to content

Commit e0da586

Browse files
committed
fix sonar issues
1 parent 5eafe0a commit e0da586

4 files changed

Lines changed: 43 additions & 155 deletions

File tree

src/embed/app.spec.ts

Lines changed: 4 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ import {
2222
defaultParamsWithoutHiddenActions,
2323
expectUrlMatchesWithParams,
2424
postMessageToParent,
25+
testVisualOverridesInEmbed,
2526
} from '../test/test-utils';
2627
import { version } from '../../package.json';
2728
import * as config from '../config';
@@ -1875,33 +1876,8 @@ describe('AppEmbed visualOverrides tests', () => {
18751876
visualOverrides,
18761877
} as AppViewConfig);
18771878

1878-
const mockEmbedEventPayload = {
1879-
type: EmbedEvent.APP_INIT,
1880-
data: {},
1881-
};
1882-
18831879
mockMessageChannel();
1884-
appEmbed.render();
1885-
1886-
const mockPort: any = {
1887-
postMessage: jest.fn(),
1888-
};
1889-
1890-
await executeAfterWait(() => {
1891-
const iframe = getIFrameEl();
1892-
postMessageToParent(iframe.contentWindow, mockEmbedEventPayload, mockPort);
1893-
});
1894-
1895-
await executeAfterWait(() => {
1896-
expect(mockPort.postMessage).toHaveBeenCalledWith({
1897-
type: EmbedEvent.APP_INIT,
1898-
data: expect.objectContaining({
1899-
embedParams: expect.objectContaining({
1900-
visualOverridesParams: visualOverrides,
1901-
}),
1902-
}),
1903-
});
1904-
});
1880+
await testVisualOverridesInEmbed(appEmbed, visualOverrides);
19051881
});
19061882

19071883
test('should not include visualOverridesParams when visualOverrides is not provided', async () => {
@@ -1949,33 +1925,8 @@ describe('AppEmbed visualOverrides tests', () => {
19491925
visualOverrides,
19501926
} as AppViewConfig);
19511927

1952-
const mockEmbedEventPayload = {
1953-
type: EmbedEvent.APP_INIT,
1954-
data: {},
1955-
};
1956-
19571928
mockMessageChannel();
1958-
appEmbed.render();
1959-
1960-
const mockPort: any = {
1961-
postMessage: jest.fn(),
1962-
};
1963-
1964-
await executeAfterWait(() => {
1965-
const iframe = getIFrameEl();
1966-
postMessageToParent(iframe.contentWindow, mockEmbedEventPayload, mockPort);
1967-
});
1968-
1969-
await executeAfterWait(() => {
1970-
expect(mockPort.postMessage).toHaveBeenCalledWith({
1971-
type: EmbedEvent.APP_INIT,
1972-
data: expect.objectContaining({
1973-
embedParams: expect.objectContaining({
1974-
visualOverridesParams: visualOverrides,
1975-
}),
1976-
}),
1977-
});
1978-
});
1929+
await testVisualOverridesInEmbed(appEmbed, visualOverrides);
19791930
});
19801931

19811932
test('should pass visualOverrides with both chart and table configs', async () => {
@@ -1997,33 +1948,8 @@ describe('AppEmbed visualOverrides tests', () => {
19971948
visualOverrides,
19981949
} as AppViewConfig);
19991950

2000-
const mockEmbedEventPayload = {
2001-
type: EmbedEvent.APP_INIT,
2002-
data: {},
2003-
};
2004-
20051951
mockMessageChannel();
2006-
appEmbed.render();
2007-
2008-
const mockPort: any = {
2009-
postMessage: jest.fn(),
2010-
};
2011-
2012-
await executeAfterWait(() => {
2013-
const iframe = getIFrameEl();
2014-
postMessageToParent(iframe.contentWindow, mockEmbedEventPayload, mockPort);
2015-
});
2016-
2017-
await executeAfterWait(() => {
2018-
expect(mockPort.postMessage).toHaveBeenCalledWith({
2019-
type: EmbedEvent.APP_INIT,
2020-
data: expect.objectContaining({
2021-
embedParams: expect.objectContaining({
2022-
visualOverridesParams: visualOverrides,
2023-
}),
2024-
}),
2025-
});
2026-
});
1952+
await testVisualOverridesInEmbed(appEmbed, visualOverrides);
20271953
});
20281954
});
20291955

src/embed/app.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -854,7 +854,8 @@ export class AppEmbed extends V1Embed {
854854
* An invalid `spotterDocumentationUrl` triggers a validation error and is
855855
* excluded from the payload rather than forwarded to the app.
856856
*
857-
* Also sets `embedParams.visualOverridesParams` from {@link AppViewConfig.visualOverrides}.
857+
* Also sets `embedParams.visualOverridesParams` from
858+
* {@link AppViewConfig.visualOverrides}.
858859
*/
859860
protected async getAppInitData(): Promise<AppEmbedAppInitData> {
860861
const defaultAppInitData = await super.getAppInitData();

src/embed/search.spec.ts

Lines changed: 4 additions & 75 deletions
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ import {
1717
expectUrlMatchesWithParams,
1818
getIFrameEl,
1919
postMessageToParent,
20+
testVisualOverridesInEmbed,
2021
} from '../test/test-utils';
2122
import { version } from '../../package.json';
2223
import { SearchBarEmbed } from './search-bar';
@@ -854,32 +855,8 @@ describe('SearchEmbed visualOverrides tests', () => {
854855
...defaultViewConfig,
855856
visualOverrides,
856857
});
857-
const mockEmbedEventPayload = {
858-
type: EmbedEvent.APP_INIT,
859-
data: {},
860-
};
861858

862-
searchEmbed.render();
863-
864-
const mockPort: any = {
865-
postMessage: jest.fn(),
866-
};
867-
868-
await executeAfterWait(() => {
869-
const iframe = getIFrameEl();
870-
postMessageToParent(iframe.contentWindow, mockEmbedEventPayload, mockPort);
871-
});
872-
873-
await executeAfterWait(() => {
874-
expect(mockPort.postMessage).toHaveBeenCalledWith({
875-
type: EmbedEvent.APP_INIT,
876-
data: expect.objectContaining({
877-
embedParams: expect.objectContaining({
878-
visualOverridesParams: visualOverrides,
879-
}),
880-
}),
881-
});
882-
});
859+
await testVisualOverridesInEmbed(searchEmbed, visualOverrides);
883860
});
884861

885862
test('should not include visualOverridesParams when visualOverrides is not provided', async () => {
@@ -931,32 +908,8 @@ describe('SearchEmbed visualOverrides tests', () => {
931908
...defaultViewConfig,
932909
visualOverrides,
933910
});
934-
const mockEmbedEventPayload = {
935-
type: EmbedEvent.APP_INIT,
936-
data: {},
937-
};
938-
939-
searchEmbed.render();
940-
941-
const mockPort: any = {
942-
postMessage: jest.fn(),
943-
};
944-
945-
await executeAfterWait(() => {
946-
const iframe = getIFrameEl();
947-
postMessageToParent(iframe.contentWindow, mockEmbedEventPayload, mockPort);
948-
});
949911

950-
await executeAfterWait(() => {
951-
expect(mockPort.postMessage).toHaveBeenCalledWith({
952-
type: EmbedEvent.APP_INIT,
953-
data: expect.objectContaining({
954-
embedParams: expect.objectContaining({
955-
visualOverridesParams: visualOverrides,
956-
}),
957-
}),
958-
});
959-
});
912+
await testVisualOverridesInEmbed(searchEmbed, visualOverrides);
960913
});
961914

962915
test('should pass visualOverrides with table config', async () => {
@@ -972,31 +925,7 @@ describe('SearchEmbed visualOverrides tests', () => {
972925
...defaultViewConfig,
973926
visualOverrides,
974927
});
975-
const mockEmbedEventPayload = {
976-
type: EmbedEvent.APP_INIT,
977-
data: {},
978-
};
979-
980-
searchEmbed.render();
981928

982-
const mockPort: any = {
983-
postMessage: jest.fn(),
984-
};
985-
986-
await executeAfterWait(() => {
987-
const iframe = getIFrameEl();
988-
postMessageToParent(iframe.contentWindow, mockEmbedEventPayload, mockPort);
989-
});
990-
991-
await executeAfterWait(() => {
992-
expect(mockPort.postMessage).toHaveBeenCalledWith({
993-
type: EmbedEvent.APP_INIT,
994-
data: expect.objectContaining({
995-
embedParams: expect.objectContaining({
996-
visualOverridesParams: visualOverrides,
997-
}),
998-
}),
999-
});
1000-
});
929+
await testVisualOverridesInEmbed(searchEmbed, visualOverrides);
1001930
});
1002931
});

src/test/test-utils.ts

Lines changed: 33 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { has } from 'lodash';
22
import { version } from '../../package.json';
3-
import { Action, AuthType } from '../types';
3+
import { Action, AuthType, EmbedEvent } from '../types';
44

55
/**
66
Initialises fetch to the global object
@@ -166,3 +166,35 @@ export const mockSessionInfo = {
166166
genNo: 5,
167167
},
168168
};
169+
170+
export const testVisualOverridesInEmbed = async (
171+
embed: any,
172+
visualOverrides: any,
173+
) => {
174+
const mockEmbedEventPayload = {
175+
type: EmbedEvent.APP_INIT,
176+
data: {},
177+
};
178+
179+
embed.render();
180+
181+
const mockPort: any = {
182+
postMessage: jest.fn(),
183+
};
184+
185+
await executeAfterWait(() => {
186+
const iframe = getIFrameEl();
187+
postMessageToParent(iframe.contentWindow, mockEmbedEventPayload, mockPort);
188+
});
189+
190+
await executeAfterWait(() => {
191+
expect(mockPort.postMessage).toHaveBeenCalledWith({
192+
type: EmbedEvent.APP_INIT,
193+
data: expect.objectContaining({
194+
embedParams: expect.objectContaining({
195+
visualOverridesParams: visualOverrides,
196+
}),
197+
}),
198+
});
199+
});
200+
};

0 commit comments

Comments
 (0)