Skip to content

Commit

Permalink
Fix GitPanel unit tests
Browse files Browse the repository at this point in the history
  • Loading branch information
Jialin Zhang authored and Zsailer committed May 15, 2024
1 parent b878c0b commit 479d519
Showing 1 changed file with 20 additions and 13 deletions.
33 changes: 20 additions & 13 deletions src/__tests__/test-components/GitPanel.spec.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -41,15 +41,20 @@ const mockedResponses: {
* @private
* @returns mock settings
*/
function MockSettings(commitAndPush = true, promptUserIdentity = false) {
function MockSettings(
commitAndPush = true,
promptUserIdentity = false,
simpleStaging = false
) {
return {
changed: {
connect: () => true,
disconnect: () => true
},
composite: {
commitAndPush,
promptUserIdentity
promptUserIdentity,
simpleStaging
}
};
}
Expand Down Expand Up @@ -151,8 +156,6 @@ describe('GitPanel', () => {
beforeEach(() => {
configSpy = props.model.config = jest.fn();
commitSpy = props.model.commit = jest.fn();
// @ts-expect-error turn off set status
props.model._setStatus = jest.fn();

// @ts-expect-error set a private prop
props.model._status = {
Expand All @@ -173,10 +176,15 @@ describe('GitPanel', () => {
state: 0
};

// @ts-expect-error turn off set status
props.model._setStatus = jest.fn(() => {
props.model._statusChanged.emit(props.model._status);
});

render(<GitPanel {...props} />);
});

it.skip('should commit when commit message is provided', async () => {
it('should commit when commit message is provided', async () => {
configSpy.mockResolvedValue({ options: commitUser });

await userEvent.type(screen.getAllByRole('textbox')[0], commitSummary);
Expand Down Expand Up @@ -212,16 +220,15 @@ describe('GitPanel', () => {
expect(commitSpy).not.toHaveBeenCalled();
});

it.skip('should prompt for user identity if explicitly configured', async () => {
it('should prompt for user identity if explicitly configured', async () => {
configSpy.mockResolvedValue({ options: commitUser });

props.settings = MockSettings(false, true) as any;
render(<GitPanel {...props} />);

mockUtils.showDialog.mockResolvedValue(dialogValue);

await userEvent.type(screen.getAllByRole('textbox')[0], commitSummary);
await userEvent.click(screen.getByRole('button', { name: 'Commit' }));
await userEvent.click(
screen.getAllByRole('button', { name: 'Commit' })[0]
);

expect(configSpy).toHaveBeenCalledTimes(1);
expect(configSpy.mock.calls[0]).toHaveLength(0);
Expand All @@ -231,7 +238,7 @@ describe('GitPanel', () => {
expect(commitSpy).toHaveBeenCalledWith(commitSummary, false, author);
});

it.skip('should prompt for user identity if user.name is not set', async () => {
it('should prompt for user identity if user.name is not set', async () => {
configSpy.mockImplementation(mockConfigImplementation('user.email'));
mockUtils.showDialog.mockResolvedValue(dialogValue);

Expand All @@ -247,7 +254,7 @@ describe('GitPanel', () => {
expect(commitSpy).toHaveBeenCalledWith(commitSummary, false, null);
});

it.skip('should prompt for user identity if user.email is not set', async () => {
it('should prompt for user identity if user.email is not set', async () => {
configSpy.mockImplementation(mockConfigImplementation('user.name'));
mockUtils.showDialog.mockResolvedValue(dialogValue);

Expand All @@ -263,7 +270,7 @@ describe('GitPanel', () => {
expect(commitSpy).toHaveBeenCalledWith(commitSummary, false, null);
});

it.skip('should not commit if no user identity is set and the user rejects the dialog', async () => {
it('should not commit if no user identity is set and the user rejects the dialog', async () => {
configSpy.mockResolvedValue({ options: {} });
mockUtils.showDialog.mockResolvedValue({
button: {
Expand Down

0 comments on commit 479d519

Please sign in to comment.