Skip to content

Commit 64d94c2

Browse files
🤖 test: Allow to test build with AVA.
These changes were automatically generated by a transform whose code can be found at: - https://github.com/make-github-pseudonymous-again/rejuvenate/blob/9b50c2a1d7e9ab7b4bc9c9ff88892e98c5f62244/src/transforms/ava:test-build.js Please contact the author of the transform if you believe there was an error.
1 parent 1ab11d8 commit 64d94c2

14 files changed

+139
-19
lines changed

.github/workflows/ci.yml

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
name: ci
2+
3+
on:
4+
- push
5+
- pull_request
6+
7+
jobs:
8+
9+
build:
10+
name: Continuous integration (build)
11+
runs-on: ubuntu-latest
12+
steps:
13+
- name: Checkout 🛎️
14+
uses: actions/checkout@v3
15+
16+
- name: Install 📦
17+
uses: bahmutov/npm-install@v1
18+
with:
19+
install-command: yarn --frozen-lockfile --ignore-scripts
20+
useRollingCache: true
21+
22+
- name: Build 🏗️
23+
run: yarn build
24+
25+
- name: Archive build 💽
26+
uses: actions/upload-artifact@v3
27+
with:
28+
name: dist
29+
path: dist
30+
retention-days: 1
31+
32+
test:
33+
needs: ["build"]
34+
name: Continuous integration (tests)
35+
runs-on: ubuntu-latest
36+
strategy:
37+
matrix:
38+
bundle: ["modern", "module", "cjs"]
39+
steps:
40+
- name: Checkout 🛎️
41+
uses: actions/checkout@v3
42+
43+
- name: Install 📦
44+
uses: bahmutov/npm-install@v1
45+
with:
46+
install-command: yarn --frozen-lockfile --ignore-scripts
47+
useRollingCache: true
48+
49+
- name: Load build 💽
50+
uses: actions/download-artifact@v3
51+
with:
52+
name: dist
53+
path: dist
54+
55+
- name: Test 🔬
56+
run: yarn test:${{ matrix.bundle }}

.github/workflows/ci:test.yml renamed to .github/workflows/ci:cover.yml

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,23 +1,23 @@
1-
name: ci:test
1+
name: ci:cover
22
on:
33
- push
44
- pull_request
55
jobs:
6-
test:
7-
name: Continuous integration (tests)
6+
cover:
7+
name: Continuous integration (code coverage)
88
runs-on: ubuntu-latest
99
steps:
1010
- name: Checkout 🛎️
1111
uses: actions/checkout@v3
1212

13-
- name: Install 🔧
13+
- name: Install 📦
1414
uses: bahmutov/npm-install@v1
1515
with:
1616
install-command: yarn --frozen-lockfile --ignore-scripts
1717
useRollingCache: true
1818

19-
- name: Test 🔬
20-
run: yarn ci:test
19+
- name: Test and record coverage 🔬
20+
run: yarn cover
2121

2222
- name: Publish coverage report 📃
2323
uses: codecov/codecov-action@v3

.github/workflows/ci:lint-config.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: ci:lint-config
2+
on:
3+
- push
4+
- pull_request
5+
jobs:
6+
cover:
7+
name: Continuous integration (config linting)
8+
runs-on: ubuntu-latest
9+
steps:
10+
- name: Checkout 🛎️
11+
uses: actions/checkout@v3
12+
13+
- name: Install 📦
14+
uses: bahmutov/npm-install@v1
15+
with:
16+
install-command: yarn --frozen-lockfile --ignore-scripts
17+
useRollingCache: true
18+
19+
- name: Lint config 👕
20+
run: yarn lint-config
Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,20 @@
1-
name: ci:build
1+
name: ci:lint
22
on:
33
- push
44
- pull_request
55
jobs:
6-
test:
7-
name: Continuous integration (build)
6+
cover:
7+
name: Continuous integration (code linting)
88
runs-on: ubuntu-latest
99
steps:
1010
- name: Checkout 🛎️
1111
uses: actions/checkout@v3
1212

13-
- name: Install 🔧
13+
- name: Install 📦
1414
uses: bahmutov/npm-install@v1
1515
with:
1616
install-command: yarn --frozen-lockfile --ignore-scripts
1717
useRollingCache: true
1818

19-
- name: Build 🏗️
20-
run: yarn ci:build
19+
- name: Lint 👕
20+
run: yarn lint

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ for ( let value of list ) ... ;
1414

