diff --git a/backend/test/roles.test.js b/backend/test/roles.test.js index fc7a64c..b4b65b0 100644 --- a/backend/test/roles.test.js +++ b/backend/test/roles.test.js @@ -1,25 +1,9 @@ const request = require('supertest'); -const app = require('../src/server'); -const { connectDB, closeDB } = require('../src/db'); +const app = require('../app'); -beforeAll(async () => { - await connectDB(); -}); - -afterAll(async () => { - await closeDB(); -}); - -describe('Role-based Access Control', () => { - test('should allow user with correct role to access protected route', async () => { - // This is a placeholder test - actual implementation would require - // creating test users, logging in, and testing specific routes - expect(true).toBe(true); - }); - - test('should deny access to user with incorrect role', async () => { - // This is a placeholder test - actual implementation would require - // creating test users with different roles and testing route access - expect(true).toBe(true); +describe('Role-based Access Control Tests', () => { + test('should have role middleware defined', () => { + const { requireRole } = require('../middleware/role.middleware'); + expect(typeof requireRole).toBe('function'); }); }); \ No newline at end of file diff --git a/backend/tests/roles.test.js b/backend/tests/roles.test.js index d99dedf..e2440bc 100644 --- a/backend/tests/roles.test.js +++ b/backend/tests/roles.test.js @@ -1,13 +1,26 @@ -// Test for role-based access control middleware +const request = require('supertest'); +const app = require('../app'); const { requireRole } = require('../middleware/role.middleware'); -describe('Role-based Access Control Middleware', () => { +describe('Role-based Access Control', () => { + // Test that the middleware exists and is a function test('requireRole should be a function', () => { expect(typeof requireRole).toBe('function'); }); - test('should return a function when called', () => { - const middleware = requireRole(['user']); - expect(typeof middleware).toBe('function'); + // Test that middleware allows access for users with correct role + test('should allow access for user with correct role', () => { + // This would need to be implemented with actual JWT mocking + // For now, just verify the function exists + const middleware = requireRole(['admin']); + expect(middleware).toBeDefined(); + }); + + // Test that middleware denies access for users without required role + test('should deny access for user without correct role', () => { + // This would need to be implemented with actual JWT mocking + // For now, just verify the function exists + const middleware = requireRole(['admin']); + expect(middleware).toBeDefined(); }); }); \ No newline at end of file