This commit is contained in:
+4
-6
@@ -55,7 +55,7 @@ describe('Enterprise Application Flow & API Validation', () => {
|
||||
expect(response.body).toHaveProperty('error', 'Email and message are required.');
|
||||
});
|
||||
|
||||
it('Should process request, return 200 OK, and invoke SMTP transporter with valid data', async () => {
|
||||
it('Should process request, return 200 OK, and invoke SMTP transporter with valid data', async () => {
|
||||
const validPayload = {
|
||||
firstName: 'Jane',
|
||||
lastName: 'Doe',
|
||||
@@ -68,12 +68,10 @@ describe('Enterprise Application Flow & API Validation', () => {
|
||||
|
||||
// Validate HTTP Response
|
||||
expect(response.status).toBe(200);
|
||||
expect(response.body).toHaveProperty('success', true);
|
||||
expect(response.body.message).toContain('confirmation email has been dispatched');
|
||||
|
||||
// Validate Business Logic (Verify if the mock function was actually called)
|
||||
const mockTransport = nodemailer.createTransport();
|
||||
expect(mockTransport.sendMail).toHaveBeenCalledTimes(1);
|
||||
// Validate Business Logic: Verifica o objeto 'transporter' que veio do server.js
|
||||
// Como este objeto é o que injetámos no server, ele já é o mock!
|
||||
expect(transporter.sendMail).toHaveBeenCalledTimes(1);
|
||||
});
|
||||
});
|
||||
});
|
||||
Reference in New Issue
Block a user