Files
NapCatQQ/.pnpm-store/v3/files/95/ac5a26b1e0117b3459a9aadb8ff8b277836da0e84e7e806a5c05605d8c1aca74974bc9394fbac6203f64d8169cef85d7a9eb6c723350fb3de0ccb23567b343
T
TanTan e311ca3275
Build NapCat Artifacts / Windows Loader Test (push) Canceled after 0s
Build NapCat Artifacts / Type Check & Test (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Framework (push) Canceled after 0s
Build NapCat Artifacts / Build NapCat.Shell (push) Canceled after 0s
docs: 仓库链接指向本镜像仓库
2026-11-13 09:25:58 +08:00

31 lines
783 B
Plaintext

import {findClusterBreak} from "../src/index.js"
function assertEq(a, b) {
if (a !== b) throw new Error(`${a} !== ${b}`)
}
describe("findClusterBreak", () => {
function test(spec) {
it(spec, () => {
let breaks = [], next
while ((next = spec.indexOf("|")) > -1) {
breaks.push(next)
spec = spec.slice(0, next) + spec.slice(next + 1)
}
let found = []
for (let i = 0;;) {
let next = findClusterBreak(spec, i)
if (next == spec.length) break
found.push(i = next)
}
assertEq(found.join(","), breaks.join(","))
})
}
test("a|b|c|d")
test("a|é̠|ő|x")
test("😎|🙉")
test("👨‍🎤|💪🏽|👩‍👩‍👧‍👦|❤")
test("🇩🇪|🇫🇷|🇪🇸|x|🇮🇹")
})