diff --git a/src/app/serverViewState.test.js b/src/app/serverViewState.test.js index e6415b54..c4e783e3 100644 --- a/src/app/serverViewState.test.js +++ b/src/app/serverViewState.test.js @@ -446,6 +446,22 @@ describe('app/serverViewState', () => { expect(result.validatedURL).toBe('https://mainserver.com/'); }); + it('should not update the users URL when the Site URL is blank', async () => { + ServerInfo.mockImplementation(() => ({ + fetchConfigData: jest.fn().mockImplementation(() => { + return { + serverVersion: '7.8.0', + siteName: 'Mattermost', + siteURL: '', + }; + }), + })); + + const result = await serverViewState.handleServerURLValidation({}, 'https://server.com'); + expect(result.status).toBe(URLValidationStatus.OK); + expect(result.validatedURL).toBe('https://server.com/'); + }); + it('should warn the user when the Site URL is different but unreachable', async () => { ServerInfo.mockImplementation(({url}) => ({ fetchConfigData: jest.fn().mockImplementation(() => { diff --git a/src/app/serverViewState.ts b/src/app/serverViewState.ts index 8d05fabe..1ece4180 100644 --- a/src/app/serverViewState.ts +++ b/src/app/serverViewState.ts @@ -300,7 +300,7 @@ export class ServerViewState { return {status: URLValidationStatus.URLUpdated, serverVersion: remoteInfo.serverVersion, serverName: remoteInfo.siteName, validatedURL: remoteInfo.siteURL}; } - return {status: URLValidationStatus.OK, serverVersion: remoteInfo.serverVersion, serverName: remoteInfo.siteName, validatedURL: remoteInfo.siteURL}; + return {status: URLValidationStatus.OK, serverVersion: remoteInfo.serverVersion, serverName: remoteInfo.siteName, validatedURL: remoteURL.toString()}; }; private handleCloseView = (event: IpcMainEvent, viewId: string) => {