Skip to content

Commit a16a407

Browse files
committed
🔖 v1.4.0-beta.1: 合并 git hooks,修复测试 LoggerCore mock
- 将 pre-push 检查合并到 pre-commit hook - 移除测试中冗余的 LoggerCore mock - 修复 navigation_handle 测试 resetModules 后 LoggerCore 未初始化问题 - 版本号升级至 1.4.0-beta.1
1 parent dc4decb commit a16a407

7 files changed

Lines changed: 37 additions & 67 deletions

File tree

.husky/pre-commit

Lines changed: 30 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,35 @@
11
#!/bin/sh
22

3-
pnpm run lint-fix
3+
# Skip checks: SKIP_PRE_PUSH=1 git push or git push --no-verify
4+
if [ "$SKIP_PRE_PUSH" = "1" ]; then
5+
echo "⏭ SKIP_PRE_PUSH=1, skipping pre-push checks"
6+
exit 0
7+
fi
48

5-
# 将已暂存且被 lint-fix 修改过的文件重新加入暂存区
6-
STAGED=$(git diff --cached --name-only --diff-filter=d)
7-
CHANGED=$(git diff --name-only)
9+
# Only run checks when pushing to main or release/* branches
10+
remote="$1"
11+
need_check=0
812

9-
for file in $CHANGED; do
10-
case "$STAGED" in
11-
*"$file"*) git add "$file" ;;
12-
esac
13+
while read local_ref local_sha remote_ref remote_sha; do
14+
branch=$(echo "$remote_ref" | sed 's|refs/heads/||')
15+
16+
if [ "$branch" = "main" ] || echo "$branch" | grep -q "^release/"; then
17+
need_check=1
18+
echo "🔍 Detected push target: $branch"
19+
fi
1320
done
21+
22+
if [ "$need_check" = "0" ]; then
23+
exit 0
24+
fi
25+
26+
echo ""
27+
echo "▶ Running lint..."
28+
pnpm run lint || exit 1
29+
30+
echo ""
31+
echo "▶ Running tests..."
32+
pnpm run test:ci || exit 1
33+
34+
echo ""
35+
echo "✅ All checks passed! (build and e2e tests will run in CI)"

.husky/pre-push

Lines changed: 0 additions & 35 deletions
This file was deleted.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "scriptcat",
3-
"version": "1.4.0-beta",
3+
"version": "1.4.0-beta.1",
44
"description": "脚本猫,一个可以执行用户脚本的浏览器扩展,万物皆可脚本化,让你的浏览器可以做更多的事情!",
55
"author": "CodFrm",
66
"license": "GPLv3",

packages/message/message_queue.test.ts

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,6 @@
11
import { describe, it, expect, vi, beforeEach, afterEach } from "vitest";
22
import { MessageQueue, MessageQueueGroup, type IMessageQueue } from "./message_queue";
33

4-
// Mock LoggerCore
5-
vi.mock("@App/app/logger/core", () => ({
6-
default: {
7-
getInstance: () => ({
8-
logger: () => ({
9-
trace: vi.fn(),
10-
}),
11-
}),
12-
},
13-
}));
14-
154
const nextTick = () => Promise.resolve().then(() => {});
165

176
describe("MessageQueueGroup", () => {

packages/message/message_queue_group.test.ts

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,6 @@
11
import { describe, it, expect, vi, beforeEach, afterEach } from "vitest";
22
import { MessageQueue, MessageQueueGroup, type IMessageQueue } from "./message_queue";
33

4-
// Mock LoggerCore
5-
vi.mock("@App/app/logger/core", () => ({
6-
default: {
7-
getInstance: () => ({
8-
logger: () => ({
9-
trace: vi.fn(),
10-
}),
11-
}),
12-
},
13-
}));
14-
154
const nextTick = () => Promise.resolve().then(() => {});
165

176
describe("MessageQueueGroup", () => {

src/app/service/content/gm_api/navigation_handle.test.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,11 @@ import { UrlChangeEvent } from "./navigation_handle.js";
44
// attachNavigateHandler 使用模块级 attached 单例,需要在每个测试前重置模块
55
const importFresh = async () => {
66
vi.resetModules();
7+
// vi.resetModules() 会清空模块缓存,后续 import 得到全新的 LoggerCore 类,
8+
// 需要重新初始化以免后续测试文件中 LoggerCore.getInstance() 返回 undefined
9+
// @ts-expect-error 动态 import 路径别名在 tsc nodenext 下无法解析
10+
const { default: LC, EmptyWriter: EW } = await import("@App/app/logger/core");
11+
new LC({ level: "trace", consoleLevel: "trace", writer: new EW(), labels: { env: "test" } });
712
return await import("./navigation_handle.js");
813
};
914

src/manifest.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"manifest_version": 3,
33
"name": "__MSG_scriptcat__",
4-
"version": "1.4.0-beta",
4+
"version": "1.4.0.1200",
55
"author": "CodFrm",
66
"description": "__MSG_scriptcat_description__",
77
"options_ui": {

0 commit comments

Comments
 (0)