mirror of
https://github.com/Azure/cosmos-explorer.git
synced 2025-02-10 02:05:13 +00:00
30 lines
973 B
TypeScript
30 lines
973 B
TypeScript
import Q from "q";
|
|
import * as MessageHandler from "./MessageHandler";
|
|
import { MessageTypes } from "../Contracts/ExplorerContracts";
|
|
|
|
describe("Message Handler", () => {
|
|
it("should handle cached message", async () => {
|
|
let mockPromise = {
|
|
id: "123",
|
|
startTime: new Date(),
|
|
deferred: Q.defer<any>()
|
|
};
|
|
let mockMessage = { message: { id: "123", data: "{}" } };
|
|
MessageHandler.RequestMap[mockPromise.id] = mockPromise;
|
|
MessageHandler.handleCachedDataMessage(mockMessage);
|
|
expect(mockPromise.deferred.promise.isFulfilled()).toBe(true);
|
|
});
|
|
|
|
it("should delete fulfilled promises on running the garbage collector", async () => {
|
|
let message = {
|
|
id: "123",
|
|
startTime: new Date(),
|
|
deferred: Q.defer<any>()
|
|
};
|
|
|
|
MessageHandler.handleCachedDataMessage(message);
|
|
MessageHandler.runGarbageCollector();
|
|
expect(MessageHandler.RequestMap["123"]).toBeUndefined();
|
|
});
|
|
});
|