diff --git a/backend/tests/setup.js b/backend/tests/setup.js index 58d4d9d..a457815 100644 --- a/backend/tests/setup.js +++ b/backend/tests/setup.js @@ -3,6 +3,8 @@ const { MongoMemoryServer } = require('mongodb-memory-server'); let mongoServer; +jest.setTimeout(30000); // 30 seconds for all hooks and tests + beforeAll(async ()=> { mongoServer = await MongoMemoryServer.create(); const mongoUri = mongoServer.getUri(); @@ -12,7 +14,9 @@ beforeAll(async ()=> { afterAll(async () => { await mongoose.disconnect(); - await mongoServer.stop(); + if (mongoServer) { + await mongoServer.stop(); + } }); afterEach(async () => { diff --git a/frontend/src/__tests__/Books.test.jsx b/frontend/src/__tests__/Books.test.jsx index b4f9f19..4929fb4 100644 --- a/frontend/src/__tests__/Books.test.jsx +++ b/frontend/src/__tests__/Books.test.jsx @@ -53,9 +53,10 @@ describe('Books Component', () => { }); }); - it('shows add book button for admin', () => { + it('shows add book button for admin', async () => { render(); - - expect(screen.getByText('Add Book')).toBeInTheDocument(); + await waitFor(() => { + expect(screen.getByText('Add Book')).toBeInTheDocument(); + }); }); }); \ No newline at end of file