Skip to content

Commit d2b016f

Browse files
committed
Some fixes in Delte Acheivement test
1 parent 216a703 commit d2b016f

2 files changed

Lines changed: 17 additions & 2 deletions

File tree

src/app.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ app.use(urlencoded({ extended: true }));
3232

3333
// 3) Handle file uploads (in-memory)
3434
const upload = multer({ storage: multer.memoryStorage(),
35-
limits: { fileSize: 5 * 1024 * 1024 }
35+
limits: { fileSize: 2 * 1024 * 1024 }
3636
});
3737

3838
// 4) Mount your routes, injecting `upload` middleware where needed

tests/Achievement.test.ts

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { createAchievement, getAchievements, getAchievementById, updateAchievementById, deleteAchievementById, removeMemberFromAchievement } from '../src/controllers/achievement.controller';
22
import * as achievementService from '../src/services/achievement.service';
3-
import { uploadImage } from '../src/utils/imageUtils';
3+
import { uploadImage, deleteImage } from '../src/utils/imageUtils';
44
import { ApiError } from '../src/utils/apiError';
55

66
jest.mock('../src/app', () => ({
@@ -24,8 +24,10 @@ jest.mock('../src/routes/achievements', () => {
2424

2525
jest.mock('../src/utils/imageUtils', () => ({
2626
uploadImage: jest.fn(),
27+
deleteImage: jest.fn(),
2728
}));
2829

30+
2931
const mockedUploadImage = uploadImage as jest.Mock;
3032

3133
describe('createAchievement (with image upload)', () => {
@@ -368,6 +370,7 @@ describe('updateAchievementById', () => {
368370
});
369371
});
370372

373+
const mockedDeleteImage = deleteImage as jest.Mock;
371374

372375
describe('deleteAchievementById', () => {
373376
it('should delete the achievement and return 200 success message', async () => {
@@ -392,14 +395,26 @@ describe('deleteAchievementById', () => {
392395
createdAt: new Date(),
393396
updatedById: null,
394397
updatedAt: new Date(),
398+
399+
createdBy: { id: 'admin_123', name: 'Admin' },
400+
updatedBy: null,
401+
members: [],
395402
};
396403

404+
jest
405+
.spyOn(achievementService, 'getAchievementById')
406+
.mockResolvedValue(mockDeletedAchievement);
407+
397408
jest
398409
.spyOn(achievementService, 'deleteAchievementById')
399410
.mockResolvedValue(mockDeletedAchievement);
400411

412+
mockedDeleteImage.mockResolvedValue(undefined);
413+
401414
await deleteAchievementById(req, res);
402415

416+
expect(achievementService.getAchievementById).toHaveBeenCalledWith(1);
417+
expect(mockedDeleteImage).toHaveBeenCalledWith(expect.anything(), mockDeletedAchievement.imageUrl);
403418
expect(achievementService.deleteAchievementById).toHaveBeenCalledWith(1);
404419
expect(res.status).toHaveBeenCalledWith(200);
405420
expect(res.json).toHaveBeenCalledWith({

0 commit comments

Comments
 (0)