23 lines
744 B
JavaScript
23 lines
744 B
JavaScript
import test from 'node:test'
|
|
import assert from 'node:assert/strict'
|
|
import { buildBigrams } from '#tofu/tools/text/buildBigrams.js'
|
|
|
|
test('builds the character bigrams', () => {
|
|
assert.deepEqual(buildBigrams('abc'), ['ab', 'bc'])
|
|
assert.deepEqual(buildBigrams('gnocchis').length, 7)
|
|
})
|
|
|
|
test('keeps repeated bigrams', () => {
|
|
assert.deepEqual(buildBigrams('aaa'), ['aa', 'aa'])
|
|
})
|
|
|
|
test('keeps the spaces of a normalized text', () => {
|
|
assert.deepEqual(buildBigrams('a la'), ['a ', ' l', 'la'])
|
|
})
|
|
|
|
test('returns an empty list below two characters', () => {
|
|
assert.deepEqual(buildBigrams('a'), [])
|
|
assert.deepEqual(buildBigrams(''), [])
|
|
assert.deepEqual(buildBigrams(null), [])
|
|
assert.deepEqual(buildBigrams(undefined), [])
|
|
})
|