test: migrate test suite from Jest to Bun test framework

- Convert test files to use Bun's test framework and mocking utilities
- Update import statements and test syntax
- Add comprehensive test utilities and mock implementations
- Create test migration guide documentation
- Implement helper functions for consistent test setup and teardown
- Add type definitions for improved type safety in tests
This commit is contained in:
jango-blockchained
2025-02-05 04:41:13 +01:00
parent 942c175b90
commit eefbf790c3
18 changed files with 2499 additions and 285 deletions

View File

@@ -1,15 +1,9 @@
import { jest, describe, it, expect } from '@jest/globals';
// Helper function moved from src/helpers.ts
const formatToolCall = (obj: any, isError: boolean = false) => {
return {
content: [{ type: "text", text: JSON.stringify(obj, null, 2), isError }],
};
};
import { describe, expect, test } from "bun:test";
import { formatToolCall } from "../src/utils/helpers";
describe('helpers', () => {
describe('formatToolCall', () => {
it('should format an object into the correct structure', () => {
test('should format an object into the correct structure', () => {
const testObj = { name: 'test', value: 123 };
const result = formatToolCall(testObj);
@@ -22,7 +16,7 @@ describe('helpers', () => {
});
});
it('should handle error cases correctly', () => {
test('should handle error cases correctly', () => {
const testObj = { error: 'test error' };
const result = formatToolCall(testObj, true);
@@ -35,7 +29,7 @@ describe('helpers', () => {
});
});
it('should handle empty objects', () => {
test('should handle empty objects', () => {
const testObj = {};
const result = formatToolCall(testObj);
@@ -47,5 +41,26 @@ describe('helpers', () => {
}]
});
});
test('should handle null and undefined', () => {
const nullResult = formatToolCall(null);
const undefinedResult = formatToolCall(undefined);
expect(nullResult).toEqual({
content: [{
type: 'text',
text: 'null',
isError: false
}]
});
expect(undefinedResult).toEqual({
content: [{
type: 'text',
text: 'undefined',
isError: false
}]
});
});
});
});