1515
[![License](https://img.shields.io/github/license/list-abstraction/doubly-linked-list.svg)](https://raw.githubusercontent.com/list-abstraction/doubly-linked-list/main/LICENSE)
1616
[![Version](https://img.shields.io/npm/v/@list-abstraction/doubly-linked-list.svg)](https://www.npmjs.org/package/@list-abstraction/doubly-linked-list)
17-
[![Tests](https://img.shields.io/github/workflow/status/list-abstraction/doubly-linked-list/ci:test?event=push&label=tests)](https://github.com/list-abstraction/doubly-linked-list/actions/workflows/ci:test.yml?query=branch:main)
17+
[![Tests](https://img.shields.io/github/workflow/status/list-abstraction/doubly-linked-list/ci?event=push&label=tests)](https://github.com/list-abstraction/doubly-linked-list/actions/workflows/ci.yml?query=branch:main)
1818
[![Dependencies](https://img.shields.io/librariesio/github/list-abstraction/doubly-linked-list.svg)](https://github.com/list-abstraction/doubly-linked-list/network/dependencies)
1919
[![GitHub issues](https://img.shields.io/github/issues/list-abstraction/doubly-linked-list.svg)](https://github.com/list-abstraction/doubly-linked-list/issues)
2020
[![Downloads](https://img.shields.io/npm/dm/@list-abstraction/doubly-linked-list.svg)](https://www.npmjs.org/package/@list-abstraction/doubly-linked-list)

package.json

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,8 +52,6 @@
5252
"build": "NODE_ENV=production microbundle",
5353
"build-docs": "esdoc",
5454
"build-gh-pages": "npm run build-docs",
55-
"ci:build": "npm run build",
56-
"ci:test": "npm run lint-config && npm run lint && npm run cover",
5755
"commit-msg": "commitlint --edit",
5856
"cover": "NODE_ENV=cover c8 --all --src src --reporter lcov --reporter text-summary --reporter text npm test",
5957
"debug": "NODE_ENV=debug npm run test -- -st --fail-fast",
@@ -69,7 +67,13 @@
6967
"prepare": "npm run build",
7068
"prepublishOnly": "pinst --disable",
7169
"release": "np --message ':hatching_chick: release: Bumping to v%s.'",
72-
"test": "ava"
70+
"test": "npm run test:src",
71+
"test-cmd": "NODE_LOADER_CONFIG=test/loader/config.js ava",
72+
"test:cjs": "IMPORT_MAP_PATH=test/import-maps/dist/index.json npm run test-cmd",
73+
"test:dist": "npm run test:modern && npm run test:module && npm run test:cjs",
74+
"test:modern": "IMPORT_MAP_PATH=test/import-maps/dist/index.modern.json npm run test-cmd",
75+
"test:module": "IMPORT_MAP_PATH=test/import-maps/dist/index.module.json npm run test-cmd",
76+
"test:src": "IMPORT_MAP_PATH=test/import-maps/src/index.json npm run test-cmd"
7377
},
7478
"dependencies": {},
7579
"devDependencies": {
@@ -81,6 +85,8 @@
8185
"@js-library/commitlint-config": "0.0.4",
8286
"@list-abstraction/specification": "10.0.0",
8387
"@node-loader/babel": "2.0.1",
88+
"@node-loader/core": "2.0.0",
89+
"@node-loader/import-maps": "1.1.0",
8490
"ava": "4.3.3",
8591
"babel-plugin-transform-remove-console": "6.9.4",
8692
"babel-plugin-unassert": "3.2.0",
@@ -105,7 +111,7 @@
105111
"test/src/**/*"
106112
],
107113
"nodeArguments": [
108-
"--experimental-loader=@node-loader/babel"
114+
"--experimental-loader=@node-loader/core"
109115
],
110116
"require": [
111117
"regenerator-runtime/runtime"

test/import-maps/dist/index.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"imports": {
3+
"#module": "./dist/index.cjs"
4+
}
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"imports": {
3+
"#module": "./dist/index.modern.js"
4+
}
5+
}
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"imports": {
3+
"#module": "./dist/index.module.js"
4+
}
5+
}

test/import-maps/src/index.json

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
{
2+
"imports": {
3+
"#module": "./src/index.js"
4+
}
5+
}

test/loader/config.js

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import * as importMapLoader from '@node-loader/import-maps';
2+
import * as babelLoader from '@node-loader/babel';
3+
4+
const config = {
5+
loaders: [importMapLoader, babelLoader],
6+
};
7+
8+
export default config;

test/src/DoublyLinkedList.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import test from 'ava';
2-
import * as dll from '../../src/index.js';
2+
import * as dll from '#module';
33

44
test('DoublyLinkedList', (t) => {
55
const list = new dll.DoublyLinkedList();

test/src/list-spec.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import test from 'ava';
22
import * as spec from '@list-abstraction/specification';
3-
import * as dll from '../../src/index.js';
3+
import * as dll from '#module';
44

55
spec.test(test, 'DoublyLinkedList', dll.DoublyLinkedList);

yarn.lock

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1371,6 +1371,16 @@
13711371
resolved "https://registry.yarnpkg.com/@node-loader/babel/-/babel-2.0.1.tgz#a04d7535b5ade12e3987de04fc5ffe204f26c64c"
13721372
integrity sha512-lulESaNn+jyn4lCbfcFWFcRYchsL0jY8q/mf5XRKOiX2uTpkXE3fGAlZ4+wyP/hIAMSlDPuHIUkRSTkJZ6SQyA==
13731373

1374+
"@node-loader/[email protected]":
1375+
version "2.0.0"
1376+
resolved "https://registry.yarnpkg.com/@node-loader/core/-/core-2.0.0.tgz#7f5a3a91fe137c8e71c0813f3bbaa0ee136a1308"
1377+
integrity sha512-7wV4qj2/tROXGgoYWmNvObUXbXqSv1yUD31K79Jt1q7NDuqrLz4WjjW+wVoCNgVcl8+YSj9BvLX8KsB/SrSzuw==
1378+
1379+
"@node-loader/[email protected]":
1380+
version "1.1.0"
1381+
resolved "https://registry.yarnpkg.com/@node-loader/import-maps/-/import-maps-1.1.0.tgz#4785fdce3bc973c5b53a4549248ab42b370ecda9"
1382+
integrity sha512-RPB+7vBVhk9xF/eiSGSxEnL6hGQ0a1ua9hvl/MxXDmu7F+Nv+gMwA7AJ0S5TmcgulHAp9/IxobGoFiOxkX7xWQ==
1383+
13741384
"@nodelib/[email protected]":
13751385
version "2.1.5"
13761386
resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"

0 commit comments

Comments
 (0)