Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
30 commits
Select commit Hold shift + click to select a range
426c374
Upgrade node to 24 (#257)
alexshamrai Mar 21, 2026
2457843
Update support section in README to clarify CTRF specification reposi…
Ma11hewThomas Mar 21, 2026
31e2a27
build refresh (#260)
Ma11hewThomas Mar 21, 2026
77e2a17
chore: add dependabot config (#262)
Ma11hewThomas Mar 22, 2026
a198e56
fix: correct dependabot config content
Ma11hewThomas Mar 22, 2026
e8adb51
chore: add ctrf ^0.2.0 dependency (#270)
Ma11hewThomas Mar 22, 2026
ab78998
chore(deps-dev): bump flatted (#268)
dependabot[bot] Mar 22, 2026
41bb733
chore(deps-dev): bump @vercel/ncc from 0.38.3 to 0.38.4 (#265)
dependabot[bot] Mar 22, 2026
6155886
chore(deps-dev): bump eslint-plugin-prettier from 5.2.1 to 5.5.5 (#264)
dependabot[bot] Mar 22, 2026
ef58e6b
chore(deps): bump fast-xml-parser (#269)
dependabot[bot] Mar 22, 2026
c13eea3
chore(deps): bump @isaacs/brace-expansion from 5.0.0 to 5.0.1 (#272)
dependabot[bot] Mar 22, 2026
7aad151
fix: remove ±0 delta indicators from report templates (#274)
alexshamrai Mar 28, 2026
0f29907
chore(deps-dev): bump eslint-plugin-jest from 28.9.0 to 29.15.0 (#266)
dependabot[bot] Mar 28, 2026
32765ef
chore(deps): bump @octokit/rest from 21.1.1 to 22.0.1 (#267)
dependabot[bot] Mar 29, 2026
54fd992
chore(deps-dev): bump prettier-eslint from 16.3.0 to 16.4.2
dependabot[bot] Apr 2, 2026
2649c1a
chore(deps-dev): bump typescript from 5.9.2 to 5.9.3
dependabot[bot] Apr 2, 2026
94b73ee
chore(deps): bump yargs from 17.7.2 to 18.0.0
dependabot[bot] May 1, 2026
bc91fb1
More informative check summary (#280)
dshatz May 2, 2026
bc9d5ee
Merge pull request #284 from ctrf-io/dependabot/npm_and_yarn/yargs-18…
Ma11hewThomas May 2, 2026
7b48316
update handlebars (#285)
Ma11hewThomas May 2, 2026
7a455c0
Update actions artifact (#286)
Ma11hewThomas May 3, 2026
70ee2e1
ci: add explicit permissions to all workflow jobs (fixes CodeQL alert…
Ma11hewThomas May 3, 2026
78ce3f5
chore(deps): bump the npm_and_yarn group across 1 directory with 4 up…
dependabot[bot] May 3, 2026
db0a55c
Migrate to esm (#290)
Ma11hewThomas May 3, 2026
600625f
chore(deps): bump the npm_and_yarn group across 1 directory with 1 up…
dependabot[bot] May 3, 2026
08f4029
simplify build command in workflow and package.json (#292)
Ma11hewThomas May 3, 2026
a419715
Upgrade actions deps (#293)
Ma11hewThomas May 3, 2026
de99728
Upgrade all deps (#294)
Ma11hewThomas May 3, 2026
1a0af00
Use ctrf lib types (#295)
Ma11hewThomas May 3, 2026
4731f45
Merge upstream ctrf-io/main to pick up node 24 runtime
AlecRosenbaum Jun 1, 2026
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
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "GitHub Actions (TypeScript)",
"image": "mcr.microsoft.com/devcontainers/typescript-node:20",
"image": "mcr.microsoft.com/devcontainers/typescript-node:24",
"postCreateCommand": "npm install",
"customizations": {
"codespaces": {
Expand Down
11 changes: 0 additions & 11 deletions .eslintignore

This file was deleted.

11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file

version: 2
updates:
- package-ecosystem: 'npm'
directory: '/'
schedule:
interval: 'monthly'
104 changes: 86 additions & 18 deletions .github/workflows/build-and-test.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -10,16 +10,42 @@ on:
schedule:
- cron: '0 2 * * *'

permissions: {}

jobs:
check-build:
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v6
- name: Install dependencies
run: npm install
- name: Rebuild dist
run: npm run package
- name: Check for uncommitted build changes
run: |
if ! git diff --exit-code dist/; then
echo "::error::dist/ is out of date. Run 'npm run all' locally and commit the result."
exit 1
fi

build-and-test:
needs: check-build
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
pull-requests: write
actions: write
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Install dependencies
run: npm install
- name: Build
run: npm run all:action
run: npm run all
- name: Publish Test Report
uses: ./
with:
Expand Down Expand Up @@ -60,9 +86,11 @@ jobs:
standard-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Basic Test Report
uses: ./
with:
Expand All @@ -73,9 +101,12 @@ jobs:
github-report-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Detailed Test Report
uses: ./
with:
Expand All @@ -88,9 +119,12 @@ jobs:
detailed-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Detailed Test Report
uses: ./
with:
Expand All @@ -104,9 +138,12 @@ jobs:
failed-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Failed Test Reports
uses: ./
with:
Expand All @@ -120,9 +157,12 @@ jobs:
flaky-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Flaky Test Reports
uses: ./
with:
Expand All @@ -135,9 +175,11 @@ jobs:
ai-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: AI Test Reports
uses: ./
with:
Expand All @@ -149,9 +191,11 @@ jobs:
skipped-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Skipped Test Reports
uses: ./
with:
Expand All @@ -162,9 +206,11 @@ jobs:
suite-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Suite Test Reports
uses: ./
with:
Expand All @@ -176,9 +222,11 @@ jobs:
commit-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Commit Test Reports
uses: ./
with:
Expand All @@ -189,9 +237,11 @@ jobs:
custom-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Custom Test Reports
uses: ./
with:
Expand All @@ -203,9 +253,11 @@ jobs:
community-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Community Test Reports
uses: ./
with:
Expand All @@ -217,9 +269,13 @@ jobs:
previous-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
actions: read
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Install dependencies
run: npm install
- name: Modify reports
Expand All @@ -240,9 +296,12 @@ jobs:
report-order-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Install dependencies
run: npm install
- name: Modify reports
Expand All @@ -262,9 +321,12 @@ jobs:
collapse-large-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Install dependencies
run: npm install
- name: Modify reports
Expand All @@ -283,9 +345,12 @@ jobs:
junit-to-ctrf-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Install dependencies
run: npm install
- name: Modify reports
Expand Down Expand Up @@ -316,9 +381,12 @@ jobs:
file-reports-test:
needs: build-and-test
runs-on: ubuntu-latest
permissions:
contents: read
checks: write
steps:
- name: Checkout code
uses: actions/checkout@v4
uses: actions/checkout@v6
- name: Install dependencies
run: npm install
- name: Modify reports
Expand Down
2 changes: 1 addition & 1 deletion .node-version
Original file line number Diff line number Diff line change
@@ -1 +1 @@
21.6.2
24.14.0
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ your project's needs, ensuring that test results are always where you need them.
You can support the project by:

- Giving this repository a ⭐
- [Following the @ctrf organization on GitHub](https://github.com/ctrf-io)
- Starring the CTRF specification repository (https://github.com/ctrf-io/ctrf) which helps support the standard.

## Key Features

Expand Down
2 changes: 1 addition & 1 deletion __tests__/ctrf/helpers.test.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { getEmoji, normalizeSuite, stripAnsi } from '../../src/ctrf/helpers'
import { getEmoji, normalizeSuite, stripAnsi } from '../../src/ctrf/helpers.js'

describe('getEmoji', () => {
it('returns the correct emoji for "passed"', () => {
Expand Down
6 changes: 3 additions & 3 deletions __tests__/ctrf/report-preparation.test.ts
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { Inputs, ReportConditionals } from '../../src/types'
import { Report } from '../../src/ctrf/core/types/ctrf'
import { addFooterDisplayFlags } from '../../src/ctrf/report-conditionals'
import { Inputs, ReportConditionals } from '../../src/types/index.js'
import { Report } from '../../src/ctrf/core/types/ctrf.js'
import { addFooterDisplayFlags } from '../../src/ctrf/report-conditionals.js'

describe('addFooterDisplayFlags', () => {
const createBaseReport = (): Report => ({
Expand Down
15 changes: 8 additions & 7 deletions __tests__/github/core.test.ts
Original file line number Diff line number Diff line change
@@ -1,11 +1,12 @@
import { vi, describe, it, expect, beforeEach } from 'vitest'
import * as core from '@actions/core'
import { context } from '@actions/github'
import { addReportFooters } from '../../src/github/core'
import { Report } from '../../src/ctrf/core/types/ctrf'
import { Inputs, ReportConditionals } from '../../src/types'
import { addReportFooters } from '../../src/github/core.js'
import { Report } from '../../src/ctrf/core/types/ctrf.js'
import { Inputs, ReportConditionals } from '../../src/types/index.js'

jest.mock('@actions/core')
jest.mock('@actions/github', () => ({
vi.mock('@actions/core')
vi.mock('@actions/github', () => ({
context: {
serverUrl: 'https://github.com',
repo: {
Expand All @@ -17,10 +18,10 @@ jest.mock('@actions/github', () => ({
}))

describe('addReportFooters', () => {
const mockCore = jest.mocked(core)
const mockCore = vi.mocked(core)

beforeEach(() => {
jest.clearAllMocks()
vi.clearAllMocks()
mockCore.summary.addRaw.mockReturnValue(mockCore.summary)
mockCore.summary.addEOL.mockReturnValue(mockCore.summary)
})
Expand Down
Loading
Loading