chore: migrate project to Bun testing framework and update configuration

- Replace Jest with Bun's native testing framework
- Update test configuration and utilities to support Bun test environment
- Add mock implementations for SSE and security testing
- Refactor test setup to use Bun's testing utilities
- Update package dependencies and scripts to align with Bun testing
- Enhance type definitions for Bun test mocking
This commit is contained in:
jango-blockchained
2025-02-03 22:19:43 +01:00
parent b7856e9d05
commit a53cec7b28
12 changed files with 403 additions and 175 deletions

View File

@@ -1,66 +1,53 @@
{
"name": "homeassistant-mcp",
"version": "0.1.0",
"description": "Model Context Protocol Server for Home Assistant",
"type": "module",
"version": "1.0.0",
"description": "Home Assistant Master Control Program",
"main": "dist/index.js",
"type": "module",
"scripts": {
"build": "bun run tsc",
"start": "bun run dist/src/index.js",
"dev": "bun --watch src/index.ts",
"start": "bun run dist/index.js",
"dev": "bun run --watch src/index.ts",
"build": "bun build ./src/index.ts --outdir ./dist --target node",
"test": "bun test",
"test:coverage": "bun test --coverage",
"test:watch": "bun test --watch",
"test:openai": "bun run openai_test.ts",
"lint": "eslint src --ext .ts",
"lint:fix": "eslint src --ext .ts --fix",
"prepare": "bun run build",
"clean": "rimraf dist",
"types:check": "tsc --noEmit",
"types:install": "bun add -d @types/node @types/jest"
"test:coverage": "bun test --coverage",
"lint": "eslint . --ext .ts",
"format": "prettier --write \"src/**/*.ts\"",
"prepare": "husky install"
},
"dependencies": {
"@digital-alchemy/core": "^24.11.4",
"@digital-alchemy/hass": "^24.11.4",
"@types/chalk": "^0.4.31",
"@types/jsonwebtoken": "^9.0.8",
"@types/xmldom": "^0.1.34",
"@xmldom/xmldom": "^0.9.7",
"ajv": "^8.12.0",
"chalk": "^5.4.1",
"dotenv": "^16.3.1",
"@digital-alchemy/core": "^0.1.0",
"@jest/globals": "^29.7.0",
"@types/express": "^4.17.21",
"@types/jest": "^29.5.12",
"@types/jsonwebtoken": "^9.0.5",
"@types/node": "^20.11.24",
"@types/sanitize-html": "^2.9.5",
"@types/ws": "^8.5.10",
"dotenv": "^16.4.5",
"express": "^4.18.2",
"express-rate-limit": "^7.1.5",
"helmet": "^7.1.0",
"jsonwebtoken": "^9.0.2",
"litemcp": "^0.7.0",
"uuid": "^9.0.1",
"winston-daily-rotate-file": "^5.0.0",
"node-fetch": "^3.3.2",
"sanitize-html": "^2.11.0",
"typescript": "^5.3.3",
"ws": "^8.16.0",
"zod": "^3.22.4"
},
"devDependencies": {
"@types/ajv": "^1.0.0",
"@types/express": "^4.17.21",
"@types/express-rate-limit": "^6.0.0",
"@types/glob": "^8.1.0",
"@types/helmet": "^4.0.0",
"@types/jest": "^29.5.14",
"@types/node": "^20.17.16",
"@types/supertest": "^6.0.2",
"@types/uuid": "^9.0.8",
"@types/winston": "^2.4.4",
"@types/ws": "^8.5.10",
"jest": "^29.7.0",
"node-fetch": "^3.3.2",
"openai": "^4.82.0",
"rimraf": "^5.0.10",
"supertest": "^6.3.4",
"ts-jest": "^29.1.2",
"tsx": "^4.7.0",
"typescript": "^5.3.3"
"@types/uuid": "^10.0.0",
"@typescript-eslint/eslint-plugin": "^7.1.0",
"@typescript-eslint/parser": "^7.1.0",
"eslint": "^8.57.0",
"eslint-config-prettier": "^9.1.0",
"eslint-plugin-prettier": "^5.1.3",
"husky": "^9.0.11",
"prettier": "^3.2.5",
"supertest": "^6.3.3",
"uuid": "^11.0.5"
},
"author": "Jango Blockchained",
"license": "MIT",
"packageManager": "bun@1.0.26"
"engines": {
"bun": ">=1.0.0"
}
}