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
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
41 changes: 32 additions & 9 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,21 +13,44 @@ concurrency:
cancel-in-progress: true

jobs:
test:
name: Tests
lint:
name: Lint
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
- name: Install Node
uses: actions/setup-node@v3
with:
node-version: 18.x
- uses: pnpm/action-setup@v2
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4
with:
version: 9
node-version: 22
cache: pnpm
- name: Install Dependencies
run: pnpm install --frozen-lockfile
- run: pnpm lint:types
working-directory: packages/ember-cli-code-coverage
- run: pnpm lint:js
working-directory: packages/ember-cli-code-coverage
- run: pnpm test

test:
name: Tests (Node ${{ matrix.node-version }})
runs-on: ubuntu-latest

strategy:
fail-fast: false
matrix:
node-version: ['22', '24']

steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4
- uses: actions/setup-node@v4
with:
node-version: ${{ matrix.node-version }}
cache: pnpm
- name: Install Dependencies
run: pnpm install --frozen-lockfile
- name: Build
run: pnpm build
working-directory: packages/ember-cli-code-coverage
- name: Run Tests
run: pnpm test
55 changes: 43 additions & 12 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,24 +2,55 @@

## Installation

* `git clone <repository-url>`
* `cd my-addon`
* `npm install`
```bash
git clone <repository-url>
cd ember-cli-code-coverage
pnpm install
```

## Project Structure

This is a **pnpm workspace monorepo** with the following layout:

- `packages/ember-cli-code-coverage/` — The main addon (TypeScript source in `src/`)
- `test-packages/` — Integration tests and fixture apps

## Building

```bash
cd packages/ember-cli-code-coverage
pnpm build # Compile TypeScript to dist/
```

## Linting

* `npm run lint`
* `npm run lint:fix`
```bash
pnpm lint # Run ESLint across the workspace
pnpm lint:fix # Auto-fix lint issues
```

## Running Tests

Tests use [Vitest](https://vitest.dev/) and run from the workspace root:

```bash
pnpm test # Run the full test suite
```

Individual test files can be targeted:

## Running tests
```bash
pnpm vitest test-packages/my-app-test.mjs
```

* `ember test` – Runs the test suite on the current Ember version
* `ember test --server` – Runs the test suite in "watch mode"
* `ember try:each` – Runs the test suite against multiple Ember versions
> **Note:** Integration tests create temporary fixture projects, install
> dependencies, and run `ember test`. They have a 10-minute timeout and
> require a working internet connection.

## Running the dummy application
## Development Workflow

* `ember serve`
* Visit the dummy application at [http://localhost:4200](http://localhost:4200).
1. Make changes in `packages/ember-cli-code-coverage/src/`
2. Run `pnpm build` in the package directory
3. Run tests from the workspace root: `pnpm test`

For more information on using ember-cli, visit [https://ember-cli.com/](https://ember-cli.com/).
Loading