fix(email-nodemailer): skipVerify behavior being reversed (#6790)
Fixes #6789 The skipVerify field in NodemailerAdapterArgs worked in reverse of what it was supposed to do: - With skipVerify = true -> Verified transport - With skipVerify = false -> Did not verify transport This PR makes the property work in the intended way: - With skipVerify = true -> DO NOT verify transport - With skipVerify = false -> DO verify transport
This commit is contained in:
@@ -66,7 +66,7 @@ async function buildEmail(emailConfig?: NodemailerAdapterArgs): Promise<{
|
||||
transport = await createMockAccount(emailConfig)
|
||||
}
|
||||
|
||||
if (emailConfig.skipVerify !== false) {
|
||||
if (!emailConfig.skipVerify) {
|
||||
await verifyTransport(transport)
|
||||
}
|
||||
|
||||
|
||||
60
packages/email-nodemailer/src/plugin.spec.ts
Normal file
60
packages/email-nodemailer/src/plugin.spec.ts
Normal file
@@ -0,0 +1,60 @@
|
||||
import { jest } from '@jest/globals'
|
||||
|
||||
import nodemailer, { Transporter } from 'nodemailer'
|
||||
import { nodemailerAdapter, NodemailerAdapterArgs } from './index.js'
|
||||
|
||||
const defaultArgs: NodemailerAdapterArgs = {
|
||||
defaultFromAddress: 'test@test.com',
|
||||
defaultFromName: 'Test',
|
||||
}
|
||||
|
||||
describe('email-nodemailer', () => {
|
||||
|
||||
describe('transport verification', () => {
|
||||
let mockedVerify: jest.Mock<Transporter['verify']>
|
||||
let mockTransport: Transporter
|
||||
|
||||
beforeEach(() => {
|
||||
mockedVerify = jest.fn<Transporter['verify']>()
|
||||
mockTransport = nodemailer.createTransport({
|
||||
name: 'existing-transport',
|
||||
// eslint-disable-next-line @typescript-eslint/require-await
|
||||
send: async (mail) => {
|
||||
console.log('mock send', mail)
|
||||
},
|
||||
version: '0.0.1',
|
||||
verify: mockedVerify,
|
||||
})
|
||||
})
|
||||
|
||||
it('should be invoked when skipVerify = false', async () => {
|
||||
await nodemailerAdapter({
|
||||
...defaultArgs,
|
||||
transport: mockTransport,
|
||||
skipVerify: false,
|
||||
})
|
||||
|
||||
expect(mockedVerify.mock.calls).toHaveLength(1)
|
||||
})
|
||||
|
||||
it('should be invoked when skipVerify is undefined', async () => {
|
||||
await nodemailerAdapter({
|
||||
...defaultArgs,
|
||||
transport: mockTransport,
|
||||
skipVerify: false,
|
||||
})
|
||||
|
||||
expect(mockedVerify.mock.calls).toHaveLength(1)
|
||||
})
|
||||
|
||||
it('should not be invoked when skipVerify = true', async () => {
|
||||
await nodemailerAdapter({
|
||||
...defaultArgs,
|
||||
transport: mockTransport,
|
||||
skipVerify: true,
|
||||
})
|
||||
|
||||
expect(mockedVerify.mock.calls).toHaveLength(0)
|
||||
})
|
||||
})
|
||||
})
|
||||
Reference in New Issue
Block a user