Auto stash before merge of "feature/INSR-7771" and "origin/develop"

This commit is contained in:
scottkiener-at-safelite 2026-02-12 15:34:20 -05:00
parent 6d10f3e64f
commit 555223d7cd
2 changed files with 43 additions and 30 deletions

View file

@ -54,7 +54,10 @@ export default {
callHttpClient({ method, endpoint, payload, logApiCall = true }) {
return new Promise((resolve, reject) => {
const store = useMainStore();
const cfDistroUrl = applicationConfig.CONSUMER_CF_DISTRO;
let cfDistroUrl = applicationConfig.CONSUMER_CF_DISTRO;
if (endpoint.includes ("/location")) {
cfDistroUrl = "https://localhost:44370";
}
const payloadAndAnalyticsData = { ...payload, AppName: 'ISS' };
const sessionKey = getSessionKeyValue();
const headers = {

View file

@ -1966,53 +1966,65 @@ describe('Store', () => {
});
});
describe('getTpaProviders method', () => {
describe('getTpaAndSafeliteProviders method', () => {
describe('successful method call', () => {
it.each([[true, 'Repair'], [false, 'Replace']])(
'calls getProviders api endpoint',
it.each([[true, 'Repair'], [false, 'Install']])(
'calls getProviders api endpoint with damageType %s',
async (isRepair, damageType) => {
// Arrange
globalMethods.callHttpClient = jest.fn().mockReturnValue(Promise.resolve({}));
const carId = getRandomString(10, 14);
const parentAccountNumber = getRandomString(6, 6);
const partNumber = getRandomString(6, 6);
store.order.parentAccountNumber = parentAccountNumber;
store.order.damage.isRepair = isRepair;
store.order.vehicle.carId = carId;
const zipCode = getRandomString(6, 6);
const radius = getRandomInt(5, 100);
const isBigTruck = false;
store.order.vehicle.isBigTruck = isBigTruck;
const expectedEndpoint = endpoints.GetProviders.url(
zipCode,
damageType,
radius,
parentAccountNumber,
'false',
carId,
null,
isBigTruck
);
store.order.lineItems.glassParts = [{ partNumber }];
const zipCode = getRandomString(5, 5);
const expectedEndpoint = `${endpoints.GetTpaAndSafeliteProviders.url}/${zipCode}?accountNumber=${parentAccountNumber}&carId=${carId}&damageType=${damageType}&partNumbers=${partNumber}`;
// Act
await store.getTpaProviders(zipCode, radius);
await store.getTpaAndSafeliteProviders(zipCode);
// Asserts
expect(globalMethods.callHttpClient).toHaveBeenCalledWith(expect.objectContaining({
method: endpoints.GetProviders.method,
method: endpoints.GetTpaAndSafeliteProviders.method,
endpoint: expectedEndpoint
}));
}
);
it('includes providerNameSearchString in endpoint when provided', async () => {
// Arrange
globalMethods.callHttpClient = jest.fn().mockReturnValue(Promise.resolve({}));
const carId = getRandomString(10, 14);
const parentAccountNumber = getRandomString(6, 6);
const partNumber = getRandomString(6, 6);
store.order.parentAccountNumber = parentAccountNumber;
store.order.damage.isRepair = true;
store.order.vehicle.carId = carId;
store.order.lineItems.glassParts = [{ partNumber }];
const zipCode = getRandomString(5, 5);
const providerNameSearchString = 'Test Shop';
// Act
await store.getTpaAndSafeliteProviders(zipCode, providerNameSearchString);
// Asserts
expect(globalMethods.callHttpClient).toHaveBeenCalledWith(expect.objectContaining({
endpoint: expect.stringContaining(`&providerNameSearchString=${providerNameSearchString}`)
}));
});
it('Returns expected response object', async () => {
// Arrange
const response = { ReferralNumber: getRandomString(6, 6) };
globalMethods.callHttpClient = jest.fn().mockReturnValue(Promise.resolve(response));
const zipCode = getRandomString(6, 6);
const radius = getRandomInt(5, 100);
const zipCode = getRandomString(5, 5);
// Act
const result = store.getTpaProviders(zipCode, radius);
const result = store.getTpaAndSafeliteProviders(zipCode);
// Asserts
await expect(result).resolves.toBe(response);
@ -2020,11 +2032,10 @@ describe('Store', () => {
it('null response by api => no exceptions thrown', async () => {
// Arrange
globalMethods.callHttpClient = jest.fn().mockReturnValue(Promise.resolve(null));
const zipCode = getRandomString(6, 6);
const radius = getRandomInt(5, 100);
const zipCode = getRandomString(5, 5);
// Act
await store.getTpaProviders(zipCode, radius);
await store.getTpaAndSafeliteProviders(zipCode);
});
it('no providers returned by api => promise resolves to empty list', async () => {
// Arrange
@ -2034,11 +2045,10 @@ describe('Store', () => {
}
};
globalMethods.callHttpClient = jest.fn().mockReturnValue(Promise.resolve(responseNoProviders));
const zipCode = getRandomString(6, 6);
const radius = getRandomInt(5, 100);
const zipCode = getRandomString(5, 5);
// Act
const result = await store.getTpaProviders(zipCode, radius);
const result = await store.getTpaAndSafeliteProviders(zipCode);
// Asserts
expect(result.data.shopProviders).toHaveLength(0);
@ -2060,7 +2070,7 @@ describe('Store', () => {
globalMethods.callHttpClient = jest.fn().mockReturnValue(Promise.resolve(responseProviders));
// Act
const result = await store.getTpaProviders();
const result = await store.getTpaAndSafeliteProviders();
// Asserts
expect(result.data.shopProviders).toHaveLength(2);