Ensure tests will always use the current client name and version
This commit is contained in:
parent
0d202ee47b
commit
ae7d745d5e
3 changed files with 13 additions and 10 deletions
|
|
@ -1,4 +1,12 @@
|
||||||
import { InspectorConfig } from "./configurationTypes";
|
import { InspectorConfig } from "./configurationTypes";
|
||||||
|
import packageJson from "../../package.json";
|
||||||
|
|
||||||
|
// Client identity for MCP connections
|
||||||
|
export const CLIENT_IDENTITY = (() => {
|
||||||
|
const [, name = packageJson.name] = packageJson.name.split("/");
|
||||||
|
const version = packageJson.version;
|
||||||
|
return { name, version };
|
||||||
|
})();
|
||||||
|
|
||||||
// OAuth-related session storage keys
|
// OAuth-related session storage keys
|
||||||
export const SESSION_KEYS = {
|
export const SESSION_KEYS = {
|
||||||
|
|
|
||||||
|
|
@ -2,7 +2,7 @@ import { renderHook, act } from "@testing-library/react";
|
||||||
import { useConnection } from "../useConnection";
|
import { useConnection } from "../useConnection";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
import { ClientRequest } from "@modelcontextprotocol/sdk/types.js";
|
import { ClientRequest } from "@modelcontextprotocol/sdk/types.js";
|
||||||
import { DEFAULT_INSPECTOR_CONFIG } from "../../constants";
|
import { DEFAULT_INSPECTOR_CONFIG, CLIENT_IDENTITY } from "../../constants";
|
||||||
import {
|
import {
|
||||||
SSEClientTransportOptions,
|
SSEClientTransportOptions,
|
||||||
SseError,
|
SseError,
|
||||||
|
|
@ -247,8 +247,8 @@ describe("useConnection", () => {
|
||||||
|
|
||||||
expect(Client).toHaveBeenCalledWith(
|
expect(Client).toHaveBeenCalledWith(
|
||||||
expect.objectContaining({
|
expect.objectContaining({
|
||||||
name: "inspector-client",
|
name: CLIENT_IDENTITY.name,
|
||||||
version: expect.any(String),
|
version: CLIENT_IDENTITY.version,
|
||||||
}),
|
}),
|
||||||
expect.objectContaining({
|
expect.objectContaining({
|
||||||
capabilities: expect.objectContaining({
|
capabilities: expect.objectContaining({
|
||||||
|
|
|
||||||
|
|
@ -35,7 +35,7 @@ import { RequestOptions } from "@modelcontextprotocol/sdk/shared/protocol.js";
|
||||||
import { useEffect, useState } from "react";
|
import { useEffect, useState } from "react";
|
||||||
import { useToast } from "@/lib/hooks/useToast";
|
import { useToast } from "@/lib/hooks/useToast";
|
||||||
import { z } from "zod";
|
import { z } from "zod";
|
||||||
import { ConnectionStatus } from "../constants";
|
import { ConnectionStatus, CLIENT_IDENTITY } from "../constants";
|
||||||
import { Notification } from "../notificationTypes";
|
import { Notification } from "../notificationTypes";
|
||||||
import {
|
import {
|
||||||
auth,
|
auth,
|
||||||
|
|
@ -47,7 +47,6 @@ import {
|
||||||
saveClientInformationToSessionStorage,
|
saveClientInformationToSessionStorage,
|
||||||
discoverScopes,
|
discoverScopes,
|
||||||
} from "../auth";
|
} from "../auth";
|
||||||
import packageJson from "../../../package.json";
|
|
||||||
import {
|
import {
|
||||||
getMCPProxyAddress,
|
getMCPProxyAddress,
|
||||||
getMCPServerRequestMaxTotalTimeout,
|
getMCPServerRequestMaxTotalTimeout,
|
||||||
|
|
@ -347,10 +346,6 @@ export function useConnection({
|
||||||
};
|
};
|
||||||
|
|
||||||
const connect = async (_e?: unknown, retryCount: number = 0) => {
|
const connect = async (_e?: unknown, retryCount: number = 0) => {
|
||||||
const [, name = packageJson.name] = packageJson.name.split("/");
|
|
||||||
const version = packageJson.version;
|
|
||||||
const clientIdentity = { name, version };
|
|
||||||
|
|
||||||
const clientCapabilities = {
|
const clientCapabilities = {
|
||||||
capabilities: {
|
capabilities: {
|
||||||
sampling: {},
|
sampling: {},
|
||||||
|
|
@ -362,7 +357,7 @@ export function useConnection({
|
||||||
};
|
};
|
||||||
|
|
||||||
const client = new Client<Request, Notification, Result>(
|
const client = new Client<Request, Notification, Result>(
|
||||||
clientIdentity,
|
CLIENT_IDENTITY,
|
||||||
clientCapabilities,
|
clientCapabilities,
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue