Skip to content

Commit 15d4c5f

Browse files
committed
chore: address pr review
1 parent e545490 commit 15d4c5f

2 files changed

Lines changed: 14 additions & 8 deletions

File tree

src/field-renderer/FieldRenderer.jsx

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { useState } from 'react';
1+
import React, { useState } from 'react';
22

33
import { Form, Icon, TransitionReplace } from '@openedx/paragon';
44
import { ExpandMore } from '@openedx/paragon/icons';
@@ -27,7 +27,7 @@ const FormFieldRenderer = (props) => {
2727
<Form.Control.Feedback type="default" key="help-text" className="d-block form-text-size">
2828
{fieldData.instructions}
2929
</Form.Control.Feedback>
30-
) : <div key="empty" />}
30+
) : <React.Fragment key="empty" />}
3131
</TransitionReplace>
3232
);
3333

@@ -161,7 +161,6 @@ FormFieldRenderer.propTypes = {
161161
instructions: PropTypes.string,
162162
restrictions: PropTypes.shape({
163163
max_length: PropTypes.number,
164-
min_length: PropTypes.number,
165164
}),
166165
options: PropTypes.oneOfType([
167166
PropTypes.arrayOf(PropTypes.arrayOf(PropTypes.string)),

src/field-renderer/tests/FieldRenderer.test.jsx

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -345,8 +345,8 @@ describe('FieldRendererTests', () => {
345345
// Focus the field
346346
fireEvent.focus(select);
347347

348-
// Note: Select fields don't show help text in the current implementation
349-
// This test documents the current behavior
348+
// Help text should now be visible
349+
expect(container.textContent).toContain('Select your country of residence');
350350
});
351351

352352
it('should render select field with options as object format', () => {
@@ -385,6 +385,7 @@ describe('FieldRendererTests', () => {
385385
});
386386

387387
it('should handle selection change with object format options', () => {
388+
const mockChangeHandler = jest.fn();
388389
const fieldData = {
389390
type: 'select',
390391
label: 'Favorite Language',
@@ -398,14 +399,20 @@ describe('FieldRendererTests', () => {
398399
},
399400
};
400401

401-
const { container } = render(<FieldRenderer value={value} fieldData={fieldData} onChangeHandler={changeHandler} />);
402+
const { container } = render(
403+
<FieldRenderer value={value} fieldData={fieldData} onChangeHandler={mockChangeHandler} />,
404+
);
402405
const select = container.querySelector('select#favorite-language-field');
403406

404407
fireEvent.change(select, { target: { value: 'python' } });
405-
expect(value).toEqual('python');
408+
expect(mockChangeHandler).toHaveBeenCalledWith(expect.objectContaining({
409+
target: expect.objectContaining({ value: 'python' }),
410+
}));
406411

407412
fireEvent.change(select, { target: { value: 'javascript' } });
408-
expect(value).toEqual('javascript');
413+
expect(mockChangeHandler).toHaveBeenCalledWith(expect.objectContaining({
414+
target: expect.objectContaining({ value: 'javascript' }),
415+
}));
409416
});
410417

411418
it('should render all options correctly from object format', () => {

0 commit comments

Comments
 (0)