From 35a2a10fbf3d3f4ed6dc2e0113346c2b8a9a1d97 Mon Sep 17 00:00:00 2001 From: Myom_tech Date: Sat, 17 Oct 2026 08:29:05 +0100 Subject: [PATCH] fix: Add Test Coverage Reporting (#863) --- .github/workflows/ci.yml | 11 ++++++++++- dashboard/jest.config.cjs | 15 ++++++++++++--- dashboard/package.json | 7 ++++--- 3 files changed, 26 insertions(+), 7 deletions(-) diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 964d0cda..5e3dbfac 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -35,4 +35,13 @@ jobs: run: | cd listener npm run typecheck - npm test + npm run test:coverage + + - name: Upload coverage report + if: always() + uses: actions/upload-artifact@v4 + with: + name: coverage-report + path: listener/coverage/ + retention-days: 14 + if-no-files-found: warn diff --git a/dashboard/jest.config.cjs b/dashboard/jest.config.cjs index b2bb61c1..4b75a37f 100644 --- a/dashboard/jest.config.cjs +++ b/dashboard/jest.config.cjs @@ -4,13 +4,22 @@ module.exports = { testTimeout: 15000, setupFilesAfterEnv: ['/jest.setup.cjs'], extensionsToTreatAsEsm: ['.ts', '.tsx'], + collectCoverageFrom: ['/src/**/*.{ts,tsx}'], + coveragePathIgnorePatterns: [ + '/src/**\\/**/*.d.ts', + '/src/**\\/**/*.test.{ts,tsx}', + '/src/**\\/**/*.stories.{ts,tsx}', + '/src/test/**', + ], + coverageDirectory: '/coverage', + coverageReporters: ['text', 'lcov', 'json-summary'], moduleNameMapper: { '^@creit\\.tech/stellar-wallets-kit/modules/utils$': '/src/test/stellarWalletsKitModulesMock.ts', '^@creit\\.tech/stellar-wallets-kit$': - '/src/test/stellarWalletsKitMock.ts', - '^.*/config/stellarNetwork$': '/src/test/stellarNetworkMock.ts', - '^.*/config/eventsApiUrl$': '/src/test/eventsApiUrlMock.ts', + '/src/test/stellaeWalletsKitMock.ts', + '^.*\\/config/stellarNetwork$': '/src/test/stellarNetworkMock.ts', + '^.*\\/config/eventsApiUrl$': '/src/test/eventsApiUrlMock.ts', '^(\\.{1,2}/.*)\\.js$': '$1', }, transform: { diff --git a/dashboard/package.json b/dashboard/package.json index 3796ccd3..ba6cd3ad 100644 --- a/dashboard/package.json +++ b/dashboard/package.json @@ -11,8 +11,9 @@ "preview": "node ./node_modules/vite/bin/vite.js preview", "dev": "node ./node_modules/vite/bin/vite.js", "lint": "node ./node_modules/eslint/bin/eslint.js \"src/**/*.{ts,tsx}\" --max-warnings=0", - "format:check": "node ./node_modules/prettier/bin/prettier.cjs --check \"src/**/*.{ts,tsx}\" --config ../.prettierrc", + "format:check": "node ./node_modules/prettier/bin/prettier.cjs --check \"src/**/{ts,tsx}\" --config ../.prettierrc", "test": "node ./node_modules/jest/bin/jest.js", + "test:coverage": "node ./node_modules/jest/bin/jest.js --coverage --coverageReporters=text --coverageReporters=lcov --coverageReporters=json-summary", "test:wallet": "node ./node_modules/jest/bin/jest.js src/__tests__/wallet-integration.test.tsx", "benchmark": "node ./node_modules/jest/bin/jest.js src/benchmark", "storybook": "node ./node_modules/storybook/bin/index.cjs dev -p 6006", @@ -23,13 +24,13 @@ "@stellar/stellar-sdk": "^13.3.0", "react": "^19.1.0", "react-dom": "^19.1.0", - "zustand": "^5.0.6" + "zustand": "^5.0.15" }, "devDependencies": { "@storybook/addon-essentials": "^8.6.14", "@storybook/addon-interactions": "^8.6.14", "@storybook/blocks": "^8.6.14", - "@storybook/react": "^8.6.14", + "@storybook/react": "^10.5.8", "@storybook/react-vite": "^8.6.14", "@storybook/test": "^8.6.14", "@testing-library/jest-dom": "^6.9.1",