@sinch/mcp
Version:
Sinch MCP server
48 lines • 2.12 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
const verification_service_helper_1 = require("../../../../src/tools/verification/utils/verification-service-helper");
const sdk_core_1 = require("@sinch/sdk-core");
const utils_1 = require("../../../../src/utils");
const mockApi = () => ({
setHostname: jest.fn(),
});
jest.mock('@sinch/sdk-core', () => {
const actual = jest.requireActual('@sinch/sdk-core');
return {
...actual,
SinchClient: jest.fn(() => ({
verification: {
verifications: mockApi(),
verificationStatus: mockApi(),
},
})),
};
});
describe('getVerificationService', () => {
const OLD_ENV = process.env;
const APPLICATION_KEY = 'test-application-key';
const TOOL_NAME = 'dummy-tool';
beforeEach(() => {
jest.resetModules();
process.env = { ...OLD_ENV };
process.env.VERIFICATION_APPLICATION_KEY = APPLICATION_KEY;
process.env.VERIFICATION_APPLICATION_SECRET = 'test-application-secret';
});
afterAll(() => {
process.env = OLD_ENV;
});
test('returns a configured SinchClient from getVerificationService', async () => {
const client = (0, verification_service_helper_1.getVerificationClient)(TOOL_NAME);
expect(client).toHaveProperty('verification');
const apis = client.verification;
for (const api of Object.values(apis)) {
expect(api.setHostname).toHaveBeenCalledWith(sdk_core_1.VERIFICATION_HOSTNAME);
expect(api.client).toBeInstanceOf(sdk_core_1.ApiFetchClient);
const userAgentPlugin = api.client.apiClientOptions.requestPlugins?.find((plugin) => plugin.getName() === 'AdditionalHeadersRequest');
expect(userAgentPlugin).toBeDefined();
const expectedUserAgent = (0, utils_1.formatUserAgent)(TOOL_NAME, APPLICATION_KEY);
expect((await userAgentPlugin.additionalHeaders.headers)['User-Agent']).toBe(expectedUserAgent);
}
});
});
//# sourceMappingURL=verification-service-helper.test.js.map