diff --git a/plugins/scaffolder/src/components/fields/RepoBranchPicker/GitHubRepoBranchPicker.test.tsx b/plugins/scaffolder/src/components/fields/RepoBranchPicker/GitHubRepoBranchPicker.test.tsx index 3e89b13aa7..56c65e6cf7 100644 --- a/plugins/scaffolder/src/components/fields/RepoBranchPicker/GitHubRepoBranchPicker.test.tsx +++ b/plugins/scaffolder/src/components/fields/RepoBranchPicker/GitHubRepoBranchPicker.test.tsx @@ -20,7 +20,13 @@ import { scaffolderApiRef, } from '@backstage/plugin-scaffolder-react'; import { GitHubRepoBranchPicker } from './GitHubRepoBranchPicker'; -import { act, fireEvent, render, waitFor } from '@testing-library/react'; +import { + act, + fireEvent, + render, + waitFor, + screen, +} from '@testing-library/react'; import { TestApiProvider } from '@backstage/test-utils'; import userEvent from '@testing-library/user-event'; @@ -44,6 +50,25 @@ describe('GitHubRepoBranchPicker', () => { expect(getByRole('textbox')).toHaveValue('main'); }); + it('input field disabled', () => { + render( + + + , + ); + + const input = screen.getByRole('textbox'); + + // Expect input to be disabled + expect(input).toBeDisabled(); + expect(input).toHaveValue('main'); + }); + it('calls onChange when the input field changes', () => { const onChange = jest.fn(); diff --git a/plugins/scaffolder/src/components/fields/RepoBranchPicker/GitHubRepoBranchPicker.tsx b/plugins/scaffolder/src/components/fields/RepoBranchPicker/GitHubRepoBranchPicker.tsx index e4995ceeaa..cfcc3ad900 100644 --- a/plugins/scaffolder/src/components/fields/RepoBranchPicker/GitHubRepoBranchPicker.tsx +++ b/plugins/scaffolder/src/components/fields/RepoBranchPicker/GitHubRepoBranchPicker.tsx @@ -36,6 +36,7 @@ export const GitHubRepoBranchPicker = ({ state, rawErrors, accessToken, + isDisabled, required, }: BaseRepoBranchPickerProps<{ accessToken?: string; @@ -86,9 +87,15 @@ export const GitHubRepoBranchPicker = ({ onChange={(_, newValue) => { onChange({ branch: newValue || '' }); }} + disabled={isDisabled} options={availableBranches} renderInput={params => ( - + )} freeSolo autoSelect