Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions .c8rc.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
{
"src": [
"packages/*/src"
],
"exclude": [
"packages/*/test/**",
"packages/*/dist/**",
"test-agents/**",
"samples/**",
"**/*.test.ts",
"**/*.d.ts"
],
"include": [
"packages/*/src/**/*.ts"
],
"extension": [
".ts"
],
"reporter": [
"text",
"html",
"lcov",
"json"
],
"reports-dir": "./coverage",
"all": true,
"lines": 80,
"functions": 80,
"branches": 80,
"statements": 80
}
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ jobs:
run: npm run build

- name: Run tests
run: npm test
run: npm run test:junit

- name: Build samples
run: npm run build:samples
Expand Down
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,8 @@ dist/
test-report.xml
tsconfig.tsbuildinfo
devTools/
generated
generated

# Coverage reports
coverage/
.nyc_output/
16 changes: 16 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,22 @@ The packages include the source code in the `src`, along with the sourcemaps in

We are using `eslint` configured with [neostandard](https://github.com/neostandard/neostandard)

### Testing and Code Coverage

The repository includes comprehensive testing and code coverage configuration:

- **Run tests**: `npm run test`
- **Run tests with JUnit reporting**: `npm run test:junit`
- **Run tests with code coverage**: `npm run test:coverage`
- **CI-friendly coverage with JUnit**: `npm run test:coverage:ci`

Code coverage reports are generated in multiple formats:
- **HTML reports**: Available in `coverage/index.html` for interactive browsing
- **LCOV format**: `coverage/lcov.info` for integration with CI/CD tools and IDEs
- **JSON summary**: `coverage/coverage-summary.json` for automated processing

Coverage configuration can be found in `.c8rc.json` with thresholds set at 80% for lines, functions, branches, and statements.

## Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a
Expand Down
Loading
Loading