@thoughtspot/visual-embed-sdk 1.25.0-alpha.8 → 1.26.0-token-cache.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/cjs/package.json +1 -1
- package/cjs/src/auth.d.ts +0 -12
- package/cjs/src/auth.d.ts.map +1 -1
- package/cjs/src/auth.js +14 -54
- package/cjs/src/auth.js.map +1 -1
- package/cjs/src/auth.spec.d.ts.map +1 -1
- package/cjs/src/auth.spec.js +14 -5
- package/cjs/src/auth.spec.js.map +1 -1
- package/cjs/src/authToken.d.ts +4 -0
- package/cjs/src/authToken.d.ts.map +1 -0
- package/cjs/src/authToken.js +60 -0
- package/cjs/src/authToken.js.map +1 -0
- package/cjs/src/embed/TsEmbed.d.ts +302 -0
- package/cjs/src/embed/TsEmbed.d.ts.map +1 -0
- package/cjs/src/embed/TsEmbed.js +851 -0
- package/cjs/src/embed/TsEmbed.js.map +1 -0
- package/cjs/src/embed/base.d.ts +0 -1
- package/cjs/src/embed/base.d.ts.map +1 -1
- package/cjs/src/embed/base.js +6 -5
- package/cjs/src/embed/base.js.map +1 -1
- package/cjs/src/embed/base.spec.js +7 -5
- package/cjs/src/embed/base.spec.js.map +1 -1
- package/cjs/src/embed/search.d.ts.map +1 -1
- package/cjs/src/embed/search.js +2 -1
- package/cjs/src/embed/search.js.map +1 -1
- package/cjs/src/embed/ts-embed.d.ts.map +1 -1
- package/cjs/src/embed/ts-embed.js +3 -2
- package/cjs/src/embed/ts-embed.js.map +1 -1
- package/cjs/src/embed/ts-embed.spec.js +48 -37
- package/cjs/src/embed/ts-embed.spec.js.map +1 -1
- package/cjs/src/tokenizedFetch.d.ts +2 -0
- package/cjs/src/tokenizedFetch.d.ts.map +1 -0
- package/cjs/src/tokenizedFetch.js +20 -0
- package/cjs/src/tokenizedFetch.js.map +1 -0
- package/cjs/src/types.d.ts +11 -1
- package/cjs/src/types.d.ts.map +1 -1
- package/cjs/src/types.js +7 -1
- package/cjs/src/types.js.map +1 -1
- package/cjs/src/utils/answerService.d.ts +10 -0
- package/cjs/src/utils/answerService.d.ts.map +1 -0
- package/cjs/src/utils/answerService.js +61 -0
- package/cjs/src/utils/answerService.js.map +1 -0
- package/cjs/src/utils/answerService.spec.d.ts +2 -0
- package/cjs/src/utils/answerService.spec.d.ts.map +1 -0
- package/cjs/src/utils/answerService.spec.js +31 -0
- package/cjs/src/utils/answerService.spec.js.map +1 -0
- package/cjs/src/utils/authService.d.ts +12 -1
- package/cjs/src/utils/authService.d.ts.map +1 -1
- package/cjs/src/utils/authService.js +32 -16
- package/cjs/src/utils/authService.js.map +1 -1
- package/cjs/src/utils/authService.spec.js +3 -4
- package/cjs/src/utils/authService.spec.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.js +2 -1
- package/cjs/src/utils/graphql/answerService/answerService.js.map +1 -1
- package/cjs/src/utils/graphql/answerService/answerService.spec.js +15 -3
- package/cjs/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
- package/cjs/src/utils/graphql/graphql-request.spec.d.ts +2 -0
- package/cjs/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
- package/cjs/src/utils/graphql/graphql-request.spec.js +39 -0
- package/cjs/src/utils/graphql/graphql-request.spec.js.map +1 -0
- package/cjs/src/utils/logger.d.ts +28 -0
- package/cjs/src/utils/logger.d.ts.map +1 -0
- package/cjs/src/utils/logger.js +82 -0
- package/cjs/src/utils/logger.js.map +1 -0
- package/cjs/src/utils/processData.d.ts.map +1 -1
- package/cjs/src/utils/processData.js +2 -2
- package/cjs/src/utils/processData.js.map +1 -1
- package/dist/src/auth.d.ts +0 -12
- package/dist/src/auth.d.ts.map +1 -1
- package/dist/src/auth.spec.d.ts.map +1 -1
- package/dist/src/authToken.d.ts +4 -0
- package/dist/src/authToken.d.ts.map +1 -0
- package/dist/src/embed/base.d.ts +0 -1
- package/dist/src/embed/base.d.ts.map +1 -1
- package/dist/src/embed/search.d.ts.map +1 -1
- package/dist/src/embed/ts-embed.d.ts.map +1 -1
- package/dist/src/tokenizedFetch.d.ts +2 -0
- package/dist/src/tokenizedFetch.d.ts.map +1 -0
- package/dist/src/types.d.ts +11 -1
- package/dist/src/types.d.ts.map +1 -1
- package/dist/src/utils/answerService.d.ts +10 -0
- package/dist/src/utils/answerService.d.ts.map +1 -0
- package/dist/src/utils/answerService.spec.d.ts +2 -0
- package/dist/src/utils/answerService.spec.d.ts.map +1 -0
- package/dist/src/utils/authService.d.ts +12 -1
- package/dist/src/utils/authService.d.ts.map +1 -1
- package/dist/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/dist/src/utils/graphql/graphql-request.spec.d.ts +2 -0
- package/dist/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
- package/dist/src/utils/logger.d.ts +28 -0
- package/dist/src/utils/logger.d.ts.map +1 -0
- package/dist/src/utils/processData.d.ts.map +1 -1
- package/dist/tsembed-react.es.js +2145 -2097
- package/dist/tsembed-react.js +2148 -2100
- package/dist/tsembed.es.js +6445 -6394
- package/dist/tsembed.js +6445 -6394
- package/dist/visual-embed-sdk-react-full.d.ts +11 -14
- package/dist/visual-embed-sdk-react.d.ts +11 -14
- package/dist/visual-embed-sdk.d.ts +11 -14
- package/lib/package.json +1 -1
- package/lib/src/auth.d.ts +0 -12
- package/lib/src/auth.d.ts.map +1 -1
- package/lib/src/auth.js +9 -48
- package/lib/src/auth.js.map +1 -1
- package/lib/src/auth.spec.d.ts.map +1 -1
- package/lib/src/auth.spec.js +14 -5
- package/lib/src/auth.spec.js.map +1 -1
- package/lib/src/authToken.d.ts +4 -0
- package/lib/src/authToken.d.ts.map +1 -0
- package/lib/src/authToken.js +55 -0
- package/lib/src/authToken.js.map +1 -0
- package/lib/src/embed/TsEmbed.d.ts +302 -0
- package/lib/src/embed/TsEmbed.d.ts.map +1 -0
- package/lib/src/embed/TsEmbed.js +847 -0
- package/lib/src/embed/TsEmbed.js.map +1 -0
- package/lib/src/embed/base.d.ts +0 -1
- package/lib/src/embed/base.d.ts.map +1 -1
- package/lib/src/embed/base.js +3 -2
- package/lib/src/embed/base.js.map +1 -1
- package/lib/src/embed/base.spec.js +7 -5
- package/lib/src/embed/base.spec.js.map +1 -1
- package/lib/src/embed/search.d.ts.map +1 -1
- package/lib/src/embed/search.js +2 -1
- package/lib/src/embed/search.js.map +1 -1
- package/lib/src/embed/ts-embed.d.ts.map +1 -1
- package/lib/src/embed/ts-embed.js +2 -1
- package/lib/src/embed/ts-embed.js.map +1 -1
- package/lib/src/embed/ts-embed.spec.js +48 -37
- package/lib/src/embed/ts-embed.spec.js.map +1 -1
- package/lib/src/tokenizedFetch.d.ts +2 -0
- package/lib/src/tokenizedFetch.d.ts.map +1 -0
- package/lib/src/tokenizedFetch.js +16 -0
- package/lib/src/tokenizedFetch.js.map +1 -0
- package/lib/src/types.d.ts +11 -1
- package/lib/src/types.d.ts.map +1 -1
- package/lib/src/types.js +7 -1
- package/lib/src/types.js.map +1 -1
- package/lib/src/utils/answerService.d.ts +10 -0
- package/lib/src/utils/answerService.d.ts.map +1 -0
- package/lib/src/utils/answerService.js +57 -0
- package/lib/src/utils/answerService.js.map +1 -0
- package/lib/src/utils/answerService.spec.d.ts +2 -0
- package/lib/src/utils/answerService.spec.d.ts.map +1 -0
- package/lib/src/utils/answerService.spec.js +29 -0
- package/lib/src/utils/answerService.spec.js.map +1 -0
- package/lib/src/utils/authService.d.ts +12 -1
- package/lib/src/utils/authService.d.ts.map +1 -1
- package/lib/src/utils/authService.js +26 -10
- package/lib/src/utils/authService.js.map +1 -1
- package/lib/src/utils/authService.spec.js +1 -2
- package/lib/src/utils/authService.spec.js.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.d.ts.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.js +2 -1
- package/lib/src/utils/graphql/answerService/answerService.js.map +1 -1
- package/lib/src/utils/graphql/answerService/answerService.spec.js +14 -3
- package/lib/src/utils/graphql/answerService/answerService.spec.js.map +1 -1
- package/lib/src/utils/graphql/graphql-request.spec.d.ts +2 -0
- package/lib/src/utils/graphql/graphql-request.spec.d.ts.map +1 -0
- package/lib/src/utils/graphql/graphql-request.spec.js +36 -0
- package/lib/src/utils/graphql/graphql-request.spec.js.map +1 -0
- package/lib/src/utils/logger.d.ts +28 -0
- package/lib/src/utils/logger.d.ts.map +1 -0
- package/lib/src/utils/logger.js +75 -0
- package/lib/src/utils/logger.js.map +1 -0
- package/lib/src/utils/processData.d.ts.map +1 -1
- package/lib/src/utils/processData.js +2 -2
- package/lib/src/utils/processData.js.map +1 -1
- package/lib/src/visual-embed-sdk.d.ts +11 -14
- package/package.json +1 -1
- package/src/auth.spec.ts +14 -6
- package/src/auth.ts +8 -50
- package/src/authToken.ts +60 -0
- package/src/embed/base.spec.ts +7 -6
- package/src/embed/base.ts +2 -3
- package/src/embed/search.ts +2 -1
- package/src/embed/ts-embed.spec.ts +54 -40
- package/src/embed/ts-embed.ts +2 -1
- package/src/tokenizedFetch.ts +16 -0
- package/src/types.ts +12 -1
- package/src/utils/authService.spec.ts +1 -2
- package/src/utils/authService.ts +29 -10
- package/src/utils/graphql/answerService/answerService.spec.ts +16 -4
- package/src/utils/graphql/answerService/answerService.ts +2 -1
- package/src/utils/processData.ts +2 -1
|
@@ -1,5 +1,14 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
export const EndPoints = {
|
|
2
|
+
AUTH_VERIFICATION: '/callosum/v1/session/info',
|
|
3
|
+
SAML_LOGIN_TEMPLATE: (targetUrl) => `/callosum/v1/saml/login?targetURLPath=${targetUrl}`,
|
|
4
|
+
OIDC_LOGIN_TEMPLATE: (targetUrl) => `/callosum/v1/oidc/login?targetURLPath=${targetUrl}`,
|
|
5
|
+
TOKEN_LOGIN: '/callosum/v1/session/login/token',
|
|
6
|
+
BASIC_LOGIN: '/callosum/v1/session/login',
|
|
7
|
+
LOGOUT: '/callosum/v1/session/logout',
|
|
8
|
+
EXECUTE_TML: '/api/rest/2.0/metadata/tml/import',
|
|
9
|
+
EXPORT_TML: '/api/rest/2.0/metadata/tml/export',
|
|
10
|
+
IS_ACTIVE: '/callosum/v1/session/isactive',
|
|
11
|
+
};
|
|
3
12
|
/**
|
|
4
13
|
*
|
|
5
14
|
* @param url
|
|
@@ -29,15 +38,22 @@ export function fetchSessionInfoService(authVerificationUrl) {
|
|
|
29
38
|
* @param thoughtSpotHost : ThoughtSpot host to verify the token against.
|
|
30
39
|
* @param authToken : Auth token to verify.
|
|
31
40
|
*/
|
|
32
|
-
export function verifyTokenService(thoughtSpotHost, authToken) {
|
|
41
|
+
export async function verifyTokenService(thoughtSpotHost, authToken) {
|
|
33
42
|
const authVerificationUrl = `${thoughtSpotHost}${EndPoints.IS_ACTIVE}`;
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
43
|
+
try {
|
|
44
|
+
const res = await fetch(authVerificationUrl, {
|
|
45
|
+
headers: {
|
|
46
|
+
Authorization: `Bearer ${authToken}`,
|
|
47
|
+
'x-requested-by': 'ThoughtSpot',
|
|
48
|
+
},
|
|
49
|
+
credentials: 'omit',
|
|
50
|
+
});
|
|
51
|
+
return res.ok;
|
|
52
|
+
}
|
|
53
|
+
catch (e) {
|
|
54
|
+
console.error(`Token Verification Service failed : ${e.message}`);
|
|
55
|
+
}
|
|
56
|
+
return false;
|
|
41
57
|
}
|
|
42
58
|
/**
|
|
43
59
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authService.js","sourceRoot":"","sources":["../../../src/utils/authService.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"authService.js","sourceRoot":"","sources":["../../../src/utils/authService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,4 @@
|
|
|
1
|
-
import { fetchSessionInfoService, fetchAuthTokenService, fetchAuthService, fetchBasicAuthService, fetchAuthPostService, verifyTokenService, } from './authService';
|
|
2
|
-
import { EndPoints } from '../auth';
|
|
1
|
+
import { fetchSessionInfoService, fetchAuthTokenService, fetchAuthService, fetchBasicAuthService, fetchAuthPostService, verifyTokenService, EndPoints, } from './authService';
|
|
3
2
|
const thoughtSpotHost = 'http://10.79.135.124:3000';
|
|
4
3
|
const authVerificationUrl = 'http://localhost:3000';
|
|
5
4
|
const authEndpoint = '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"authService.spec.js","sourceRoot":"","sources":["../../../src/utils/authService.spec.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"authService.spec.js","sourceRoot":"","sources":["../../../src/utils/authService.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"answerService.d.ts","sourceRoot":"","sources":["../../../../../src/utils/graphql/answerService/answerService.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"answerService.d.ts","sourceRoot":"","sources":["../../../../../src/utils/graphql/answerService/answerService.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAe,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAM5D,MAAM,WAAW,gBAAgB;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CACnD;AAGD,oBAAY,aAAa;IACrB,gBAAgB,qBAAqB;IACrC,wBAAwB,6BAA6B;CACxD;AAED,UAAU,mBAAmB;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,GAAG,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,qBAAa,aAAa;IAElB,OAAO,CAAC,OAAO;IACf,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,eAAe;IACvB,OAAO,CAAC,cAAc,CAAC;gBAHf,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,GAAG,EACX,eAAe,EAAE,MAAM,EACvB,cAAc,CAAC,EAAE,QAAQ,EAAE;IAK1B,eAAe;IAQf,aAAa,CAAC,SAAS,EAAE,MAAM,EAAE;IASjC,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE;IAS9B,SAAS,CAAC,MAAM,SAAI,EAAE,IAAI,SAAO;;;;IAmB9C;;;;;OAKG;IACU,YAAY,CAAC,UAAU,SAAU,EAAE,WAAW,UAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAOhF,kBAAkB,CAAC,UAAU,SAAU,EAAE,WAAW,UAAQ,GAAG,MAAM;IAI5E;;;;;;;;;;;;;;;;OAgBG;IACU,yBAAyB,CAClC,iBAAiB,EAAE,MAAM,EAAE,EAC3B,cAAc,CAAC,EAAE,mBAAmB,EAAE,GACvC,OAAO,CAAC,aAAa,CAAC;IA8CZ,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAe/D,UAAU;CAGpB"}
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { tokenizedFetch } from '../../../tokenizedFetch';
|
|
1
2
|
import { deepMerge, removeTypename } from '../../../utils';
|
|
2
3
|
import { graphqlQuery } from '../graphql-request';
|
|
3
4
|
import { getSourceDetail } from '../sourceService';
|
|
@@ -72,7 +73,7 @@ export class AnswerService {
|
|
|
72
73
|
*/
|
|
73
74
|
async fetchCSVBlob(userLocale = 'en-us', includeInfo = false) {
|
|
74
75
|
const fetchUrl = this.getFetchCSVBlobUrl(userLocale, includeInfo);
|
|
75
|
-
return
|
|
76
|
+
return tokenizedFetch(fetchUrl, {
|
|
76
77
|
credentials: 'include',
|
|
77
78
|
});
|
|
78
79
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"answerService.js","sourceRoot":"","sources":["../../../../../src/utils/graphql/answerService/answerService.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"answerService.js","sourceRoot":"","sources":["../../../../../src/utils/graphql/answerService/answerService.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,10 @@
|
|
|
1
1
|
import 'jest-fetch-mock';
|
|
2
|
+
import { AuthType } from '../../../types';
|
|
2
3
|
import { AnswerService } from './answerService';
|
|
3
4
|
import { getAnswerData, removeColumns } from './answer-queries';
|
|
5
|
+
import * as baseInstance from '../../../embed/base';
|
|
6
|
+
import * as authTokenInstance from '../../../authToken';
|
|
7
|
+
import * as tokenizedFetch from '../../../tokenizedFetch';
|
|
4
8
|
const defaultSession = {
|
|
5
9
|
sessionId: 'id',
|
|
6
10
|
genNo: 1,
|
|
@@ -91,12 +95,19 @@ describe('Answer service tests', () => {
|
|
|
91
95
|
test('fetchCSVBlob should call the right API', () => {
|
|
92
96
|
fetchMock.once('Bla');
|
|
93
97
|
const answerService = createAnswerService();
|
|
98
|
+
const mockEmbedConfig = {
|
|
99
|
+
thougthspotHost: '/test',
|
|
100
|
+
authType: AuthType.TrustedAuthTokenCookieless,
|
|
101
|
+
};
|
|
102
|
+
jest.spyOn(baseInstance, 'getEmbedConfig').mockReturnValueOnce(mockEmbedConfig);
|
|
103
|
+
jest.spyOn(authTokenInstance, 'getAuthenticationToken').mockReturnValueOnce(Promise.resolve('token'));
|
|
104
|
+
const mockTokenizedFetch = jest.spyOn(tokenizedFetch, 'tokenizedFetch');
|
|
94
105
|
answerService.fetchCSVBlob(undefined, true);
|
|
95
|
-
expect(
|
|
106
|
+
expect(mockTokenizedFetch).toHaveBeenCalledWith(`https://tshost/prism/download/answer/csv?sessionId=${defaultSession.sessionId}&genNo=${defaultSession.genNo}&userLocale=en-us&exportFileName=data&hideCsvHeader=false`, expect.objectContaining({}));
|
|
96
107
|
answerService.fetchCSVBlob('en-uk', true);
|
|
97
|
-
expect(
|
|
108
|
+
expect(mockTokenizedFetch).toHaveBeenCalledWith(`https://tshost/prism/download/answer/csv?sessionId=${defaultSession.sessionId}&genNo=${defaultSession.genNo}&userLocale=en-uk&exportFileName=data&hideCsvHeader=false`, expect.objectContaining({}));
|
|
98
109
|
answerService.fetchCSVBlob(undefined, false);
|
|
99
|
-
expect(
|
|
110
|
+
expect(mockTokenizedFetch).toHaveBeenCalledWith(`https://tshost/prism/download/answer/csv?sessionId=${defaultSession.sessionId}&genNo=${defaultSession.genNo}&userLocale=en-us&exportFileName=data&hideCsvHeader=true`, expect.objectContaining({}));
|
|
100
111
|
});
|
|
101
112
|
test('getUnderlyingDataForPoint should call the right APIs', async () => {
|
|
102
113
|
fetchMock.mockResponses(JSON.stringify({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"answerService.spec.js","sourceRoot":"","sources":["../../../../../src/utils/graphql/answerService/answerService.spec.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"answerService.spec.js","sourceRoot":"","sources":["../../../../../src/utils/graphql/answerService/answerService.spec.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql-request.spec.d.ts","sourceRoot":"","sources":["../../../../src/utils/graphql/graphql-request.spec.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import 'jest-fetch-mock';
|
|
2
|
+
import { getAuthenticationToken } from '../../auth';
|
|
3
|
+
import { AuthType } from '../../types';
|
|
4
|
+
import * as authService from '../authService';
|
|
5
|
+
import { graphqlQuery } from './graphql-request';
|
|
6
|
+
describe('Graphql request', () => {
|
|
7
|
+
beforeEach(() => {
|
|
8
|
+
fetchMock.resetMocks();
|
|
9
|
+
});
|
|
10
|
+
it('should send authToken if set', async () => {
|
|
11
|
+
jest.spyOn(authService, 'fetchAuthTokenService').mockImplementation(() => ({
|
|
12
|
+
text: () => Promise.resolve('abc'),
|
|
13
|
+
}));
|
|
14
|
+
await getAuthenticationToken({
|
|
15
|
+
thoughtSpotHost: 'testHost',
|
|
16
|
+
getAuthToken: jest.fn(() => Promise.resolve('testToken')),
|
|
17
|
+
authType: AuthType.TrustedAuthTokenCookieless,
|
|
18
|
+
});
|
|
19
|
+
fetchMock.mockResponseOnce('test123');
|
|
20
|
+
await graphqlQuery({
|
|
21
|
+
query: 'query testOp',
|
|
22
|
+
thoughtSpotHost: 'testHost',
|
|
23
|
+
variables: {},
|
|
24
|
+
});
|
|
25
|
+
expect(fetchMock).toBeCalledWith('testHost/prism/?op=testOp', expect.objectContaining({
|
|
26
|
+
headers: {
|
|
27
|
+
Authorization: 'Bearer testToken',
|
|
28
|
+
accept: '*/*',
|
|
29
|
+
'accept-language': 'en-us',
|
|
30
|
+
'content-type': 'application/json;charset=UTF-8',
|
|
31
|
+
'x-requested-by': 'ThoughtSpot',
|
|
32
|
+
},
|
|
33
|
+
}));
|
|
34
|
+
});
|
|
35
|
+
});
|
|
36
|
+
//# sourceMappingURL=graphql-request.spec.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graphql-request.spec.js","sourceRoot":"","sources":["../../../../src/utils/graphql/graphql-request.spec.ts"],"names":[],"mappings":"AAAA,OAAO,iBAAiB,CAAC;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,YAAY,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,KAAK,WAAW,MAAM,gBAAgB,CAAC;AAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,QAAQ,CAAC,iBAAiB,EAAE,GAAG,EAAE;IAC7B,UAAU,CAAC,GAAG,EAAE;QACZ,SAAS,CAAC,UAAU,EAAE,CAAC;IAC3B,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,8BAA8B,EAAE,KAAK,IAAI,EAAE;QAC1C,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,uBAAuB,CAAC,CAAC,kBAAkB,CAAC,GAAG,EAAE,CAAC,CAAC;YACvE,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC;SACrC,CAAC,CAAC,CAAC;QACJ,MAAM,sBAAsB,CAAC;YACzB,eAAe,EAAE,UAAU;YAC3B,YAAY,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YACzD,QAAQ,EAAE,QAAQ,CAAC,0BAA0B;SAChD,CAAC,CAAC;QACH,SAAS,CAAC,gBAAgB,CAAC,SAAS,CAAC,CAAC;QACtC,MAAM,YAAY,CAAC;YACf,KAAK,EAAE,cAAc;YACrB,eAAe,EAAE,UAAU;YAC3B,SAAS,EAAE,EAAE;SAChB,CAAC,CAAC;QACH,MAAM,CAAC,SAAS,CAAC,CAAC,cAAc,CAAC,2BAA2B,EAAE,MAAM,CAAC,gBAAgB,CAAC;YAClF,OAAO,EAAE;gBACL,aAAa,EAAE,kBAAkB;gBACjC,MAAM,EAAE,KAAK;gBACb,iBAAiB,EAAE,OAAO;gBAC1B,cAAc,EAAE,gCAAgC;gBAChD,gBAAgB,EAAE,aAAa;aAClC;SACJ,CAAC,CAAC,CAAC;IACR,CAAC,CAAC,CAAC;AACP,CAAC,CAAC,CAAC"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
declare enum LogLevel {
|
|
2
|
+
SILENT,
|
|
3
|
+
ERROR,
|
|
4
|
+
WARN,
|
|
5
|
+
INFO,
|
|
6
|
+
DEBUG,
|
|
7
|
+
TRACE
|
|
8
|
+
}
|
|
9
|
+
declare const setGlobalLogLevelOverride: (logLevel: LogLevel) => void;
|
|
10
|
+
declare const getLogger: (name?: string) => Logger;
|
|
11
|
+
declare class Logger {
|
|
12
|
+
private name;
|
|
13
|
+
private logLevel;
|
|
14
|
+
setLogLevel: (newLogLevel: LogLevel) => void;
|
|
15
|
+
getName: () => string;
|
|
16
|
+
getLogLevel: () => LogLevel;
|
|
17
|
+
constructor(name: string);
|
|
18
|
+
canLog(logLevel: LogLevel): boolean;
|
|
19
|
+
logMessages(args: any[], logLevel: LogLevel): Promise<void>;
|
|
20
|
+
log(...args: any[]): void;
|
|
21
|
+
info(...args: any[]): void;
|
|
22
|
+
debug(...args: any[]): void;
|
|
23
|
+
trace(...args: any[]): void;
|
|
24
|
+
error(...args: any[]): void;
|
|
25
|
+
warn(...args: any[]): void;
|
|
26
|
+
}
|
|
27
|
+
export { getLogger, Logger, setGlobalLogLevelOverride, LogLevel, };
|
|
28
|
+
//# sourceMappingURL=logger.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"AAEA,aAAK,QAAQ;IACX,MAAqB;IACrB,KAAmB;IACnB,IAAkB;IAClB,IAAkB;IAClB,KAAmB;IACnB,KAAmB;CACpB;AAeD,QAAA,MAAM,yBAAyB,aAAc,QAAQ,KAAG,IAEvD,CAAC;AAEF,QAAA,MAAM,SAAS,qBAAsB,MAKpC,CAAC;AAEF,cAAM,MAAM;IACV,OAAO,CAAC,IAAI,CAAU;IAEtB,OAAO,CAAC,QAAQ,CAA4B;IAErC,WAAW,gBAAiB,QAAQ,UAE1C;IAEM,OAAO,QAAO,MAAM,CAAc;IAElC,WAAW,QAAO,QAAQ,CAAkB;gBAEvC,IAAI,EAAE,MAAM;IAIjB,MAAM,CAAC,QAAQ,EAAE,QAAQ,GAAG,OAAO;IAQ7B,WAAW,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IASjE,GAAG,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAIzB,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI1B,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI3B,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI3B,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;IAI3B,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,GAAG,IAAI;CAGlC;AAED,OAAO,EACH,SAAS,EACT,MAAM,EACN,yBAAyB,EACzB,QAAQ,GACX,CAAC"}
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import _ from 'lodash';
|
|
2
|
+
var LogLevel;
|
|
3
|
+
(function (LogLevel) {
|
|
4
|
+
LogLevel[LogLevel["SILENT"] = -1] = "SILENT";
|
|
5
|
+
LogLevel[LogLevel["ERROR"] = 0] = "ERROR";
|
|
6
|
+
LogLevel[LogLevel["WARN"] = 1] = "WARN";
|
|
7
|
+
LogLevel[LogLevel["INFO"] = 2] = "INFO";
|
|
8
|
+
LogLevel[LogLevel["DEBUG"] = 3] = "DEBUG";
|
|
9
|
+
LogLevel[LogLevel["TRACE"] = 4] = "TRACE";
|
|
10
|
+
})(LogLevel || (LogLevel = {}));
|
|
11
|
+
const logFunctions = {
|
|
12
|
+
[LogLevel.ERROR]: console.error,
|
|
13
|
+
[LogLevel.WARN]: console.warn,
|
|
14
|
+
[LogLevel.INFO]: console.info,
|
|
15
|
+
[LogLevel.DEBUG]: console.debug,
|
|
16
|
+
[LogLevel.TRACE]: console.trace,
|
|
17
|
+
};
|
|
18
|
+
const loggerNameMap = {};
|
|
19
|
+
let globalLogLevelOverride;
|
|
20
|
+
const setGlobalLogLevelOverride = (logLevel) => {
|
|
21
|
+
globalLogLevelOverride = logLevel;
|
|
22
|
+
};
|
|
23
|
+
const getLogger = (name = 'Global') => {
|
|
24
|
+
if (!loggerNameMap[name]) {
|
|
25
|
+
loggerNameMap[name] = new Logger(name);
|
|
26
|
+
}
|
|
27
|
+
return loggerNameMap[name];
|
|
28
|
+
};
|
|
29
|
+
class Logger {
|
|
30
|
+
constructor(name) {
|
|
31
|
+
this.logLevel = LogLevel.ERROR;
|
|
32
|
+
this.setLogLevel = (newLogLevel) => {
|
|
33
|
+
this.logLevel = newLogLevel;
|
|
34
|
+
};
|
|
35
|
+
this.getName = () => this.name;
|
|
36
|
+
this.getLogLevel = () => this.logLevel;
|
|
37
|
+
this.name = name;
|
|
38
|
+
}
|
|
39
|
+
canLog(logLevel) {
|
|
40
|
+
if (logLevel === LogLevel.SILENT)
|
|
41
|
+
return false;
|
|
42
|
+
if (!_.isUndefined(globalLogLevelOverride)) {
|
|
43
|
+
return globalLogLevelOverride >= logLevel;
|
|
44
|
+
}
|
|
45
|
+
return this.logLevel >= logLevel;
|
|
46
|
+
}
|
|
47
|
+
async logMessages(args, logLevel) {
|
|
48
|
+
if (this.canLog(logLevel)) {
|
|
49
|
+
const logFn = logFunctions[logLevel];
|
|
50
|
+
if (logFn) {
|
|
51
|
+
logFn(...args);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
log(...args) {
|
|
56
|
+
this.info(args);
|
|
57
|
+
}
|
|
58
|
+
info(...args) {
|
|
59
|
+
this.logMessages(args, LogLevel.INFO);
|
|
60
|
+
}
|
|
61
|
+
debug(...args) {
|
|
62
|
+
this.logMessages(args, LogLevel.DEBUG);
|
|
63
|
+
}
|
|
64
|
+
trace(...args) {
|
|
65
|
+
this.logMessages(args, LogLevel.TRACE);
|
|
66
|
+
}
|
|
67
|
+
error(...args) {
|
|
68
|
+
this.logMessages(args, LogLevel.ERROR);
|
|
69
|
+
}
|
|
70
|
+
warn(...args) {
|
|
71
|
+
this.logMessages(args, LogLevel.WARN);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
export { getLogger, Logger, setGlobalLogLevelOverride, LogLevel, };
|
|
75
|
+
//# sourceMappingURL=logger.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/utils/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processData.d.ts","sourceRoot":"","sources":["../../../src/utils/processData.ts"],"names":[],"mappings":"AAQA,OAAO,EAAiC,UAAU,EAAE,MAAM,UAAU,CAAC;AAGrE;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,OAYlE;
|
|
1
|
+
{"version":3,"file":"processData.d.ts","sourceRoot":"","sources":["../../../src/utils/processData.ts"],"names":[],"mappings":"AAQA,OAAO,EAAiC,UAAU,EAAE,MAAM,UAAU,CAAC;AAGrE;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,CAAC,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,OAYlE;AA2ED;;;;;;GAMG;AACH,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,UAAU,EAChB,CAAC,EAAE,GAAG,EACN,eAAe,EAAE,MAAM,EACvB,WAAW,EAAE,OAAO,GACrB,GAAG,CAeL"}
|
|
@@ -38,9 +38,9 @@ function processAuthInit(e) {
|
|
|
38
38
|
* @param containerEl
|
|
39
39
|
*/
|
|
40
40
|
function processNoCookieAccess(e, containerEl) {
|
|
41
|
-
const { loginFailedMessage, suppressNoCookieAccessAlert, ignoreNoCookieAccess, } = getEmbedConfig();
|
|
41
|
+
const { loginFailedMessage, suppressNoCookieAccessAlert, ignoreNoCookieAccess, suppressErrorAlerts, } = getEmbedConfig();
|
|
42
42
|
if (!ignoreNoCookieAccess) {
|
|
43
|
-
if (!suppressNoCookieAccessAlert) {
|
|
43
|
+
if (!suppressNoCookieAccessAlert && !suppressErrorAlerts) {
|
|
44
44
|
// eslint-disable-next-line no-alert
|
|
45
45
|
alert('Third party cookie access is blocked on this browser, please allow third party cookies for this to work properly. \nYou can use `suppressNoCookieAccessAlert` to suppress this message.');
|
|
46
46
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"processData.js","sourceRoot":"","sources":["../../../src/utils/processData.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,gBAAgB,EAChB,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,YAAY,GACf,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,eAAe,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACvD,OAAO,EAAE,QAAQ,EAAuB,UAAU,EAAE,MAAM,UAAU,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,MAAM,uCAAuC,CAAC;AAEtE;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,CAAM,EAAE,eAAuB;IAC/D,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,GAAG,CAAC,CAAC,IAA2B,CAAC;IACtF,MAAM,aAAa,GAAG,IAAI,aAAa,CACnC,OAAO,EACP,eAAe,EACf,eAAe,EACf,iBAAiB,aAAjB,iBAAiB,uBAAjB,iBAAiB,CAAE,cAAc,CACpC,CAAC;IACF,OAAO;QACH,GAAG,CAAC;QACJ,aAAa;KAChB,CAAC;AACN,CAAC;AAED;;;GAGG;AACH,SAAS,eAAe,CAAC,CAAM;;IAC3B,0CAA0C;IAC1C,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;IACpB,iBAAiB,EAAE,CAAC;IAEpB,gEAAgE;IAChE,OAAO;QACH,GAAG,CAAC;QACJ,IAAI,EAAE;YACF,QAAQ,EAAE,CAAA,MAAA,CAAC,CAAC,IAAI,0CAAE,QAAQ,MAAI,MAAA,CAAC,CAAC,OAAO,0CAAE,QAAQ,CAAA;SACpD;KACJ,CAAC;AACN,CAAC;AAED;;;;GAIG;AACH,SAAS,qBAAqB,CAAC,CAAM,EAAE,WAAoB;IACvD,MAAM,EACF,kBAAkB,EAClB,2BAA2B,EAC3B,oBAAoB,
|
|
1
|
+
{"version":3,"file":"processData.js","sourceRoot":"","sources":["../../../src/utils/processData.ts"],"names":[],"mappings":"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"}
|
|
@@ -396,7 +396,6 @@ declare module '@thoughtspot/visual-embed-sdk/embed/base' {
|
|
|
396
396
|
console.error(error);
|
|
397
397
|
});
|
|
398
398
|
* ```
|
|
399
|
-
*
|
|
400
399
|
* @version SDK: 1.23.0 | ThoughtSpot: 9.4.0.cl
|
|
401
400
|
* @group Global methods
|
|
402
401
|
*/
|
|
@@ -773,17 +772,6 @@ declare module '@thoughtspot/visual-embed-sdk/auth' {
|
|
|
773
772
|
export let samlAuthWindow: Window;
|
|
774
773
|
export let samlCompletionPromise: Promise<void>;
|
|
775
774
|
export const SSO_REDIRECTION_MARKER_GUID = "5e16222e-ef02-43e9-9fbd-24226bf3ce5b";
|
|
776
|
-
export const EndPoints: {
|
|
777
|
-
AUTH_VERIFICATION: string;
|
|
778
|
-
SAML_LOGIN_TEMPLATE: (targetUrl: string) => string;
|
|
779
|
-
OIDC_LOGIN_TEMPLATE: (targetUrl: string) => string;
|
|
780
|
-
TOKEN_LOGIN: string;
|
|
781
|
-
BASIC_LOGIN: string;
|
|
782
|
-
LOGOUT: string;
|
|
783
|
-
EXECUTE_TML: string;
|
|
784
|
-
EXPORT_TML: string;
|
|
785
|
-
IS_ACTIVE: string;
|
|
786
|
-
};
|
|
787
775
|
interface sessionInfoInterface {
|
|
788
776
|
userGUID: any;
|
|
789
777
|
isPublicUser: any;
|
|
@@ -915,7 +903,6 @@ declare module '@thoughtspot/visual-embed-sdk/auth' {
|
|
|
915
903
|
* @group Global methods
|
|
916
904
|
*/
|
|
917
905
|
export function getSessionInfo(): Promise<sessionInfoInterface>;
|
|
918
|
-
export const getAuthenticationToken: (embedConfig: EmbedConfig) => Promise<any>;
|
|
919
906
|
/**
|
|
920
907
|
* Perform token based authentication
|
|
921
908
|
*
|
|
@@ -1463,6 +1450,10 @@ declare module '@thoughtspot/visual-embed-sdk/types' {
|
|
|
1463
1450
|
* @version SDK: 1.27.0 | ThoughtSpot: 9.8.0.cl
|
|
1464
1451
|
*/
|
|
1465
1452
|
pendoTrackingKey?: string;
|
|
1453
|
+
/**
|
|
1454
|
+
* If passed as true all alerts will be suppressed in the embedded app.
|
|
1455
|
+
*/
|
|
1456
|
+
suppressErrorAlerts?: boolean;
|
|
1466
1457
|
}
|
|
1467
1458
|
export interface LayoutConfig {
|
|
1468
1459
|
}
|
|
@@ -2355,11 +2346,17 @@ declare module '@thoughtspot/visual-embed-sdk/types' {
|
|
|
2355
2346
|
*/
|
|
2356
2347
|
SageWorksheetUpdated = "sageWorksheetUpdated",
|
|
2357
2348
|
/**
|
|
2358
|
-
*
|
|
2349
|
+
* Emitted when a user updates a connection in Data tab
|
|
2359
2350
|
*
|
|
2360
2351
|
* @version SDK : 1.27.0 | Thoughtspot: 9.8.0.cl
|
|
2361
2352
|
*/
|
|
2362
2353
|
UpdateConnection = "updateConnection",
|
|
2354
|
+
/**
|
|
2355
|
+
* Emitted when a user updates a connection in Data tab
|
|
2356
|
+
*
|
|
2357
|
+
* @version SDK : 1.27.0 | Thoughtspot: 9.8.0.cl
|
|
2358
|
+
*/
|
|
2359
|
+
CreateConnection = "createConnection",
|
|
2363
2360
|
/**
|
|
2364
2361
|
* Emitted when name, status (private or public) or filter values of a
|
|
2365
2362
|
* PersonalisedView is updated.
|
package/package.json
CHANGED
package/src/auth.spec.ts
CHANGED
|
@@ -4,6 +4,7 @@ import * as checkReleaseVersionInBetaInstance from './utils';
|
|
|
4
4
|
import * as mixPanelService from './mixpanel-service';
|
|
5
5
|
import { AuthType, EmbedEvent } from './types';
|
|
6
6
|
import { executeAfterWait } from './test/test-utils';
|
|
7
|
+
import { resetCachedAuthToken } from './authToken';
|
|
7
8
|
|
|
8
9
|
const thoughtSpotHost = 'http://localhost:3000';
|
|
9
10
|
const username = 'tsuser';
|
|
@@ -114,9 +115,11 @@ describe('Unit test for auth', () => {
|
|
|
114
115
|
beforeEach(() => {
|
|
115
116
|
global.fetch = window.fetch;
|
|
116
117
|
});
|
|
117
|
-
|
|
118
|
+
afterEach(() => {
|
|
119
|
+
resetCachedAuthToken();
|
|
120
|
+
});
|
|
118
121
|
test('endpoints, SAML_LOGIN_TEMPLATE', () => {
|
|
119
|
-
const ssoTemplateUrl =
|
|
122
|
+
const ssoTemplateUrl = authService.EndPoints.SAML_LOGIN_TEMPLATE(thoughtSpotHost);
|
|
120
123
|
expect(ssoTemplateUrl).toBe(`/callosum/v1/saml/login?targetURLPath=${thoughtSpotHost}`);
|
|
121
124
|
});
|
|
122
125
|
|
|
@@ -173,6 +176,7 @@ describe('Unit test for auth', () => {
|
|
|
173
176
|
jest.spyOn(authService, 'fetchAuthService').mockImplementation(() => Promise.resolve({
|
|
174
177
|
status: 200,
|
|
175
178
|
}));
|
|
179
|
+
jest.spyOn(authService, 'verifyTokenService').mockResolvedValueOnce(true);
|
|
176
180
|
await authInstance.doTokenAuth(embedConfig.doTokenAuthSuccess('authToken2'));
|
|
177
181
|
expect(authService.fetchSessionInfoService).toBeCalled();
|
|
178
182
|
expect(authService.fetchAuthService).toBeCalledWith(
|
|
@@ -189,11 +193,12 @@ describe('Unit test for auth', () => {
|
|
|
189
193
|
status: 200,
|
|
190
194
|
ok: true,
|
|
191
195
|
}));
|
|
196
|
+
jest.spyOn(authService, 'verifyTokenService').mockResolvedValueOnce(true);
|
|
192
197
|
await authInstance.doTokenAuth(embedConfig.doTokenAuthFailureWithoutGetAuthToken);
|
|
193
198
|
await executeAfterWait(() => {
|
|
194
199
|
expect(authInstance.loggedInStatus).toBe(true);
|
|
195
200
|
expect(authService.fetchSessionInfoService).toBeCalled();
|
|
196
|
-
expect(authService.fetchAuthService).toBeCalledWith(thoughtSpotHost, username, '
|
|
201
|
+
expect(authService.fetchAuthService).toBeCalledWith(thoughtSpotHost, username, 'authToken2');
|
|
197
202
|
});
|
|
198
203
|
});
|
|
199
204
|
|
|
@@ -208,9 +213,11 @@ describe('Unit test for auth', () => {
|
|
|
208
213
|
status: 200,
|
|
209
214
|
ok: true,
|
|
210
215
|
}));
|
|
216
|
+
jest.spyOn(authService, 'verifyTokenService').mockResolvedValueOnce(true);
|
|
211
217
|
await authInstance.doTokenAuth(embedConfig.doTokenAuthSuccess('authToken3'));
|
|
212
218
|
|
|
213
219
|
try {
|
|
220
|
+
jest.spyOn(authService, 'verifyTokenService').mockResolvedValueOnce(false);
|
|
214
221
|
await authInstance.doTokenAuth(embedConfig.doTokenAuthSuccess('authToken3'));
|
|
215
222
|
expect(false).toBe(true);
|
|
216
223
|
} catch (e) {
|
|
@@ -236,6 +243,7 @@ describe('Unit test for auth', () => {
|
|
|
236
243
|
status: 200,
|
|
237
244
|
ok: true,
|
|
238
245
|
}));
|
|
246
|
+
jest.spyOn(authService, 'verifyTokenService').mockResolvedValueOnce(true);
|
|
239
247
|
const isLoggedIn = await authInstance.doTokenAuth(embedConfig.doTokenAuthWithCookieDetect);
|
|
240
248
|
expect(authService.fetchSessionInfoService).toHaveBeenCalledTimes(2);
|
|
241
249
|
expect(isLoggedIn).toBe(false);
|
|
@@ -256,6 +264,7 @@ describe('Unit test for auth', () => {
|
|
|
256
264
|
status: 200,
|
|
257
265
|
type: 'opaqueredirect',
|
|
258
266
|
}));
|
|
267
|
+
jest.spyOn(authService, 'verifyTokenService').mockResolvedValueOnce(true);
|
|
259
268
|
expect(await authInstance.doTokenAuth(embedConfig.doTokenAuthSuccess('authToken2'))).toBe(
|
|
260
269
|
true,
|
|
261
270
|
);
|
|
@@ -395,6 +404,7 @@ describe('Unit test for auth', () => {
|
|
|
395
404
|
|
|
396
405
|
describe('doOIDCAuth', () => {
|
|
397
406
|
afterEach(() => {
|
|
407
|
+
resetCachedAuthToken();
|
|
398
408
|
delete global.window;
|
|
399
409
|
global.window = Object.create(originalWindow);
|
|
400
410
|
global.window.open = jest.fn();
|
|
@@ -463,15 +473,13 @@ describe('Unit test for auth', () => {
|
|
|
463
473
|
});
|
|
464
474
|
|
|
465
475
|
it('doCookielessTokenAuth should resolve to true if valid token is passed', async () => {
|
|
466
|
-
jest.spyOn(authService, 'fetchAuthTokenService').mockResolvedValueOnce(new Response(JSON.stringify({ token: 'testToken' }), { status: 200 }));
|
|
467
476
|
jest.spyOn(authService, 'verifyTokenService').mockResolvedValueOnce(new Response('', { status: 200 }));
|
|
468
477
|
const isLoggedIn = await authInstance.doCookielessTokenAuth(embedConfig.doCookielessAuth('testToken'));
|
|
469
478
|
expect(isLoggedIn).toBe(true);
|
|
470
479
|
});
|
|
471
480
|
|
|
472
481
|
it('doCookielessTokenAuth should resolve to false if valid token is not passed', async () => {
|
|
473
|
-
jest.spyOn(authService, '
|
|
474
|
-
jest.spyOn(authService, 'verifyTokenService').mockResolvedValueOnce(new Response('', { status: 400 }));
|
|
482
|
+
jest.spyOn(authService, 'verifyTokenService').mockResolvedValueOnce(false);
|
|
475
483
|
const isLoggedIn = await authInstance.doCookielessTokenAuth(embedConfig.doCookielessAuth('testToken'));
|
|
476
484
|
expect(isLoggedIn).toBe(false);
|
|
477
485
|
});
|