mirror of
https://github.com/lingble/chatwoot.git
synced 2025-11-06 14:08:10 +00:00
feat: Use vitest instead of jest, run all the specs anywhere in app/ folder in the CI (#9722)
Due to the pattern `**/specs/*.spec.js` defined in CircleCI, none of the frontend spec in the folders such as `specs/<domain-name>/getters.spec.js` were not executed in Circle CI. This PR fixes the issue, along with the following changes: - Use vitest instead of jest - Remove jest dependancies - Update tests to work with vitest --------- Co-authored-by: Muhsin Keloth <muhsinkeramam@gmail.com>
This commit is contained in:
@@ -3,18 +3,21 @@ import { clearBrowserSessionCookies } from 'dashboard/store/utils/api';
|
||||
import { replaceRouteWithReload } from '../CommonHelper';
|
||||
import Cookies from 'js-cookie';
|
||||
|
||||
const next = jest.fn();
|
||||
jest.mock('dashboard/store/utils/api', () => ({
|
||||
clearBrowserSessionCookies: jest.fn(),
|
||||
const next = vi.fn();
|
||||
vi.mock('dashboard/store/utils/api', () => ({
|
||||
clearBrowserSessionCookies: vi.fn(),
|
||||
}));
|
||||
jest.mock('../CommonHelper', () => ({ replaceRouteWithReload: jest.fn() }));
|
||||
vi.mock('../CommonHelper', () => ({ replaceRouteWithReload: vi.fn() }));
|
||||
|
||||
jest.mock('js-cookie', () => ({
|
||||
get: jest.fn(),
|
||||
}));
|
||||
|
||||
Cookies.get.mockReturnValueOnce(true).mockReturnValue(false);
|
||||
describe('#validateRouteAccess', () => {
|
||||
beforeEach(() => {
|
||||
vi.spyOn(Cookies, 'set');
|
||||
});
|
||||
|
||||
afterEach(() => {
|
||||
vi.restoreAllMocks();
|
||||
});
|
||||
|
||||
it('reset cookies and continues to the login page if the SSO parameters are present', () => {
|
||||
validateRouteAccess(
|
||||
{
|
||||
@@ -40,7 +43,8 @@ describe('#validateRouteAccess', () => {
|
||||
});
|
||||
|
||||
it('redirects to dashboard if auth cookie is present', () => {
|
||||
Cookies.get.mockImplementation(() => true);
|
||||
vi.spyOn(Cookies, 'get').mockReturnValueOnce(true);
|
||||
|
||||
validateRouteAccess({ name: 'login' }, next);
|
||||
expect(clearBrowserSessionCookies).not.toHaveBeenCalled();
|
||||
expect(replaceRouteWithReload).toHaveBeenCalledWith('/app/');
|
||||
|
||||
Reference in New Issue
Block a user