@medikode/mcp-server
Version:
Model Context Protocol (MCP) server for Medikode healthcare SaaS platform
86 lines (69 loc) โข 2.21 kB
JavaScript
/**
* Simple unit tests that don't require a running server
* These tests verify that the code can be loaded and basic functionality works
*/
console.log('๐งช Running Unit Tests');
console.log('====================');
let passedTests = 0;
let totalTests = 0;
function test(name, testFn) {
totalTests++;
try {
testFn();
console.log(`โ
${name}`);
passedTests++;
} catch (error) {
console.log(`โ ${name}: ${error.message}`);
}
}
// Test 1: Can load the main modules
test('Can load mcp-server-stdio.js', () => {
require('./mcp-server-stdio.js');
});
test('Can load index.js', () => {
require('./index.js');
});
// Test 2: Can load source modules
test('Can load auth middleware', () => {
require('./src/middleware/auth.js');
});
test('Can load API service router', () => {
require('./src/services/apiServiceRouter.js');
});
test('Can load usage logger', () => {
require('./src/database/usageLogger.js');
});
// Test 3: Can load route modules
test('Can load MCP routes', () => {
require('./src/routes/mcp.js');
});
test('Can load capabilities routes', () => {
require('./src/routes/capabilities.js');
});
test('Can load health routes', () => {
require('./src/routes/health.js');
});
// Test 4: Package.json validation
test('Package.json has required fields', () => {
const pkg = require('./package.json');
if (!pkg.name) throw new Error('Missing name field');
if (!pkg.version) throw new Error('Missing version field');
if (!pkg.main) throw new Error('Missing main field');
if (!pkg.bin) throw new Error('Missing bin field');
});
// Test 5: Environment variables
test('Environment variables can be accessed', () => {
process.env.MEDIKODE_API_KEY = 'test-key';
if (!process.env.MEDIKODE_API_KEY) throw new Error('Cannot set environment variables');
});
console.log('\n๐ Test Results');
console.log('================');
console.log(`Passed: ${passedTests}/${totalTests} tests`);
if (passedTests === totalTests) {
console.log('๐ All unit tests passed!');
process.exit(0);
} else {
console.log('โ ๏ธ Some unit tests failed.');
process.exit(1);
}