Skip to content

Commit 91a6fc1

Browse files
committed
fix: make sure logs have different timestamps
1 parent d46d144 commit 91a6fc1

File tree

2 files changed

+22
-11
lines changed

2 files changed

+22
-11
lines changed

site/src/modules/resources/useAgentLogs.test.ts

Lines changed: 21 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,32 @@
11
import { renderHook, waitFor } from "@testing-library/react";
22
import type { WorkspaceAgentLog } from "api/typesGenerated";
33
import { MockWorkspaceAgent } from "testHelpers/entities";
4-
import { createUseAgentLogs } from "./useAgentLogs";
54
import {
6-
createMockWebSocket,
75
type MockWebSocketPublisher,
6+
createMockWebSocket,
87
} from "testHelpers/websockets";
98
import { OneWayWebSocket } from "utils/OneWayWebSocket";
9+
import { createUseAgentLogs } from "./useAgentLogs";
10+
11+
const millisecondsInOneMinute = 60_000;
1012

11-
function generateMockLogs(count: number): WorkspaceAgentLog[] {
12-
return Array.from({ length: count }, (_, i) => ({
13-
id: i,
14-
created_at: new Date().toISOString(),
15-
level: "info",
16-
output: `Log ${i}`,
17-
source_id: "",
18-
}));
13+
function generateMockLogs(
14+
logCount: number,
15+
baseDate = new Date(),
16+
): readonly WorkspaceAgentLog[] {
17+
return Array.from({ length: logCount }, (_, i) => {
18+
// Make sure that the logs generated each have unique timestamps, so
19+
// that we can test whether they're being sorted properly before being
20+
// returned by the hook
21+
const logDate = new Date(baseDate.getTime() + i * millisecondsInOneMinute);
22+
return {
23+
id: i,
24+
created_at: logDate.toISOString(),
25+
level: "info",
26+
output: `Log ${i}`,
27+
source_id: "",
28+
};
29+
});
1930
}
2031

2132
// A mutable object holding the most recent mock WebSocket publisher. The inner

site/src/utils/OneWayWebSocket.test.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@
88
*/
99

1010
import {
11-
createMockWebSocket,
1211
type MockWebSocketPublisher,
12+
createMockWebSocket,
1313
} from "testHelpers/websockets";
1414
import { type OneWayMessageEvent, OneWayWebSocket } from "./OneWayWebSocket";
1515

0 commit comments

Comments
 (0)