Files
webshare-api/__tests__/mcp-server.test.js
Michal Pemcak 3032f2ea85 Switch MCP transport from stdio to Streamable HTTP
Mount POST /mcp on the main Express app (stateless Streamable HTTP).
Keep optional MCP-only HTTP process via npm run mcp. Update docs.
2026-08-07 08:51:59 +02:00

33 lines
1.1 KiB
JavaScript

const express = require('express');
const { formatSize, createWebshareMcpServer } = require('../src/mcp-server');
const { registerMcpHttp } = require('../src/mcp-http');
describe('formatSize', () => {
it('formats bytes', () => {
expect(formatSize(0)).toBe('0 B');
expect(formatSize(512)).toBe('512 B');
expect(formatSize(1024)).toBe('1.0 KB');
expect(formatSize(1536)).toBe('1.5 KB');
expect(formatSize(1024 * 1024)).toBe('1.0 MB');
});
});
describe('createWebshareMcpServer', () => {
it('creates a server instance with credentials', () => {
const server = createWebshareMcpServer({ username: 'u', password: 'p' });
expect(server).toBeDefined();
expect(server.server).toBeDefined();
});
});
describe('registerMcpHttp', () => {
it('registers POST /mcp on an express app', () => {
const app = express();
registerMcpHttp(app, { username: 'u', password: 'p', path: '/mcp' });
const layer = app._router.stack.find(
(l) => l.route && l.route.path === '/mcp' && l.route.methods.post
);
expect(layer).toBeTruthy();
});
});