yjsong/mssql-fe
Younjin Song 8 months ago
parent 0a25e36668
commit 409ecac5e7
  1. 28
      public/app/plugins/datasource/mssql/azureauth/AzureAuth.test.ts
  2. 10
      public/app/plugins/datasource/mssql/azureauth/AzureAuth.testMocks.ts

@ -118,7 +118,7 @@ describe('AzureAuth', () => {
}); });
}); });
describe('updateDatasourceCredentials()', () => { describe('updateCredentials()', () => {
it('should update the credentials for managed service identity correctly', () => { it('should update the credentials for managed service identity correctly', () => {
// If `dataSourceSettings.authType === 'msi'` && `config.azure.managedIdentityEnabled === true`. // If `dataSourceSettings.authType === 'msi'` && `config.azure.managedIdentityEnabled === true`.
jest.mocked(config).azure.managedIdentityEnabled = true; jest.mocked(config).azure.managedIdentityEnabled = true;
@ -159,12 +159,12 @@ describe('AzureAuth', () => {
dataSourceSettingsWithClientSecretOnServer, dataSourceSettingsWithClientSecretOnServer,
basicClientSecretCredentials basicClientSecretCredentials
); );
expect(resultForClientSecretCredentials1).toEqual({
jsonData: { expect(resultForClientSecretCredentials1.jsonData.azureCredentials).toEqual(basicClientSecretCredentials);
azureCredentials: { ...basicClientSecretCredentials }, expect(resultForClientSecretCredentials1.secureJsonData).toEqual({ azureClientSecret: undefined });
}, expect(resultForClientSecretCredentials1.secureJsonFields).toEqual({
secureJsonData: { azureClientSecret: undefined }, azureClientSecret: false,
secureJsonFields: { azureClientSecret: false }, clientSecret: false,
}); });
// If `dataSourceSettings.authType === 'clientsecret'` && `secureJsonFields.azureClientSecret == false`. // If `dataSourceSettings.authType === 'clientsecret'` && `secureJsonFields.azureClientSecret == false`.
@ -174,12 +174,14 @@ describe('AzureAuth', () => {
dataSourceSettingsWithClientSecretInSecureJSONData, dataSourceSettingsWithClientSecretInSecureJSONData,
{ ...basicClientSecretCredentials, clientSecret: 'XXXX-super-secret-secret-XXXX' } { ...basicClientSecretCredentials, clientSecret: 'XXXX-super-secret-secret-XXXX' }
); );
expect(resultForClientSecretCredentials2).toEqual({
jsonData: { expect(resultForClientSecretCredentials2.jsonData.azureCredentials).toEqual(basicClientSecretCredentials);
azureCredentials: { ...basicClientSecretCredentials }, expect(resultForClientSecretCredentials2.secureJsonData).toEqual({
}, azureClientSecret: 'XXXX-super-secret-secret-XXXX',
secureJsonData: { azureClientSecret: 'XXXX-super-secret-secret-XXXX' }, });
secureJsonFields: { azureClientSecret: false }, expect(resultForClientSecretCredentials2.secureJsonFields).toEqual({
azureClientSecret: false,
clientSecret: false,
}); });
}); });
}); });

@ -28,12 +28,16 @@ export const dataSourceSettingsWithMsiCredentials: Partial<AzureDataSourceSettin
// Will return symbol as the secret is concealed // Will return symbol as the secret is concealed
export const dataSourceSettingsWithClientSecretOnServer: Partial<AzureDataSourceSettings> = { export const dataSourceSettingsWithClientSecretOnServer: Partial<AzureDataSourceSettings> = {
jsonData: { azureCredentials: { authType: 'clientsecret', clientId: 'testClientId', tenantId: 'testTenantId' } }, jsonData: {
azureCredentials: { authType: 'clientsecret', clientId: 'XXXX-client-id-XXXX', tenantId: 'XXXX-tenant-id-XXXX' },
},
secureJsonFields: { azureClientSecret: true }, secureJsonFields: { azureClientSecret: true },
}; };
// Will return the secret as a string from the secureJsonData // Will return the secret as a string from the secureJsonData
export const dataSourceSettingsWithClientSecretInSecureJSONData: Partial<AzureDataSourceSettings> = { export const dataSourceSettingsWithClientSecretInSecureJSONData: Partial<AzureDataSourceSettings> = {
jsonData: { azureCredentials: { authType: 'clientsecret', clientId: 'testClientId', tenantId: 'testTenantId' } }, jsonData: {
azureCredentials: { authType: 'clientsecret', clientId: 'XXXX-client-id-XXXX', tenantId: 'XXXX-tenant-id-XXXX' },
},
secureJsonFields: { azureClientSecret: false }, secureJsonFields: { azureClientSecret: false },
secureJsonData: { azureClientSecret: 'testClientSecret' }, secureJsonData: { azureClientSecret: 'XXXX-super-secret-secret-XXXX' },
}; };

Loading…
Cancel
Save