CH-J Server Manageradministrasi server melalui SSH
Menu
Sumber yang diterbitkan

CH-J Server Manager

Jelajahi direktori dan file untuk rilis aplikasi tertentu.

Unduh ZIP sumber
CH-J / Server Manager 377 file
core-20261019T111616Z-160a00bfcddc Ditambahkan: · Dibuat:
logService.test.js Ditambahkan: Tanggal tidak tercatat 1,3 KB · 27 baris
Kode Unduh file
1"use strict";
3const test = require("node:test");
4const assert = require("node:assert/strict");
5const fs = require("node:fs");
6const os = require("node:os");
7const path = require("node:path");
8const { LogService, MAX_LIMIT, normalizeLimit } = require("../src/main/logging/logService");
10test("log service returns a bounded tail without a partial first record", async (t) => {
11 const root = fs.mkdtempSync(path.join(os.tmpdir(), "chj-log-"));
12 t.after(() => fs.rmSync(root, { recursive: true, force: true }));
13 const logPath = path.join(root, "core.log");
14 fs.writeFileSync(logPath, "first-record\nsecond-record\nthird-record\n");
15 const result = await new LogService(logPath).readTail({ maxBytes: 29 });
16 assert.equal(result.text, "second-record\nthird-record\n");
17 assert.equal(result.truncated, true);
18 assert.equal(result.size, 40);
19 assert.match(result.readAt, /^\d{4}-\d{2}-\d{2}T/);
20});
22test("log service handles a missing log and caps read limits", async (t) => {
23 const root = fs.mkdtempSync(path.join(os.tmpdir(), "chj-log-missing-"));
24 t.after(() => fs.rmSync(root, { recursive: true, force: true }));
25 assert.equal(normalizeLimit(Number.MAX_SAFE_INTEGER), MAX_LIMIT);
26 assert.equal((await new LogService(path.join(root, "missing.log")).readTail()).text, "");
27});
SHA-25683099441b516dc585e5dbebf22dc6c8fa3df77e539538f2b8673e6869e7bf137

CH-J Proprietary Software License 1.14 · Kode sumber disediakan berdasarkan CH-J Proprietary Software License 1.14. Ketersediaannya tidak mengubah ketentuan lisensi atau memberikan hak tambahan.

SHA-256 arsipa9605c0870a223b6a8542bb0705edd51d8b04f3069582653417a8397fabcc09a
File