helpyourneighbour/backend/tests/roles.test.js
BibaBot cab7146445
Some checks are pending
Docker Test / test (push) Waiting to run
feat: Add role-based access control tests and middleware integration
2026-03-17 04:07:27 +00:00

32 lines
No EOL
1 KiB
JavaScript

const request = require('supertest');
const app = require('../src/server');
const { requireRole } = require('../middleware/role.middleware');
describe('Role Middleware', () => {
// Test for a route that requires 'admin' role
it('should deny access to users without admin role', async () => {
const response = await request(app)
.get('/admin/users')
.set('Authorization', 'Bearer invalid-token');
expect(response.status).toBe(401);
});
// Test for a route that requires 'moderator' role
it('should deny access to users without moderator role', async () => {
const response = await request(app)
.get('/moderator/reports')
.set('Authorization', 'Bearer invalid-token');
expect(response.status).toBe(401);
});
// Test for a route that requires 'user' role
it('should deny access to users without user role', async () => {
const response = await request(app)
.get('/profile')
.set('Authorization', 'Bearer invalid-token');
expect(response.status).toBe(401);
});
});