Skip to content

Commit cfb5d27

Browse files
Adding coverage for coin modules (LedgerHQ#6859)
* feat: start adding coverage for coins Signed-off-by: Stéphane Prohaszka <stephane.prohaszka@ledger.fr> * feat: set coverage on all files Signed-off-by: Stéphane Prohaszka <stephane.prohaszka@ledger.fr> --------- Signed-off-by: Stéphane Prohaszka <stephane.prohaszka@ledger.fr>
1 parent d4d5aab commit cfb5d27

16 files changed

+1231
-136
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -11,3 +11,4 @@ node_modules
1111
tsconfig.tsbuildinfo
1212
rce
1313
.env
14+
coverage

libs/coin-modules/coin-algorand/jest.config.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1-
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
1+
/** @type {import('ts-jest/dist/types').JestConfigWithTsJest} */
22
module.exports = {
3+
collectCoverageFrom: ["src/**/*.ts"],
4+
coverageDirectory: "coverage",
35
preset: "ts-jest",
46
testEnvironment: "node",
57
testPathIgnorePatterns: ["lib/", "lib-es/"],

libs/coin-modules/coin-algorand/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@
7272
"scripts": {
7373
"clean": "rimraf lib lib-es",
7474
"build": "tsc && tsc -m ES6 --outDir lib-es",
75+
"coverage": "jest --coverage=true && mv coverage/coverage-final.json coverage/coverage-algorand.json",
7576
"prewatch": "pnpm build",
7677
"watch": "tsc --watch",
7778
"doc": "documentation readme src/** --section=API --pe ts --re ts --re d.ts",
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
1+
/** @type {import('ts-jest/dist/types').JestConfigWithTsJest} */
22
module.exports = {
3-
preset: 'ts-jest',
4-
testEnvironment: 'node',
5-
testPathIgnorePatterns: [
6-
"lib/",
7-
"lib-es/"
8-
]
3+
collectCoverageFrom: ["src/**/*.ts"],
4+
coverageDirectory: "coverage",
5+
preset: "ts-jest",
6+
testEnvironment: "node",
7+
testPathIgnorePatterns: ["lib/", "lib-es/"],
98
};
10-

libs/coin-modules/coin-bitcoin/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,7 @@
9797
"scripts": {
9898
"clean": "rimraf lib lib-es",
9999
"build": "tsc && tsc -m ES6 --outDir lib-es",
100+
"coverage": "jest --coverage=true && mv coverage/coverage-final.json coverage/coverage-bitcoin.json",
100101
"prewatch": "pnpm build",
101102
"watch": "tsc --watch",
102103
"doc": "documentation readme src/** --section=API --pe ts --re ts --re d.ts",

libs/coin-modules/coin-evm/jest.config.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1-
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
1+
/** @type {import('ts-jest/dist/types').JestConfigWithTsJest} */
22
module.exports = {
3+
collectCoverageFrom: ["src/**/*.ts"],
4+
coverageDirectory: "coverage",
35
preset: "ts-jest",
46
testEnvironment: "node",
57
testPathIgnorePatterns: ["lib/", "lib-es/"],

libs/coin-modules/coin-evm/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@
4646
"scripts": {
4747
"clean": "rimraf lib lib-es",
4848
"build": "tsc && tsc -m ES6 --outDir lib-es",
49+
"coverage": "jest --coverage=true && mv coverage/coverage-final.json coverage/coverage-evm.json",
4950
"prewatch": "pnpm build",
5051
"watch": "tsc --watch",
5152
"doc": "documentation readme src/** --section=API --pe ts --re ts --re d.ts",

libs/coin-modules/coin-near/jest.config.js

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
1-
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
1+
/** @type {import('ts-jest/dist/types').JestConfigWithTsJest} */
22
module.exports = {
3+
collectCoverageFrom: ["src/**/*.ts"],
4+
coverageDirectory: "coverage",
35
preset: "ts-jest",
46
testEnvironment: "node",
57
testPathIgnorePatterns: ["lib/", "lib-es/"],

libs/coin-modules/coin-near/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@
6969
"scripts": {
7070
"clean": "rimraf lib lib-es",
7171
"build": "tsc && tsc -m ES6 --outDir lib-es",
72+
"coverage": "jest --coverage=true && mv coverage/coverage-final.json coverage/coverage-near.json",
7273
"prewatch": "pnpm build",
7374
"watch": "tsc --watch",
7475
"doc": "documentation readme src/** --section=API --pe ts --re ts --re d.ts",
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
1-
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
1+
/** @type {import('ts-jest/dist/types').JestConfigWithTsJest} */
22
module.exports = {
3-
preset: 'ts-jest',
4-
testEnvironment: 'node',
5-
testPathIgnorePatterns: [
6-
"lib/",
7-
"lib-es/"
8-
]
3+
collectCoverageFrom: ["src/**/*.ts"],
4+
coverageDirectory: "coverage",
5+
preset: "ts-jest",
6+
testEnvironment: "node",
7+
testPathIgnorePatterns: ["lib/", "lib-es/"],
98
};
10-

libs/coin-modules/coin-polkadot/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@
132132
"scripts": {
133133
"clean": "rimraf lib lib-es",
134134
"build": "tsc && tsc -m ES6 --outDir lib-es",
135+
"coverage": "jest --coverage=true && mv coverage/coverage-final.json coverage/coverage-polakdot.json",
135136
"prewatch": "pnpm build",
136137
"watch": "tsc --watch",
137138
"doc": "documentation readme src/** --section=API --pe ts --re ts --re d.ts",
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,8 @@
1-
/** @type {import('ts-jest/dist/types').InitialOptionsTsJest} */
1+
/** @type {import('ts-jest/dist/types').JestConfigWithTsJest} */
22
module.exports = {
3-
preset: 'ts-jest',
4-
testEnvironment: 'node',
5-
testPathIgnorePatterns: [
6-
"lib/",
7-
"lib-es/"
8-
]
3+
collectCoverageFrom: ["src/**/*.ts"],
4+
coverageDirectory: "coverage",
5+
preset: "ts-jest",
6+
testEnvironment: "node",
7+
testPathIgnorePatterns: ["lib/", "lib-es/"],
98
};

libs/coin-modules/coin-solana/package.json

+1
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,7 @@
7777
"scripts": {
7878
"clean": "rimraf lib lib-es",
7979
"build": "tsc && tsc -m ES6 --outDir lib-es",
80+
"coverage": "jest --coverage=true && mv coverage/coverage-final.json coverage/coverage-solana.json",
8081
"prewatch": "pnpm build",
8182
"watch": "tsc --watch",
8283
"doc": "documentation readme src/** --section=API --pe ts --re ts --re d.ts",

package.json

+5-2
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@
5858
"desktop": "pnpm --filter ledger-live-desktop",
5959
"cli": "pnpm --filter live-cli",
6060
"coin": "pnpm --filter coin-framework",
61+
"coin:coverage": "pnpm turbo coverage --filter=\"@ledgerhq/coin-*\" && mkdir coverage && mv libs/coin-modules/**/coverage/*.json coverage && pnpm exec nyc merge coverage coverage/coverage-final.json && pnpm exec nyc report -t coverage --report-dir coverage --reporter=html",
62+
"coin:coverage:clean": "rm -rf coverage && rm -rf libs/coin-modules/**/coverage",
6163
"coin:algorand": "pnpm --filter coin-algorand",
6264
"coin:bitcoin": "pnpm --filter coin-bitcoin",
6365
"coin:evm": "pnpm --filter coin-evm",
@@ -148,15 +150,16 @@
148150
"@commitlint/cli": "^17.4.2",
149151
"@commitlint/config-conventional": "^17.6.5",
150152
"@commitlint/prompt-cli": "^17.4.2",
153+
"@ledgerhq/create-release-hash": "workspace:*",
154+
"@ledgerhq/pnpm-utils": "workspace:*",
151155
"@typescript-eslint/eslint-plugin": "^6.2.0",
152156
"@typescript-eslint/parser": "^6.2.0",
153-
"@ledgerhq/create-release-hash": "workspace:*",
154157
"eslint": "^8.51.0",
155158
"eslint-config-prettier": "^9.0.0",
156159
"eslint-plugin-json": "^3.1.0",
157160
"eslint-plugin-prettier": "^5.0.1",
158-
"@ledgerhq/pnpm-utils": "workspace:*",
159161
"prettier": "^3.0.3",
162+
"nyc": "^15.1.0",
160163
"rimraf": "^4.4.1",
161164
"turbo": "1.10.1",
162165
"typescript": "^5.1.3",

0 commit comments

Comments
 (0)