metaltest/lib/metaltest.test.js

24 lines
766 B
JavaScript

import assert from 'node:assert/strict'
import { metaltest } from '../index.js'
const test = metaltest('Metaltest')
export { test }
test('success', () => new Promise((s, f) => setTimeout(s, 500)))
test('not equal', () => assert.notEqual({ a: 1 }, { a: 2 }))
test('fail with the message', () => new Promise((s, f) => setTimeout(s, 500)))
test('throw', () => {
return assert.rejects(async () => {
throw new Error('message')
}, { name: 'Error', message: 'message' })
})
import { runifmain, summaryreporter } from '../index.js'
await runifmain(import.meta, async () => {
const stats = await test.run(summaryreporter())
assert.equal(stats.success, 4)
assert.equal(stats.fail, 0)
assert.equal(stats.total, 4)
assert.equal(stats.title, 'Metaltest')
})