feat(release,build,tests): add automated multi-platform release pipeline and align runtime, model, and test updates

This commit is contained in:
2026-03-20 13:56:43 +00:00
parent 4d561b3874
commit b05c53f967
25 changed files with 3747 additions and 941 deletions

View File

@@ -46,10 +46,9 @@ describe('Package Model', () => {
return {
version,
publishedAt: new Date(),
publishedBy: testUserId,
publishedById: testUserId,
size: 1024,
checksum: `sha256-${crypto.randomUUID()}`,
checksumAlgorithm: 'sha256',
digest: `sha256:${crypto.randomUUID()}`,
downloads: 0,
metadata: {},
};
@@ -124,7 +123,7 @@ describe('Package Model', () => {
await createPackage('find-this');
await createPackage('other');
const results = await Package.search('search');
const results = await Package.searchPackages('search');
assertEquals(results.length, 1);
assertEquals(results[0].name, 'search-me');
});
@@ -134,14 +133,14 @@ describe('Package Model', () => {
pkg.description = 'A unique description for testing';
await pkg.save();
const results = await Package.search('unique description');
const results = await Package.searchPackages('unique description');
assertEquals(results.length, 1);
});
it('should filter by protocol', async () => {
await createPackage('npm-pkg');
const results = await Package.search('npm', { protocol: 'oci' });
const results = await Package.searchPackages('npm', { protocol: 'oci' });
assertEquals(results.length, 0);
});
@@ -150,10 +149,10 @@ describe('Package Model', () => {
await createPackage('page2');
await createPackage('page3');
const firstPage = await Package.search('page', { limit: 2, offset: 0 });
const firstPage = await Package.searchPackages('page', { limit: 2, offset: 0 });
assertEquals(firstPage.length, 2);
const secondPage = await Package.search('page', { limit: 2, offset: 2 });
const secondPage = await Package.searchPackages('page', { limit: 2, offset: 2 });
assertEquals(secondPage.length, 1);
});
});

View File

@@ -104,8 +104,8 @@ describe('TokenService', () => {
const validation = await tokenService.validateToken(rawToken, '127.0.0.1');
assertExists(validation);
assertEquals(validation.userId, testUserId);
assertEquals(validation.protocols.includes('npm'), true);
assertEquals(validation.token!.userId, testUserId);
assertEquals(validation.token!.protocols.includes('npm'), true);
});
it('should reject invalid token format', async () => {