diff --git a/.codecov.yml b/.codecov.yml index 4d367445..9e522fc3 100644 --- a/.codecov.yml +++ b/.codecov.yml @@ -6,7 +6,7 @@ coverage: status: project: default: - target: 95% + target: 85% patch: default: - target: 95% + target: 90% diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md index 2bc80c77..95b52c5a 100644 --- a/DEVELOPMENT.md +++ b/DEVELOPMENT.md @@ -73,3 +73,7 @@ To run specific tests, you can use the `-t` flag to match the name mentioned in # Run all tests in the 'Transaction Builder' describe block (test/e2e/transaction-builder/TransactionBuilder.test.ts) yarn test -t 'Transaction Builder' ``` + +## Code Coverage + +New contributions have a code coverage target of 90%+. You can run `yarn test --coverage` to see the coverage report before submitting a PR. diff --git a/packages/cashc/vitest.config.ts b/packages/cashc/vitest.config.ts index 612242d3..94fbf30a 100644 --- a/packages/cashc/vitest.config.ts +++ b/packages/cashc/vitest.config.ts @@ -1,17 +1,17 @@ import { defineConfig } from 'vitest/config'; export default defineConfig({ - root: './test', test: { environment: 'node', + include: ['test/**/*.{test,spec}.?(c|m)[jt]s?(x)'], + exclude: ['**/types/**'], globals: true, silent: 'passed-only', - include: ['**/*.{test,spec}.?(c|m)[jt]s?(x)'], - setupFiles: ['./vitest.setup.ts'], - exclude: ['**/types/**'], coverage: { provider: 'v8', - reporter: ['json-summary'], + include: ['src/**/*.ts'], + exclude: ['src/grammar/**/*.ts'], }, + setupFiles: ['./vitest.setup.ts'], }, }); diff --git a/packages/cashscript/vitest.config.ts b/packages/cashscript/vitest.config.ts index bfe4161d..fdb63769 100644 --- a/packages/cashscript/vitest.config.ts +++ b/packages/cashscript/vitest.config.ts @@ -1,17 +1,17 @@ import { defineConfig } from 'vitest/config'; export default defineConfig({ - root: './test', test: { environment: 'node', - include: ['**/*.{test,spec}.?(c|m)[jt]s?(x)'], - setupFiles: ['./vitest.setup.ts'], + include: ['test/**/*.{test,spec}.?(c|m)[jt]s?(x)'], exclude: ['**/types/**'], - testTimeout: 50000, globals: true, silent: 'passed-only', coverage: { provider: 'v8', + include: ['src/**/*.ts'], }, + setupFiles: ['./vitest.setup.ts'], + testTimeout: 50000, }, }); diff --git a/packages/cashscript/vitest.setup.ts b/packages/cashscript/vitest.setup.ts index 99f0b047..62dd58ca 100644 --- a/packages/cashscript/vitest.setup.ts +++ b/packages/cashscript/vitest.setup.ts @@ -1,4 +1,4 @@ import { inspect } from 'util'; -import '../src/test/TestExtensions.js'; +import './src/test/TestExtensions.js'; inspect.defaultOptions.depth = 10; diff --git a/packages/utils/vitest.config.ts b/packages/utils/vitest.config.ts index f6a79460..03d8659b 100644 --- a/packages/utils/vitest.config.ts +++ b/packages/utils/vitest.config.ts @@ -1,14 +1,15 @@ import { defineConfig } from 'vitest/config'; export default defineConfig({ - root: './test', test: { environment: 'node', - silent: 'passed-only', + include: ['test/**/*.{test,spec}.?(c|m)[jt]s?(x)'], + exclude: ['**/types/**'], globals: true, + silent: 'passed-only', coverage: { provider: 'v8', - reporter: ['json-summary'], + include: ['src/**/*.ts'], }, }, });