1
0
mirror of https://github.com/misskey-dev/misskey.git synced 2026-05-04 15:26:08 +02:00
Files
misskey/packages/backend/test/unit/misc/ulid.ts
かっこかり 6d15fe32d0 enhance(backend/test): Migrate tests to vitest (#16935)
* wip

* update fake-timers and migrate

* fix

* remove jest-mock

* fix

* fix

* fix

* fix

* attempt to fix unit tests

* attempt to fix e2e tests

* fix federation test [ci skip]

* attempt to fix e2e tests

* fix typecheck

* fix unit tests

* fix

* attempt to fix e2e

* fix

* Revert "attempt to fix e2e"

This reverts commit b7b7b05d85.

* attempt to fix e2e

* revert attempt to fix e2e

* update deps

* update vitest

* migrate

* attempt to fix e2e

* update

* fix

* remove vite swc plugin as oxc parser can handle decorators

* attempt to fix drive/files/create test

* Revert "attempt to fix drive/files/create test"

This reverts commit 4715153375.

* fix: エンドポイントにまつわるテストをunitからe2eに移動

* attempt to fix e2e

* remove swc

* attempt to fix e2e

* Revert "attempt to fix e2e"

This reverts commit 9fb86a4076.

* add logs for debug

* attempt to fix e2e

* Partially revert "attempt to fix e2e"

This reverts commit fb0008c85a.

* attempt to fix test

* fix: attempt to fix test

* Revert "fix: attempt to fix test"

This reverts commit ed2f5c40e8.

* Revert "attempt to fix test"

This reverts commit d7329c46f1.

* attempt to fix e2e

* fix: surpass eventemitter warning by increasing defaultMaxListeners

* attempt to fix e2e

* fix

* fix e2e not ending properly

* exp: add hanging-process reporter for investigation

* Revert "exp: add hanging-process reporter for investigation"

This reverts commit 26851f8282.

* update changelog
2026-04-20 14:57:29 +09:00

42 lines
1.5 KiB
TypeScript

/*
* SPDX-FileCopyrightText: syuilo and misskey-project
* SPDX-License-Identifier: AGPL-3.0-only
*/
import { describe, expect, test } from 'vitest';
import { parseUlidFull } from '@/misc/id/ulid.js';
// Timestamp part "01KPS7S300" encodes 1776816000000ms (2026-04-22T00:00:00.000Z)
// Verified: 1*32^8 + 19*32^7 + 22*32^6 + 25*32^5 + 7*32^4 + 25*32^3 + 3*32^2 = 1776816000000
describe('misc:ulid', () => {
test('parseUlidFull - timestamp is parsed correctly', () => {
// id[10..25] = all zeros (valid Crockford Base32)
// 2026-04-22T00:00:00.000Z
const { date } = parseUlidFull('01KPS7S3000000000000000000');
expect(date).toBe(1776816000000);
});
test('parseUlidFull - W/X/Y/Z at id[10] (chunk 1 head) do not throw', () => {
// id[10] = W
expect(() => parseUlidFull('01KPS7S300W000000000000000')).not.toThrow();
// id[10] = X
expect(() => parseUlidFull('01KPS7S300X000000000000000')).not.toThrow();
// id[10] = Y
expect(() => parseUlidFull('01KPS7S300Y000000000000000')).not.toThrow();
// id[10] = Z
expect(() => parseUlidFull('01KPS7S300Z000000000000000')).not.toThrow();
});
test('parseUlidFull - W/X/Y/Z at id[16] (chunk 2 head) do not throw', () => {
// id[16] = W
expect(() => parseUlidFull('01KPS7S300ABCDEFW000000000')).not.toThrow();
// id[16] = X
expect(() => parseUlidFull('01KPS7S300ABCDEFX000000000')).not.toThrow();
// id[16] = Y
expect(() => parseUlidFull('01KPS7S300ABCDEFY000000000')).not.toThrow();
// id[16] = Z
expect(() => parseUlidFull('01KPS7S300ABCDEFZ000000000')).not.toThrow();
});
});