Run more tests in CI

This commit is contained in:
Jordan Eldredge 2025-07-07 12:50:33 -07:00
parent 8425adaeff
commit 26e8e6dfeb
9 changed files with 50 additions and 1 deletions

View file

@ -9,7 +9,10 @@
"node": ">=22.0.0"
},
"scripts": {
"test": "jest",
"test": "npx turbo test",
"test:integration": "npx turbo run integration-tests",
"test:all": "npx turbo run test integration-tests",
"test:unit": "jest",
"lint": "eslint . --ext ts,tsx,js,jsx --rulesdir=packages/webamp-modern/tools/eslint-rules",
"type-check": "pnpm --filter webamp type-check && pnpm --filter ani-cursor type-check && pnpm --filter skin-database type-check && pnpm --filter webamp-docs type-check && pnpm --filter winamp-eqf type-check",
"deploy": "sh deploy.sh",

View file

@ -30,6 +30,10 @@ beforeEach(async () => {
await knex.seed.run();
});
afterAll(async () => {
await knex.destroy();
});
function gql(templateString: TemplateStringsArray): string {
return templateString[0];
}

View file

@ -7,6 +7,10 @@ beforeEach(async () => {
await knex.seed.run();
});
afterAll(async () => {
await knex.destroy();
});
test("fromMd5", async () => {
const ctx = new UserContext();
const files = await ArchiveFileModel.fromMd5(ctx, "a_fake_md5");

View file

@ -7,6 +7,10 @@ beforeEach(async () => {
await knex.seed.run();
});
afterAll(async () => {
await knex.destroy();
});
test("fromMd5", async () => {
const ctx = new UserContext();
const skin = await SkinModel.fromMd5(ctx, "a_fake_md5");

View file

@ -7,6 +7,10 @@ beforeEach(async () => {
await knex.migrate.latest();
});
afterAll(async () => {
await knex.destroy();
});
test("empty", async () => {
expect(await Skins.getAllClassicSkins()).toEqual([]);
expect(await Skins.getClassicSkinCount()).toBe(0);

View file

@ -49,6 +49,7 @@
},
"scripts": {
"lint": "eslint .",
"test": "jest",
"dev": "next dev",
"build": "next build",
"start": "next start",
@ -72,7 +73,19 @@
"@types/node-fetch": "^2.5.7",
"@typescript-eslint/eslint-plugin": "^7.1.0",
"@typescript-eslint/parser": "^7.1.0",
"@swc/jest": "^0.2.24",
"grats": "^0.0.31",
"typescript": "^5.3.3"
},
"jest": {
"testEnvironment": "node",
"extensionsToTreatAsEsm": [".ts"],
"moduleNameMapper": {
"^(\\.{1,2}/.*)\\.js$": "$1"
},
"transform": {
"^.+\\.(t|j)sx?$": ["@swc/jest"]
},
"setupFiles": ["<rootDir>/jest-setup.js"]
}
}

View file

@ -19,6 +19,10 @@ beforeEach(async () => {
await knex.seed.run();
});
afterAll(async () => {
await knex.destroy();
});
test("refresh", async () => {
const ctx = new UserContext();
const [skin] = await getSkinsToRefresh(ctx, 1);

3
pnpm-lock.yaml generated
View file

@ -220,6 +220,9 @@ importers:
specifier: ^13.2.4
version: 13.3.2
devDependencies:
'@swc/jest':
specifier: ^0.2.24
version: 0.2.36(@swc/core@1.4.12(@swc/helpers@0.5.15))
'@types/cookie-session':
specifier: ^2.0.48
version: 2.0.48

View file

@ -42,6 +42,16 @@
"dependsOn": ["ani-cursor#build", "winamp-eqf#build"],
"outputs": []
},
"webamp-modern#test": {
"outputs": []
},
"skin-database#test": {
"outputs": []
},
"webamp#integration-tests": {
"dependsOn": ["ani-cursor#build", "winamp-eqf#build"],
"outputs": []
},
"webamp#lint": {
"dependsOn": ["ani-cursor#build", "winamp-eqf#build"]
},