@herdctl/discord 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/__tests__/auto-mode-handler.test.d.ts +2 -0
- package/dist/__tests__/auto-mode-handler.test.d.ts.map +1 -0
- package/dist/__tests__/auto-mode-handler.test.js +362 -0
- package/dist/__tests__/auto-mode-handler.test.js.map +1 -0
- package/dist/__tests__/discord-connector.test.d.ts +2 -0
- package/dist/__tests__/discord-connector.test.d.ts.map +1 -0
- package/dist/__tests__/discord-connector.test.js +958 -0
- package/dist/__tests__/discord-connector.test.js.map +1 -0
- package/dist/__tests__/error-handler.test.d.ts +2 -0
- package/dist/__tests__/error-handler.test.d.ts.map +1 -0
- package/dist/__tests__/error-handler.test.js +509 -0
- package/dist/__tests__/error-handler.test.js.map +1 -0
- package/dist/__tests__/errors.test.d.ts +2 -0
- package/dist/__tests__/errors.test.d.ts.map +1 -0
- package/dist/__tests__/errors.test.js +152 -0
- package/dist/__tests__/errors.test.js.map +1 -0
- package/dist/__tests__/logger.test.d.ts +2 -0
- package/dist/__tests__/logger.test.d.ts.map +1 -0
- package/dist/__tests__/logger.test.js +282 -0
- package/dist/__tests__/logger.test.js.map +1 -0
- package/dist/__tests__/mention-handler.test.d.ts +2 -0
- package/dist/__tests__/mention-handler.test.d.ts.map +1 -0
- package/dist/__tests__/mention-handler.test.js +547 -0
- package/dist/__tests__/mention-handler.test.js.map +1 -0
- package/dist/auto-mode-handler.d.ts +145 -0
- package/dist/auto-mode-handler.d.ts.map +1 -0
- package/dist/auto-mode-handler.js +211 -0
- package/dist/auto-mode-handler.js.map +1 -0
- package/dist/commands/__tests__/command-manager.test.d.ts +2 -0
- package/dist/commands/__tests__/command-manager.test.d.ts.map +1 -0
- package/dist/commands/__tests__/command-manager.test.js +307 -0
- package/dist/commands/__tests__/command-manager.test.js.map +1 -0
- package/dist/commands/__tests__/help.test.d.ts +2 -0
- package/dist/commands/__tests__/help.test.d.ts.map +1 -0
- package/dist/commands/__tests__/help.test.js +105 -0
- package/dist/commands/__tests__/help.test.js.map +1 -0
- package/dist/commands/__tests__/reset.test.d.ts +2 -0
- package/dist/commands/__tests__/reset.test.d.ts.map +1 -0
- package/dist/commands/__tests__/reset.test.js +140 -0
- package/dist/commands/__tests__/reset.test.js.map +1 -0
- package/dist/commands/__tests__/status.test.d.ts +2 -0
- package/dist/commands/__tests__/status.test.d.ts.map +1 -0
- package/dist/commands/__tests__/status.test.js +205 -0
- package/dist/commands/__tests__/status.test.js.map +1 -0
- package/dist/commands/command-manager.d.ts +66 -0
- package/dist/commands/command-manager.d.ts.map +1 -0
- package/dist/commands/command-manager.js +191 -0
- package/dist/commands/command-manager.js.map +1 -0
- package/dist/commands/help.d.ts +8 -0
- package/dist/commands/help.d.ts.map +1 -0
- package/dist/commands/help.js +27 -0
- package/dist/commands/help.js.map +1 -0
- package/dist/commands/index.d.ts +12 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +13 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/reset.d.ts +9 -0
- package/dist/commands/reset.d.ts.map +1 -0
- package/dist/commands/reset.js +28 -0
- package/dist/commands/reset.js.map +1 -0
- package/dist/commands/status.d.ts +9 -0
- package/dist/commands/status.d.ts.map +1 -0
- package/dist/commands/status.js +102 -0
- package/dist/commands/status.js.map +1 -0
- package/dist/commands/types.d.ts +87 -0
- package/dist/commands/types.d.ts.map +1 -0
- package/dist/commands/types.js +8 -0
- package/dist/commands/types.js.map +1 -0
- package/dist/discord-connector.d.ts +154 -0
- package/dist/discord-connector.d.ts.map +1 -0
- package/dist/discord-connector.js +638 -0
- package/dist/discord-connector.js.map +1 -0
- package/dist/error-handler.d.ts +237 -0
- package/dist/error-handler.d.ts.map +1 -0
- package/dist/error-handler.js +433 -0
- package/dist/error-handler.js.map +1 -0
- package/dist/errors.d.ts +61 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +77 -0
- package/dist/errors.js.map +1 -0
- package/dist/index.d.ts +34 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +36 -0
- package/dist/index.js.map +1 -0
- package/dist/logger.d.ts +119 -0
- package/dist/logger.d.ts.map +1 -0
- package/dist/logger.js +198 -0
- package/dist/logger.js.map +1 -0
- package/dist/mention-handler.d.ts +176 -0
- package/dist/mention-handler.d.ts.map +1 -0
- package/dist/mention-handler.js +236 -0
- package/dist/mention-handler.js.map +1 -0
- package/dist/session-manager/__tests__/errors.test.d.ts +2 -0
- package/dist/session-manager/__tests__/errors.test.d.ts.map +1 -0
- package/dist/session-manager/__tests__/errors.test.js +124 -0
- package/dist/session-manager/__tests__/errors.test.js.map +1 -0
- package/dist/session-manager/__tests__/session-manager.test.d.ts +2 -0
- package/dist/session-manager/__tests__/session-manager.test.d.ts.map +1 -0
- package/dist/session-manager/__tests__/session-manager.test.js +517 -0
- package/dist/session-manager/__tests__/session-manager.test.js.map +1 -0
- package/dist/session-manager/__tests__/types.test.d.ts +2 -0
- package/dist/session-manager/__tests__/types.test.d.ts.map +1 -0
- package/dist/session-manager/__tests__/types.test.js +169 -0
- package/dist/session-manager/__tests__/types.test.js.map +1 -0
- package/dist/session-manager/errors.d.ts +58 -0
- package/dist/session-manager/errors.d.ts.map +1 -0
- package/dist/session-manager/errors.js +70 -0
- package/dist/session-manager/errors.js.map +1 -0
- package/dist/session-manager/index.d.ts +11 -0
- package/dist/session-manager/index.d.ts.map +1 -0
- package/dist/session-manager/index.js +12 -0
- package/dist/session-manager/index.js.map +1 -0
- package/dist/session-manager/session-manager.d.ts +107 -0
- package/dist/session-manager/session-manager.d.ts.map +1 -0
- package/dist/session-manager/session-manager.js +347 -0
- package/dist/session-manager/session-manager.js.map +1 -0
- package/dist/session-manager/types.d.ts +167 -0
- package/dist/session-manager/types.d.ts.map +1 -0
- package/dist/session-manager/types.js +57 -0
- package/dist/session-manager/types.js.map +1 -0
- package/dist/types.d.ts +323 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +8 -0
- package/dist/types.js.map +1 -0
- package/dist/utils/__tests__/formatting.test.d.ts +2 -0
- package/dist/utils/__tests__/formatting.test.d.ts.map +1 -0
- package/dist/utils/__tests__/formatting.test.js +571 -0
- package/dist/utils/__tests__/formatting.test.js.map +1 -0
- package/dist/utils/formatting.d.ts +211 -0
- package/dist/utils/formatting.d.ts.map +1 -0
- package/dist/utils/formatting.js +305 -0
- package/dist/utils/formatting.js.map +1 -0
- package/dist/utils/index.d.ts +5 -0
- package/dist/utils/index.d.ts.map +1 -0
- package/dist/utils/index.js +9 -0
- package/dist/utils/index.js.map +1 -0
- package/package.json +49 -0
|
@@ -0,0 +1,152 @@
|
|
|
1
|
+
import { describe, it, expect } from "vitest";
|
|
2
|
+
import { DiscordErrorCode, DiscordConnectorError, DiscordConnectionError, AlreadyConnectedError, InvalidTokenError, MissingTokenError, isDiscordConnectorError, } from "../errors.js";
|
|
3
|
+
// =============================================================================
|
|
4
|
+
// DiscordConnectorError Tests
|
|
5
|
+
// =============================================================================
|
|
6
|
+
describe("DiscordConnectorError", () => {
|
|
7
|
+
it("creates error with correct properties", () => {
|
|
8
|
+
const error = new DiscordConnectorError("Test error message", DiscordErrorCode.CONNECTION_FAILED, "test-agent");
|
|
9
|
+
expect(error.message).toBe("Test error message");
|
|
10
|
+
expect(error.code).toBe(DiscordErrorCode.CONNECTION_FAILED);
|
|
11
|
+
expect(error.agentName).toBe("test-agent");
|
|
12
|
+
expect(error.name).toBe("DiscordConnectorError");
|
|
13
|
+
});
|
|
14
|
+
it("extends Error", () => {
|
|
15
|
+
const error = new DiscordConnectorError("Test error", DiscordErrorCode.CONNECTION_FAILED, "test-agent");
|
|
16
|
+
expect(error).toBeInstanceOf(Error);
|
|
17
|
+
expect(error).toBeInstanceOf(DiscordConnectorError);
|
|
18
|
+
});
|
|
19
|
+
it("preserves cause when provided", () => {
|
|
20
|
+
const cause = new Error("Original error");
|
|
21
|
+
const error = new DiscordConnectorError("Wrapped error", DiscordErrorCode.CONNECTION_FAILED, "test-agent", { cause });
|
|
22
|
+
expect(error.cause).toBe(cause);
|
|
23
|
+
});
|
|
24
|
+
});
|
|
25
|
+
// =============================================================================
|
|
26
|
+
// DiscordConnectionError Tests
|
|
27
|
+
// =============================================================================
|
|
28
|
+
describe("DiscordConnectionError", () => {
|
|
29
|
+
it("creates error with formatted message", () => {
|
|
30
|
+
const error = new DiscordConnectionError("test-agent", "Network timeout");
|
|
31
|
+
expect(error.message).toBe("Discord connection failed for agent 'test-agent': Network timeout");
|
|
32
|
+
expect(error.code).toBe(DiscordErrorCode.CONNECTION_FAILED);
|
|
33
|
+
expect(error.agentName).toBe("test-agent");
|
|
34
|
+
expect(error.name).toBe("DiscordConnectionError");
|
|
35
|
+
});
|
|
36
|
+
it("extends DiscordConnectorError", () => {
|
|
37
|
+
const error = new DiscordConnectionError("test-agent", "Test");
|
|
38
|
+
expect(error).toBeInstanceOf(DiscordConnectorError);
|
|
39
|
+
expect(error).toBeInstanceOf(Error);
|
|
40
|
+
});
|
|
41
|
+
it("preserves cause when provided", () => {
|
|
42
|
+
const cause = new Error("Socket error");
|
|
43
|
+
const error = new DiscordConnectionError("test-agent", "Connection lost", {
|
|
44
|
+
cause,
|
|
45
|
+
});
|
|
46
|
+
expect(error.cause).toBe(cause);
|
|
47
|
+
});
|
|
48
|
+
});
|
|
49
|
+
// =============================================================================
|
|
50
|
+
// AlreadyConnectedError Tests
|
|
51
|
+
// =============================================================================
|
|
52
|
+
describe("AlreadyConnectedError", () => {
|
|
53
|
+
it("creates error with formatted message", () => {
|
|
54
|
+
const error = new AlreadyConnectedError("test-agent");
|
|
55
|
+
expect(error.message).toBe("Discord connector for agent 'test-agent' is already connected");
|
|
56
|
+
expect(error.code).toBe(DiscordErrorCode.ALREADY_CONNECTED);
|
|
57
|
+
expect(error.agentName).toBe("test-agent");
|
|
58
|
+
expect(error.name).toBe("AlreadyConnectedError");
|
|
59
|
+
});
|
|
60
|
+
it("extends DiscordConnectorError", () => {
|
|
61
|
+
const error = new AlreadyConnectedError("test-agent");
|
|
62
|
+
expect(error).toBeInstanceOf(DiscordConnectorError);
|
|
63
|
+
expect(error).toBeInstanceOf(Error);
|
|
64
|
+
});
|
|
65
|
+
});
|
|
66
|
+
// =============================================================================
|
|
67
|
+
// InvalidTokenError Tests
|
|
68
|
+
// =============================================================================
|
|
69
|
+
describe("InvalidTokenError", () => {
|
|
70
|
+
it("creates error with formatted message", () => {
|
|
71
|
+
const error = new InvalidTokenError("test-agent", "Token expired");
|
|
72
|
+
expect(error.message).toBe("Invalid Discord bot token for agent 'test-agent': Token expired");
|
|
73
|
+
expect(error.code).toBe(DiscordErrorCode.INVALID_TOKEN);
|
|
74
|
+
expect(error.agentName).toBe("test-agent");
|
|
75
|
+
expect(error.name).toBe("InvalidTokenError");
|
|
76
|
+
});
|
|
77
|
+
it("extends DiscordConnectorError", () => {
|
|
78
|
+
const error = new InvalidTokenError("test-agent", "Test");
|
|
79
|
+
expect(error).toBeInstanceOf(DiscordConnectorError);
|
|
80
|
+
expect(error).toBeInstanceOf(Error);
|
|
81
|
+
});
|
|
82
|
+
});
|
|
83
|
+
// =============================================================================
|
|
84
|
+
// MissingTokenError Tests
|
|
85
|
+
// =============================================================================
|
|
86
|
+
describe("MissingTokenError", () => {
|
|
87
|
+
it("creates error with formatted message", () => {
|
|
88
|
+
const error = new MissingTokenError("test-agent", "MY_BOT_TOKEN");
|
|
89
|
+
expect(error.message).toBe("Missing Discord bot token for agent 'test-agent': environment variable 'MY_BOT_TOKEN' is not set");
|
|
90
|
+
expect(error.code).toBe(DiscordErrorCode.MISSING_TOKEN);
|
|
91
|
+
expect(error.agentName).toBe("test-agent");
|
|
92
|
+
expect(error.name).toBe("MissingTokenError");
|
|
93
|
+
});
|
|
94
|
+
it("extends DiscordConnectorError", () => {
|
|
95
|
+
const error = new MissingTokenError("test-agent", "TOKEN_ENV");
|
|
96
|
+
expect(error).toBeInstanceOf(DiscordConnectorError);
|
|
97
|
+
expect(error).toBeInstanceOf(Error);
|
|
98
|
+
});
|
|
99
|
+
});
|
|
100
|
+
// =============================================================================
|
|
101
|
+
// isDiscordConnectorError Tests
|
|
102
|
+
// =============================================================================
|
|
103
|
+
describe("isDiscordConnectorError", () => {
|
|
104
|
+
it("returns true for DiscordConnectorError", () => {
|
|
105
|
+
const error = new DiscordConnectorError("Test", DiscordErrorCode.CONNECTION_FAILED, "test-agent");
|
|
106
|
+
expect(isDiscordConnectorError(error)).toBe(true);
|
|
107
|
+
});
|
|
108
|
+
it("returns true for DiscordConnectionError", () => {
|
|
109
|
+
const error = new DiscordConnectionError("test-agent", "Test");
|
|
110
|
+
expect(isDiscordConnectorError(error)).toBe(true);
|
|
111
|
+
});
|
|
112
|
+
it("returns true for AlreadyConnectedError", () => {
|
|
113
|
+
const error = new AlreadyConnectedError("test-agent");
|
|
114
|
+
expect(isDiscordConnectorError(error)).toBe(true);
|
|
115
|
+
});
|
|
116
|
+
it("returns true for InvalidTokenError", () => {
|
|
117
|
+
const error = new InvalidTokenError("test-agent", "Test");
|
|
118
|
+
expect(isDiscordConnectorError(error)).toBe(true);
|
|
119
|
+
});
|
|
120
|
+
it("returns true for MissingTokenError", () => {
|
|
121
|
+
const error = new MissingTokenError("test-agent", "TOKEN");
|
|
122
|
+
expect(isDiscordConnectorError(error)).toBe(true);
|
|
123
|
+
});
|
|
124
|
+
it("returns false for regular Error", () => {
|
|
125
|
+
const error = new Error("Test");
|
|
126
|
+
expect(isDiscordConnectorError(error)).toBe(false);
|
|
127
|
+
});
|
|
128
|
+
it("returns false for null", () => {
|
|
129
|
+
expect(isDiscordConnectorError(null)).toBe(false);
|
|
130
|
+
});
|
|
131
|
+
it("returns false for undefined", () => {
|
|
132
|
+
expect(isDiscordConnectorError(undefined)).toBe(false);
|
|
133
|
+
});
|
|
134
|
+
it("returns false for string", () => {
|
|
135
|
+
expect(isDiscordConnectorError("error message")).toBe(false);
|
|
136
|
+
});
|
|
137
|
+
});
|
|
138
|
+
// =============================================================================
|
|
139
|
+
// DiscordErrorCode Tests
|
|
140
|
+
// =============================================================================
|
|
141
|
+
describe("DiscordErrorCode", () => {
|
|
142
|
+
it("has all expected error codes", () => {
|
|
143
|
+
expect(DiscordErrorCode.CONNECTION_FAILED).toBe("DISCORD_CONNECTION_FAILED");
|
|
144
|
+
expect(DiscordErrorCode.ALREADY_CONNECTED).toBe("DISCORD_ALREADY_CONNECTED");
|
|
145
|
+
expect(DiscordErrorCode.NOT_CONNECTED).toBe("DISCORD_NOT_CONNECTED");
|
|
146
|
+
expect(DiscordErrorCode.INVALID_TOKEN).toBe("DISCORD_INVALID_TOKEN");
|
|
147
|
+
expect(DiscordErrorCode.MISSING_TOKEN).toBe("DISCORD_MISSING_TOKEN");
|
|
148
|
+
expect(DiscordErrorCode.GATEWAY_ERROR).toBe("DISCORD_GATEWAY_ERROR");
|
|
149
|
+
expect(DiscordErrorCode.RATE_LIMITED).toBe("DISCORD_RATE_LIMITED");
|
|
150
|
+
});
|
|
151
|
+
});
|
|
152
|
+
//# sourceMappingURL=errors.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errors.test.js","sourceRoot":"","sources":["../../src/__tests__/errors.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/logger.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,282 @@
|
|
|
1
|
+
import { describe, it, expect, beforeEach, afterEach, vi } from "vitest";
|
|
2
|
+
import { DiscordLogger, createLoggerFromConfig, createDefaultDiscordLogger, } from "../logger.js";
|
|
3
|
+
// =============================================================================
|
|
4
|
+
// Test Fixtures
|
|
5
|
+
// =============================================================================
|
|
6
|
+
function createMockDiscordConfig(logLevel = "standard") {
|
|
7
|
+
return {
|
|
8
|
+
bot_token_env: "TEST_BOT_TOKEN",
|
|
9
|
+
session_expiry_hours: 24,
|
|
10
|
+
log_level: logLevel,
|
|
11
|
+
guilds: [],
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
// =============================================================================
|
|
15
|
+
// DiscordLogger Tests
|
|
16
|
+
// =============================================================================
|
|
17
|
+
describe("DiscordLogger", () => {
|
|
18
|
+
beforeEach(() => {
|
|
19
|
+
vi.spyOn(console, "debug").mockImplementation(() => { });
|
|
20
|
+
vi.spyOn(console, "info").mockImplementation(() => { });
|
|
21
|
+
vi.spyOn(console, "warn").mockImplementation(() => { });
|
|
22
|
+
vi.spyOn(console, "error").mockImplementation(() => { });
|
|
23
|
+
});
|
|
24
|
+
afterEach(() => {
|
|
25
|
+
vi.restoreAllMocks();
|
|
26
|
+
});
|
|
27
|
+
describe("constructor", () => {
|
|
28
|
+
it("creates logger with default settings", () => {
|
|
29
|
+
const logger = new DiscordLogger({ agentName: "test-agent" });
|
|
30
|
+
expect(logger.getLogLevel()).toBe("standard");
|
|
31
|
+
expect(logger.isRedactionEnabled()).toBe(true);
|
|
32
|
+
});
|
|
33
|
+
it("creates logger with custom log level", () => {
|
|
34
|
+
const logger = new DiscordLogger({
|
|
35
|
+
agentName: "test-agent",
|
|
36
|
+
logLevel: "verbose",
|
|
37
|
+
});
|
|
38
|
+
expect(logger.getLogLevel()).toBe("verbose");
|
|
39
|
+
});
|
|
40
|
+
it("creates logger with custom prefix", () => {
|
|
41
|
+
const logger = new DiscordLogger({
|
|
42
|
+
agentName: "test-agent",
|
|
43
|
+
prefix: "[custom]",
|
|
44
|
+
});
|
|
45
|
+
logger.info("test message");
|
|
46
|
+
expect(console.info).toHaveBeenCalledWith("[custom]", "test message");
|
|
47
|
+
});
|
|
48
|
+
it("creates logger with redaction disabled", () => {
|
|
49
|
+
const logger = new DiscordLogger({
|
|
50
|
+
agentName: "test-agent",
|
|
51
|
+
redactContent: false,
|
|
52
|
+
});
|
|
53
|
+
expect(logger.isRedactionEnabled()).toBe(false);
|
|
54
|
+
});
|
|
55
|
+
});
|
|
56
|
+
describe("log level filtering", () => {
|
|
57
|
+
describe("minimal level", () => {
|
|
58
|
+
it("logs error messages", () => {
|
|
59
|
+
const logger = new DiscordLogger({
|
|
60
|
+
agentName: "test",
|
|
61
|
+
logLevel: "minimal",
|
|
62
|
+
});
|
|
63
|
+
logger.error("error message");
|
|
64
|
+
expect(console.error).toHaveBeenCalled();
|
|
65
|
+
});
|
|
66
|
+
it("logs warn messages", () => {
|
|
67
|
+
const logger = new DiscordLogger({
|
|
68
|
+
agentName: "test",
|
|
69
|
+
logLevel: "minimal",
|
|
70
|
+
});
|
|
71
|
+
logger.warn("warn message");
|
|
72
|
+
expect(console.warn).toHaveBeenCalled();
|
|
73
|
+
});
|
|
74
|
+
it("does not log info messages", () => {
|
|
75
|
+
const logger = new DiscordLogger({
|
|
76
|
+
agentName: "test",
|
|
77
|
+
logLevel: "minimal",
|
|
78
|
+
});
|
|
79
|
+
logger.info("info message");
|
|
80
|
+
expect(console.info).not.toHaveBeenCalled();
|
|
81
|
+
});
|
|
82
|
+
it("does not log debug messages", () => {
|
|
83
|
+
const logger = new DiscordLogger({
|
|
84
|
+
agentName: "test",
|
|
85
|
+
logLevel: "minimal",
|
|
86
|
+
});
|
|
87
|
+
logger.debug("debug message");
|
|
88
|
+
expect(console.debug).not.toHaveBeenCalled();
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
describe("standard level", () => {
|
|
92
|
+
it("logs error messages", () => {
|
|
93
|
+
const logger = new DiscordLogger({
|
|
94
|
+
agentName: "test",
|
|
95
|
+
logLevel: "standard",
|
|
96
|
+
});
|
|
97
|
+
logger.error("error message");
|
|
98
|
+
expect(console.error).toHaveBeenCalled();
|
|
99
|
+
});
|
|
100
|
+
it("logs warn messages", () => {
|
|
101
|
+
const logger = new DiscordLogger({
|
|
102
|
+
agentName: "test",
|
|
103
|
+
logLevel: "standard",
|
|
104
|
+
});
|
|
105
|
+
logger.warn("warn message");
|
|
106
|
+
expect(console.warn).toHaveBeenCalled();
|
|
107
|
+
});
|
|
108
|
+
it("logs info messages", () => {
|
|
109
|
+
const logger = new DiscordLogger({
|
|
110
|
+
agentName: "test",
|
|
111
|
+
logLevel: "standard",
|
|
112
|
+
});
|
|
113
|
+
logger.info("info message");
|
|
114
|
+
expect(console.info).toHaveBeenCalled();
|
|
115
|
+
});
|
|
116
|
+
it("does not log debug messages", () => {
|
|
117
|
+
const logger = new DiscordLogger({
|
|
118
|
+
agentName: "test",
|
|
119
|
+
logLevel: "standard",
|
|
120
|
+
});
|
|
121
|
+
logger.debug("debug message");
|
|
122
|
+
expect(console.debug).not.toHaveBeenCalled();
|
|
123
|
+
});
|
|
124
|
+
});
|
|
125
|
+
describe("verbose level", () => {
|
|
126
|
+
it("logs all message types", () => {
|
|
127
|
+
const logger = new DiscordLogger({
|
|
128
|
+
agentName: "test",
|
|
129
|
+
logLevel: "verbose",
|
|
130
|
+
});
|
|
131
|
+
logger.error("error message");
|
|
132
|
+
logger.warn("warn message");
|
|
133
|
+
logger.info("info message");
|
|
134
|
+
logger.debug("debug message");
|
|
135
|
+
expect(console.error).toHaveBeenCalled();
|
|
136
|
+
expect(console.warn).toHaveBeenCalled();
|
|
137
|
+
expect(console.info).toHaveBeenCalled();
|
|
138
|
+
expect(console.debug).toHaveBeenCalled();
|
|
139
|
+
});
|
|
140
|
+
});
|
|
141
|
+
});
|
|
142
|
+
describe("content redaction", () => {
|
|
143
|
+
it("redacts sensitive keys in verbose mode", () => {
|
|
144
|
+
const logger = new DiscordLogger({
|
|
145
|
+
agentName: "test",
|
|
146
|
+
logLevel: "verbose",
|
|
147
|
+
redactContent: true,
|
|
148
|
+
});
|
|
149
|
+
logger.info("test", {
|
|
150
|
+
content: "sensitive content",
|
|
151
|
+
prompt: "user prompt",
|
|
152
|
+
token: "secret-token",
|
|
153
|
+
safeKey: "safe value",
|
|
154
|
+
});
|
|
155
|
+
expect(console.info).toHaveBeenCalledWith("[discord:test]", "test", expect.objectContaining({
|
|
156
|
+
content: "[REDACTED 17 chars]",
|
|
157
|
+
prompt: "[REDACTED 11 chars]",
|
|
158
|
+
token: "[REDACTED 12 chars]",
|
|
159
|
+
safeKey: "safe value",
|
|
160
|
+
}));
|
|
161
|
+
});
|
|
162
|
+
it("does not redact when redactContent is false", () => {
|
|
163
|
+
const logger = new DiscordLogger({
|
|
164
|
+
agentName: "test",
|
|
165
|
+
logLevel: "verbose",
|
|
166
|
+
redactContent: false,
|
|
167
|
+
});
|
|
168
|
+
logger.info("test", {
|
|
169
|
+
content: "sensitive content",
|
|
170
|
+
});
|
|
171
|
+
expect(console.info).toHaveBeenCalledWith("[discord:test]", "test", expect.objectContaining({
|
|
172
|
+
content: "sensitive content",
|
|
173
|
+
}));
|
|
174
|
+
});
|
|
175
|
+
it("redacts arrays", () => {
|
|
176
|
+
const logger = new DiscordLogger({
|
|
177
|
+
agentName: "test",
|
|
178
|
+
logLevel: "verbose",
|
|
179
|
+
redactContent: true,
|
|
180
|
+
});
|
|
181
|
+
logger.info("test", {
|
|
182
|
+
content: ["item1", "item2", "item3"],
|
|
183
|
+
});
|
|
184
|
+
expect(console.info).toHaveBeenCalledWith("[discord:test]", "test", expect.objectContaining({
|
|
185
|
+
content: "[REDACTED 3 items]",
|
|
186
|
+
}));
|
|
187
|
+
});
|
|
188
|
+
it("redacts nested objects", () => {
|
|
189
|
+
const logger = new DiscordLogger({
|
|
190
|
+
agentName: "test",
|
|
191
|
+
logLevel: "verbose",
|
|
192
|
+
redactContent: true,
|
|
193
|
+
});
|
|
194
|
+
logger.info("test", {
|
|
195
|
+
nested: {
|
|
196
|
+
content: "nested sensitive",
|
|
197
|
+
safe: "safe value",
|
|
198
|
+
},
|
|
199
|
+
});
|
|
200
|
+
expect(console.info).toHaveBeenCalledWith("[discord:test]", "test", expect.objectContaining({
|
|
201
|
+
nested: {
|
|
202
|
+
content: "[REDACTED 16 chars]",
|
|
203
|
+
safe: "safe value",
|
|
204
|
+
},
|
|
205
|
+
}));
|
|
206
|
+
});
|
|
207
|
+
it("does not redact in standard mode", () => {
|
|
208
|
+
const logger = new DiscordLogger({
|
|
209
|
+
agentName: "test",
|
|
210
|
+
logLevel: "standard",
|
|
211
|
+
redactContent: true,
|
|
212
|
+
});
|
|
213
|
+
logger.info("test", {
|
|
214
|
+
content: "sensitive content",
|
|
215
|
+
});
|
|
216
|
+
expect(console.info).toHaveBeenCalledWith("[discord:test]", "test", expect.objectContaining({
|
|
217
|
+
content: "sensitive content",
|
|
218
|
+
}));
|
|
219
|
+
});
|
|
220
|
+
});
|
|
221
|
+
describe("message formatting", () => {
|
|
222
|
+
it("logs message without data", () => {
|
|
223
|
+
const logger = new DiscordLogger({
|
|
224
|
+
agentName: "test",
|
|
225
|
+
logLevel: "standard",
|
|
226
|
+
});
|
|
227
|
+
logger.info("simple message");
|
|
228
|
+
expect(console.info).toHaveBeenCalledWith("[discord:test]", "simple message");
|
|
229
|
+
});
|
|
230
|
+
it("logs message with data", () => {
|
|
231
|
+
const logger = new DiscordLogger({
|
|
232
|
+
agentName: "test",
|
|
233
|
+
logLevel: "standard",
|
|
234
|
+
});
|
|
235
|
+
logger.info("message with data", { key: "value" });
|
|
236
|
+
expect(console.info).toHaveBeenCalledWith("[discord:test]", "message with data", { key: "value" });
|
|
237
|
+
});
|
|
238
|
+
});
|
|
239
|
+
});
|
|
240
|
+
// =============================================================================
|
|
241
|
+
// Factory Function Tests
|
|
242
|
+
// =============================================================================
|
|
243
|
+
describe("createLoggerFromConfig", () => {
|
|
244
|
+
beforeEach(() => {
|
|
245
|
+
vi.spyOn(console, "info").mockImplementation(() => { });
|
|
246
|
+
});
|
|
247
|
+
afterEach(() => {
|
|
248
|
+
vi.restoreAllMocks();
|
|
249
|
+
});
|
|
250
|
+
it("creates logger with log level from config", () => {
|
|
251
|
+
const config = createMockDiscordConfig("verbose");
|
|
252
|
+
const logger = createLoggerFromConfig("my-agent", config);
|
|
253
|
+
expect(logger.getLogLevel()).toBe("verbose");
|
|
254
|
+
});
|
|
255
|
+
it("creates logger with standard level by default", () => {
|
|
256
|
+
const config = createMockDiscordConfig("standard");
|
|
257
|
+
const logger = createLoggerFromConfig("my-agent", config);
|
|
258
|
+
expect(logger.getLogLevel()).toBe("standard");
|
|
259
|
+
});
|
|
260
|
+
it("creates logger with redaction enabled", () => {
|
|
261
|
+
const config = createMockDiscordConfig("verbose");
|
|
262
|
+
const logger = createLoggerFromConfig("my-agent", config);
|
|
263
|
+
expect(logger.isRedactionEnabled()).toBe(true);
|
|
264
|
+
});
|
|
265
|
+
it("creates logger with correct agent name prefix", () => {
|
|
266
|
+
const config = createMockDiscordConfig("standard");
|
|
267
|
+
const logger = createLoggerFromConfig("my-agent", config);
|
|
268
|
+
logger.info("test");
|
|
269
|
+
expect(console.info).toHaveBeenCalledWith("[discord:my-agent]", "test");
|
|
270
|
+
});
|
|
271
|
+
});
|
|
272
|
+
describe("createDefaultDiscordLogger", () => {
|
|
273
|
+
it("creates logger with standard level", () => {
|
|
274
|
+
const logger = createDefaultDiscordLogger("test-agent");
|
|
275
|
+
expect(logger.getLogLevel()).toBe("standard");
|
|
276
|
+
});
|
|
277
|
+
it("creates logger with redaction enabled", () => {
|
|
278
|
+
const logger = createDefaultDiscordLogger("test-agent");
|
|
279
|
+
expect(logger.isRedactionEnabled()).toBe(true);
|
|
280
|
+
});
|
|
281
|
+
});
|
|
282
|
+
//# sourceMappingURL=logger.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"logger.test.js","sourceRoot":"","sources":["../../src/__tests__/logger.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mention-handler.test.d.ts","sourceRoot":"","sources":["../../src/__tests__/mention-handler.test.ts"],"names":[],"mappings":""}
|