diff --git a/dist-scripts/test-db-connection.js b/dist-scripts/test-db-connection.js deleted file mode 100644 index 868b4ed..0000000 --- a/dist-scripts/test-db-connection.js +++ /dev/null @@ -1,116 +0,0 @@ -"use strict"; -var __importDefault = (this && this.__importDefault) || function (mod) { - return (mod && mod.__esModule) ? mod : { "default": mod }; -}; -Object.defineProperty(exports, "__esModule", { value: true }); -var sqlite3_1 = __importDefault(require("sqlite3")); -var path_1 = __importDefault(require("path")); -var fs_1 = __importDefault(require("fs")); -// --- 配置 --- -// 使用与 connection.ts 中相同的路径逻辑 -var dbDir = path_1.default.resolve(__dirname, '../packages/backend/data'); -var dbPath = path_1.default.join(dbDir, 'nexus-terminal-test-connection.db'); // 使用不同的测试文件名避免冲突 -var flags = sqlite3_1.default.OPEN_READWRITE | sqlite3_1.default.OPEN_CREATE; -console.log("[Test Script] \u6D4B\u8BD5\u6570\u636E\u5E93\u76EE\u5F55: ".concat(dbDir)); -console.log("[Test Script] \u6D4B\u8BD5\u6570\u636E\u5E93\u6587\u4EF6\u8DEF\u5F84: ".concat(dbPath)); -console.log("[Test Script] \u4F7F\u7528\u7684\u6807\u5FD7: READWRITE | CREATE"); -// --- 测试函数 --- -function testConnection(filePath, openFlags) { - return new Promise(function (resolve, reject) { - var connectionFailed = false; // 跟踪连接错误 - var successPathReached = false; // 跟踪是否进入成功回调 - var errorFromCallback = null; // 存储回调中的错误 - console.log("[Test Function] \u51C6\u5907\u8FDE\u63A5: ".concat(filePath)); - // 确保目录存在 (如果不存在则创建) - var dir = path_1.default.dirname(filePath); - if (!fs_1.default.existsSync(dir)) { - console.log("[Test Function] \u76EE\u5F55\u4E0D\u5B58\u5728\uFF0C\u521B\u5EFA: ".concat(dir)); - try { - fs_1.default.mkdirSync(dir, { recursive: true }); - console.log("[Test Function] \u76EE\u5F55\u521B\u5EFA\u6210\u529F: ".concat(dir)); - } - catch (mkdirErr) { - console.error("[Test Function] \u521B\u5EFA\u76EE\u5F55\u5931\u8D25: ".concat(mkdirErr.message)); - reject("\u521B\u5EFA\u76EE\u5F55\u5931\u8D25: ".concat(mkdirErr.message)); - return; - } - } - else { - console.log("[Test Function] \u76EE\u5F55\u5DF2\u5B58\u5728: ".concat(dir)); - } - // 删除旧的测试文件(如果存在)以确保干净的测试环境 - if (fs_1.default.existsSync(filePath)) { - try { - fs_1.default.unlinkSync(filePath); - console.log("[Test Function] \u5DF2\u5220\u9664\u65E7\u7684\u6D4B\u8BD5\u6587\u4EF6: ".concat(filePath)); - } - catch (unlinkErr) { - console.warn("[Test Function] \u5220\u9664\u65E7\u6D4B\u8BD5\u6587\u4EF6\u5931\u8D25 (\u53EF\u80FD\u88AB\u9501\u5B9A?): ".concat(unlinkErr.message)); - // 不阻止测试继续,但记录警告 - } - } - var db = new sqlite3_1.default.Database(filePath, openFlags, function (err) { - console.log('[Test Callback] 回调函数被触发'); - if (err) { - console.error("[Test Callback] \u56DE\u8C03\u6536\u5230\u9519\u8BEF: ".concat(err.message)); - errorFromCallback = err; - connectionFailed = true; - // 注意:我们在这里故意不 reject 或 return,以模拟原始代码中可能的问题 - // reject(`回调错误: ${err.message}`); // 正常应该在这里 reject - // return; - } - else { - console.log('[Test Callback] 回调未收到错误 (成功路径)'); - successPathReached = true; - // db.close(); // 正常应该在这里关闭连接 - // resolve("连接成功 (回调)"); // 正常应该在这里 resolve - } - }); - // 为了模拟异步回调完成,我们设置一个短暂的延迟 - // 这不是完美的,但可以帮助我们看到回调执行后的状态 - setTimeout(function () { - var _a; - console.log('[Test Timeout] 检查最终状态...'); - console.log("[Test Timeout] connectionFailed \u6807\u5FD7: ".concat(connectionFailed)); - console.log("[Test Timeout] successPathReached \u6807\u5FD7: ".concat(successPathReached)); - console.log("[Test Timeout] errorFromCallback: ".concat((_a = errorFromCallback === null || errorFromCallback === void 0 ? void 0 : errorFromCallback.message) !== null && _a !== void 0 ? _a : 'null')); - // 根据标志判断最终结果 - if (connectionFailed && successPathReached) { - reject("\u6D4B\u8BD5\u5931\u8D25\uFF1A\u68C0\u6D4B\u5230\u9519\u8BEF (".concat(errorFromCallback === null || errorFromCallback === void 0 ? void 0 : errorFromCallback.message, ")\uFF0C\u4F46\u6210\u529F\u8DEF\u5F84\u4E5F\u88AB\u6267\u884C\uFF01")); - } - else if (connectionFailed) { - reject("\u6D4B\u8BD5\u5931\u8D25\uFF1A\u8FDE\u63A5\u65F6\u53D1\u751F\u9519\u8BEF: ".concat(errorFromCallback === null || errorFromCallback === void 0 ? void 0 : errorFromCallback.message)); - } - else if (successPathReached) { - // 尝试关闭数据库 - db.close(function (closeErr) { - if (closeErr) { - console.error("[Test Timeout] \u5173\u95ED\u6210\u529F\u8FDE\u63A5\u65F6\u51FA\u9519: ".concat(closeErr.message)); - resolve("\u6D4B\u8BD5\u6210\u529F\uFF1A\u8FDE\u63A5\u6210\u529F\uFF0C\u4F46\u5173\u95ED\u65F6\u51FA\u9519: ".concat(closeErr.message)); - } - else { - console.log('[Test Timeout] 数据库连接已成功关闭。'); - resolve("测试成功:连接成功并已关闭。"); - } - }); - } - else { - // 如果回调从未被正确触发(理论上不太可能,除非超时太短) - reject("测试失败:超时后未检测到成功或失败状态。"); - } - }, 1000); // 等待 1 秒让回调执行 - }); -} -// --- 执行测试 --- -console.log('--- 开始数据库连接测试 ---'); -testConnection(dbPath, flags) - .then(function (result) { - console.log('--- 测试结果 ---'); - console.log(result); - process.exit(0); // 成功退出 -}) - .catch(function (error) { - console.error('--- 测试结果 ---'); - console.error(error); - process.exit(1); // 失败退出 -});