fix: parse creditRequest data correctly and add ecommerce URL to dev and test envs

This commit is contained in:
Jason Wesson
2023-05-17 20:19:09 +00:00
parent e57f44068b
commit 5048fffd04
9 changed files with 42 additions and 27 deletions

View File

@@ -42,8 +42,10 @@ CreditContent.propTypes = {
}),
message: PropTypes.node.isRequired,
requestData: PropTypes.shape({
url: PropTypes.string,
parameters: PropTypes.objectOf(PropTypes.string),
data: PropTypes.shape({
url: PropTypes.string,
parameters: PropTypes.objectOf(PropTypes.string),
}),
}),
};

View File

@@ -12,7 +12,7 @@ const action = {
};
const message = 'test-message';
const requestData = { url: 'test-request-data-url', parameters: { key1: 'val1' } };
const requestData = { data: { url: 'test-request-data-url', parameters: { key1: 'val1' } } };
const props = { action, message, requestData };
describe('CreditContent component', () => {

View File

@@ -10,7 +10,7 @@ export const CreditRequestForm = ({ requestData }) => {
if (requestData === null) {
return null;
}
const { parameters, url } = requestData;
const { parameters, url } = requestData.data;
return (
<Form
accept-method="UTF-8"
@@ -35,8 +35,10 @@ CreditRequestForm.defaultProps = {
};
CreditRequestForm.propTypes = {
requestData: PropTypes.shape({
parameters: PropTypes.objectOf(PropTypes.string),
url: PropTypes.string,
data: PropTypes.shape({
parameters: PropTypes.objectOf(PropTypes.string),
url: PropTypes.string,
}),
}),
};

View File

@@ -13,15 +13,17 @@ jest.mock('./hooks', () => ({
const ref = 'test-ref';
const requestData = {
url: 'test-request-data-url',
parameters: {
key1: 'val1',
key2: 'val2',
key3: 'val3',
data: {
url: 'test-request-data-url',
parameters: {
key1: 'val1',
key2: 'val2',
key3: 'val3',
},
},
};
const paramKeys = keyStore(requestData.parameters);
const paramKeys = keyStore(requestData.data.parameters);
useCreditRequestFormData.mockReturnValue({ ref });
@@ -49,16 +51,16 @@ describe('CreditRequestForm component', () => {
expect(el).toMatchSnapshot();
});
it('loads Form with requestData url', () => {
expect(el.find('Form').props().action).toEqual(requestData.url);
expect(el.find('Form').props().action).toEqual(requestData.data.url);
});
it('loads a textarea form control for each requestData parameter', () => {
const controls = el.find('FormControl');
expect(controls.at(0).props().name).toEqual(paramKeys.key1);
expect(controls.at(0).props().value).toEqual(requestData.parameters.key1);
expect(controls.at(0).props().value).toEqual(requestData.data.parameters.key1);
expect(controls.at(1).props().name).toEqual(paramKeys.key2);
expect(controls.at(1).props().value).toEqual(requestData.parameters.key2);
expect(controls.at(1).props().value).toEqual(requestData.data.parameters.key2);
expect(controls.at(2).props().name).toEqual(paramKeys.key3);
expect(controls.at(2).props().value).toEqual(requestData.parameters.key3);
expect(controls.at(2).props().value).toEqual(requestData.data.parameters.key3);
});
});
});

View File

@@ -14,11 +14,13 @@ jest.mock('./hooks', () => ({
const ref = { current: { click: jest.fn() }, useRef: jest.fn() };
const requestData = {
url: 'test-request-data-url',
parameters: {
key1: 'val1',
key2: 'val2',
key3: 'val3',
data: {
url: 'test-request-data-url',
parameters: {
key1: 'val1',
key2: 'val2',
key3: 'val3',
},
},
};

View File

@@ -26,10 +26,12 @@ exports[`CreditContent component render with action snapshot 1`] = `
<CreditRequestForm
requestData={
Object {
"parameters": Object {
"key1": "val1",
"data": Object {
"parameters": Object {
"key1": "val1",
},
"url": "test-request-data-url",
},
"url": "test-request-data-url",
}
}
/>
@@ -46,10 +48,12 @@ exports[`CreditContent component render without action snapshot 1`] = `
<CreditRequestForm
requestData={
Object {
"parameters": Object {
"key1": "val1",
"data": Object {
"parameters": Object {
"key1": "val1",
},
"url": "test-request-data-url",
},
"url": "test-request-data-url",
}
}
/>