vtex-email-framework
Version:
Transactional emails development architecture
35 lines (25 loc) • 890 B
JavaScript
const { readdirSync } = require('node:fs');
const { resolve } = require('node:path');
const {test,after,describe} = require('node:test')
const { deepStrictEqual} = require('node:assert')
const files = resolve('emails', 'dist')
const app = require('../server/app')
const port = 3050
app.set('views', files)
const server = app.listen(port)
const templates = readdirSync(files)
.filter(file => /.hbs$/gi.test(file))
.map(file => file.split('.hbs')[0])
after(() => server.close())
describe("emails/dist/", () => {
for (let template of templates) {
test(template, async () => {
const response = await fetch(`http://localhost:${port}/${template}`)
if (!response.ok) {
const message = await response.text()
throw `${message.split('<pre>')[1].split('<br>')[0].replace(/'/g, "'")}`
}
deepStrictEqual(response.ok,true)
});
}
});