Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
it("populates the Content-Type header when sending XMLHttpRequest", async (done) => {
// Skip test on Node as this header isn't set (it was added for React-Native)
if (typeof window === "undefined") {
done();
return;
}
const hubConnection = getConnectionBuilder(HttpTransportType.LongPolling, TESTHUB_NOWEBSOCKETS_ENDPOINT_URL)
.withHubProtocol(new JsonHubProtocol())
.build();
try {
await hubConnection.start();
// Check what transport was used by asking the server to tell us.
expect(await hubConnection.invoke("GetActiveTransportName")).toEqual("LongPolling");
// Check to see that the Content-Type header is set the expected value
expect(await hubConnection.invoke("GetContentTypeHeader")).toEqual("text/plain;charset=UTF-8");
await hubConnection.stop();
done();
} catch (e) {
fail(e);
}
});
await hubConnection.start();
const response = await hubConnection.invoke("Echo", message);
expect(response).toEqual(message);
await hubConnection.stop();
done();
} catch (err) {
fail(err);
done();
}
});
if (transportType !== HttpTransportType.LongPolling) {
it("terminates if no messages received within timeout interval", async (done) => {
const hubConnection = getConnectionBuilder(transportType).build();
hubConnection.serverTimeoutInMilliseconds = 100;
hubConnection.onclose((error) => {
expect(error).toEqual(new Error("Server timeout elapsed without receiving a message from the server."));
done();
});
await hubConnection.start();
});
}
it("preserves cookies between requests", async (done) => {
const hubConnection = getConnectionBuilder(transportType).build();
await hubConnection.start();
export function getHttpTransportTypes(): HttpTransportType[] {
const transportTypes = [];
if (typeof window === "undefined") {
transportTypes.push(HttpTransportType.WebSockets);
transportTypes.push(HttpTransportType.ServerSentEvents);
} else {
if (typeof WebSocket !== "undefined") {
transportTypes.push(HttpTransportType.WebSockets);
}
if (typeof EventSource !== "undefined") {
transportTypes.push(HttpTransportType.ServerSentEvents);
}
}
transportTypes.push(HttpTransportType.HttpStreaming);
transportTypes.push(HttpTransportType.LongPolling);
return transportTypes;
}