24 lines
1.2 KiB
JavaScript
24 lines
1.2 KiB
JavaScript
jest.mock('lucide-react', () => new Proxy({}, { get: (_t, prop) => (prop === '__esModule' ? true : () => null) }));
|
|
jest.mock('@/pages/doormile/customers/Customers', () => () => null);
|
|
jest.mock('@/pages/doormile/reports/Profitability', () => () => null);
|
|
jest.mock('@/pages/doormile/settings/agentStudio/AgentStudio', () => () => null);
|
|
jest.mock('@/lib/AuthContext', () => ({ useAuth: () => ({}) }));
|
|
|
|
import { settingsTabsFor } from '@/pages/doormile/settings/Settings';
|
|
import { canOnboardClients } from '@/lib/clientOnboarding';
|
|
|
|
const ids = (isOwner) => settingsTabsFor(isOwner).map((t) => t.id);
|
|
|
|
describe('Settings tabs per login', () => {
|
|
test('admin@doormile.com sees Skills & Tools', () => {
|
|
expect(ids(canOnboardClients({ email: 'admin@doormile.com', role: 'admin' }, false))).toEqual([
|
|
'profitability', 'customers', 'skills',
|
|
]);
|
|
});
|
|
|
|
test('other Doormile staff and clients do not', () => {
|
|
expect(ids(canOnboardClients({ email: 'ops@doormile.com', role: 'admin' }, false))).toEqual(['profitability', 'customers']);
|
|
expect(ids(canOnboardClients({ email: 'admin@doormile.com', role: 'admin' }, true))).toEqual(['profitability', 'customers']);
|
|
});
|
|
});
|