From c43fe77a529b265ef4c7fafc2bde045a1efd7dc0 Mon Sep 17 00:00:00 2001 From: Matt Simerson Date: Tue, 1 Jul 2025 08:57:00 -0700 Subject: [PATCH 1/2] test: convert runner from mocha to node --test --- CHANGELOG.md | 2 ++ package.json | 4 ++-- test/Address.js | 2 ++ test/basic.js | 2 ++ test/functions.js | 32 ++++++++++++-------------------- 5 files changed, 20 insertions(+), 22 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f4e2087..4b00110 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/). ### Unreleased +- test: convert runner from mocha to node --test + ### [2.2.3] - 2025-01-13 - dep(eslint): upgrade to v9 diff --git a/package.json b/package.json index 78f134c..490b249 100644 --- a/package.json +++ b/package.json @@ -22,7 +22,7 @@ "lint:fix": "npx eslint *.js test --fix", "prettier": "npx prettier . --check", "prettier:fix": "npx prettier . --write --log-level=warn", - "test": "npx mocha@10", + "test": "node --test", "versions": "npx dependency-version-checker check", "versions:fix": "npx dependency-version-checker update && npm run prettier:fix" }, @@ -31,7 +31,7 @@ "url": "https://github.com/haraka/node-address-rfc2822.git" }, "devDependencies": { - "@haraka/eslint-config": "2.0.2" + "@haraka/eslint-config": "^2.0.2" }, "license": "MIT", "dependencies": { diff --git a/test/Address.js b/test/Address.js index 8338cc6..a4deb9d 100644 --- a/test/Address.js +++ b/test/Address.js @@ -1,4 +1,6 @@ const assert = require('node:assert/strict') +const test = require('node:test'); +const { describe, it } = require('node:test'); const address = require('../index') diff --git a/test/basic.js b/test/basic.js index 10bd246..638125a 100644 --- a/test/basic.js +++ b/test/basic.js @@ -1,4 +1,6 @@ const assert = require('node:assert/strict') +const test = require('node:test'); +const { describe, it } = require('node:test'); const fs = require('fs') const path = require('path') diff --git a/test/functions.js b/test/functions.js index 398c2fe..53c1112 100644 --- a/test/functions.js +++ b/test/functions.js @@ -1,41 +1,36 @@ const assert = require('assert') +const test = require('node:test'); +const { describe, it } = require('node:test'); const address = require('../index') describe('isAllLower', function () { - it('lower latin string', function (done) { + it('lower latin string', function () { assert.equal(true, address.isAllLower('abcdefg')) - done() }) }) describe('isAllUpper', function () { - it('upper latin string', function (done) { + it('upper latin string', function () { assert.equal(true, address.isAllUpper('ABCDEFG')) - done() }) }) describe('nameCase', function () { - it('john doe -> John Doe', function (done) { + it('john doe -> John Doe', function () { assert.equal('John Doe', address.nameCase('john doe')) - done() }) - it('JANE SMITH -> Jane Smith', function (done) { + it('JANE SMITH -> Jane Smith', function () { assert.equal('Jane Smith', address.nameCase('JANE SMITH')) - done() }) - it('marty mcleod -> Marty McLeod', function (done) { + it('marty mcleod -> Marty McLeod', function () { assert.equal('Marty McLeod', address.nameCase('marty mcleod')) - done() }) - it("martin o'mally -> Martin O'Malley", function (done) { + it("martin o'mally -> Martin O'Malley", function () { assert.equal("Martin O'Malley", address.nameCase("martin o'malley")) - done() }) - it('level iii support -> Level III Support', function (done) { + it('level iii support -> Level III Support', function () { assert.equal('Level III Support', address.nameCase('level iii support')) - done() }) }) @@ -82,7 +77,7 @@ describe('parseSender', function () { }) describe('parseReplyTo', function () { - it('=?utf-8?Q?Anne=20Standley=2C=20Protect=20My=20Public=20Media?= ', function (done) { + it('=?utf-8?Q?Anne=20Standley=2C=20Protect=20My=20Public=20Media?= ', function () { try { const r = address.parseReplyTo( '=?utf-8?Q?Anne=20Standley=2C=20Protect=20My=20Public=20Media?= ', @@ -97,21 +92,19 @@ describe('parseReplyTo', function () { } catch (e) { console.error(e) } - done() }) }) describe('parse with options', function () { - it('should not allow parsing display name with comma by default', function (done) { + it('should not allow parsing display name with comma by default', function () { try { address.parse('Foo, Bar ') } catch (e) { assert.equal(e.message, 'No results') } - done() }) - it('should allow parsing display name with comma', function (done) { + it('should allow parsing display name with comma', function () { try { const [r] = address.parse('Foo, Bar ', { allowCommaInDisplayName: true, @@ -121,6 +114,5 @@ describe('parse with options', function () { } catch (e) { console.error(e) } - done() }) }) From 0369fc44dd40ed9330943ab801a74a6a28b8c88e Mon Sep 17 00:00:00 2001 From: Matt Simerson Date: Tue, 1 Jul 2025 08:58:40 -0700 Subject: [PATCH 2/2] lint fix --- test/Address.js | 1 - test/basic.js | 1 - test/functions.js | 1 - 3 files changed, 3 deletions(-) diff --git a/test/Address.js b/test/Address.js index a4deb9d..147f41a 100644 --- a/test/Address.js +++ b/test/Address.js @@ -1,5 +1,4 @@ const assert = require('node:assert/strict') -const test = require('node:test'); const { describe, it } = require('node:test'); const address = require('../index') diff --git a/test/basic.js b/test/basic.js index 638125a..07574b4 100644 --- a/test/basic.js +++ b/test/basic.js @@ -1,5 +1,4 @@ const assert = require('node:assert/strict') -const test = require('node:test'); const { describe, it } = require('node:test'); const fs = require('fs') const path = require('path') diff --git a/test/functions.js b/test/functions.js index 53c1112..7372a40 100644 --- a/test/functions.js +++ b/test/functions.js @@ -1,5 +1,4 @@ const assert = require('assert') -const test = require('node:test'); const { describe, it } = require('node:test'); const address = require('../index')