import React from 'react'; import { shallow, mount } from 'enzyme'; import App from '../../src/App'; import api from '../../src/api'; import Dashboard from '../../src/pages/Dashboard'; import Login from '../../src/pages/Login'; describe('', () => { test('renders without crashing', () => { const appWrapper = shallow(); expect(appWrapper.length).toBe(1); }); test('renders login page when not authenticated', () => { api.isAuthenticated = jest.fn(); api.isAuthenticated.mockReturnValue(false); const appWrapper = mount(); const login = appWrapper.find(Login); expect(login.length).toBe(1); const dashboard = appWrapper.find(Dashboard); expect(dashboard.length).toBe(0); }); test('renders dashboard when authenticated', () => { api.isAuthenticated = jest.fn(); api.isAuthenticated.mockReturnValue(true); const appWrapper = mount(); const dashboard = appWrapper.find(Dashboard); expect(dashboard.length).toBe(1); const login = appWrapper.find(Login); expect(login.length).toBe(0); }); });