mirror of
https://github.com/Termix-SSH/Termix.git
synced 2026-10-30 15:15:24 +00:00
test(remote-desktop): preserve sessions beyond one hour (#1536)
This commit is contained in:
1 parent
dc6c522782
commit
021670ca1d
1 file changed
+20
@@ -34,6 +34,26 @@ describe("RemoteSessions", () => {
|
||||
expect(sessions.byGuacamole("g1")).toBeNull();
|
||||
});
|
||||
|
||||
it.each(["vnc", "rdp"] as const)(
|
||||
"keeps an opened %s session's proxy and jump tunnel alive beyond one hour",
|
||||
(protocol) => {
|
||||
vi.useFakeTimers();
|
||||
const sessions = new RemoteSessions();
|
||||
const proxy = vi.fn();
|
||||
const tunnel = vi.fn();
|
||||
sessions.park("c1", [proxy, tunnel]);
|
||||
sessions.opened({ ...meta, protocol }, "g1");
|
||||
vi.advanceTimersByTime(2 * 60 * 60 * 1000);
|
||||
expect(proxy).not.toHaveBeenCalled();
|
||||
expect(tunnel).not.toHaveBeenCalled();
|
||||
expect(sessions.byConnect("c1")?.guacamoleConnectionId).toBe("g1");
|
||||
sessions.closed("c1");
|
||||
sessions.closed("c1");
|
||||
expect(proxy).toHaveBeenCalledOnce();
|
||||
expect(tunnel).toHaveBeenCalledOnce();
|
||||
},
|
||||
);
|
||||
|
||||
it("releases a tunnel guacd never used", () => {
|
||||
vi.useFakeTimers();
|
||||
const sessions = new RemoteSessions(1000);
|
||||
|
||||
Reference in new issue
Block a user