Skip to content

Commit 220e96e

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/7a92df9c28303ed9cd6ee1a5e4999acfc8c52497/src/transforms/ava:test-build.js Please contact the author of the transform if you believe there was an error.
1 parent fcdca40 commit 220e96e

File tree

14 files changed

+139
-19
lines changed

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
@@ -16,7 +16,7 @@ const {dict, encode, decode} = lz78;
1616

1717
[![License](https://img.shields.io/github/license/compression-algorithm/lempel-ziv.svg)](https://raw.githubusercontent.com/compression-algorithm/lempel-ziv/main/LICENSE)
1818
[![Version](https://img.shields.io/npm/v/@compression-algorithm/lempel-ziv.svg)](https://www.npmjs.org/package/@compression-algorithm/lempel-ziv)
19-
[![Tests](https://img.shields.io/github/workflow/status/compression-algorithm/lempel-ziv/ci:test?event=push&label=tests)](https://github.com/compression-algorithm/lempel-ziv/actions/workflows/ci:test.yml?query=branch:main)
19+
[![Tests](https://img.shields.io/github/workflow/status/compression-algorithm/lempel-ziv/ci?event=push&label=tests)](https://github.com/compression-algorithm/lempel-ziv/actions/workflows/ci.yml?query=branch:main)
2020
[![Dependencies](https://img.shields.io/librariesio/github/compression-algorithm/lempel-ziv.svg)](https://github.com/compression-algorithm/lempel-ziv/network/dependencies)
2121
[![GitHub issues](https://img.shields.io/github/issues/compression-algorithm/lempel-ziv.svg)](https://github.com/compression-algorithm/lempel-ziv/issues)
2222
[![Downloads](https://img.shields.io/npm/dm/@compression-algorithm/lempel-ziv.svg)](https://www.npmjs.org/package/@compression-algorithm/lempel-ziv)

package.json

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -45,8 +45,6 @@
4545
"build": "NODE_ENV=production microbundle",
4646
"build-docs": "esdoc",
4747
"build-gh-pages": "npm run build-docs",
48-
"ci:build": "npm run build",
49-
"ci:test": "npm run lint-config && npm run lint && npm run cover",
5048
"commit-msg": "commitlint --edit",
5149
"cover": "NODE_ENV=cover c8 --all --src src --reporter lcov --reporter text-summary --reporter text npm test",
5250
"debug": "NODE_ENV=debug npm run test -- -st --fail-fast",
@@ -62,7 +60,13 @@
6260
"prepare": "npm run build",
6361
"prepublishOnly": "pinst --disable",
6462
"release": "np --message ':hatching_chick: release: Bumping to v%s.'",
65-
"test": "ava"
63+
"test": "npm run test:src",
64+
"test-cmd": "NODE_LOADER_CONFIG=test/loader/config.js ava",
65+
"test:cjs": "IMPORT_MAP_PATH=test/import-maps/dist/index.json npm run test-cmd",
66+
"test:dist": "npm run test:modern && npm run test:module && npm run test:cjs",
67+
"test:modern": "IMPORT_MAP_PATH=test/import-maps/dist/index.modern.json npm run test-cmd",
68+
"test:module": "IMPORT_MAP_PATH=test/import-maps/dist/index.module.json npm run test-cmd",
69+
"test:src": "IMPORT_MAP_PATH=test/import-maps/src/index.json npm run test-cmd"
6670
},
6771
"dependencies": {
6872
"@functional-data-structure/persistent-stack": "^1.0.0",
@@ -77,6 +81,8 @@
7781
"@commitlint/cli": "17.1.2",
7882
"@js-library/commitlint-config": "0.0.4",
7983
"@node-loader/babel": "2.0.1",
84+
"@node-loader/core": "2.0.0",
85+
"@node-loader/import-maps": "1.1.0",
8086
"ava": "4.3.3",
8187
"babel-plugin-transform-remove-console": "6.9.4",
8288
"babel-plugin-unassert": "3.0.1",
@@ -106,7 +112,7 @@
106112
],
107113
"timeout": "1m",
108114
"nodeArguments": [
109-
"--experimental-loader=@node-loader/babel"
115+
"--experimental-loader=@node-loader/core"
110116
]
111117
},
112118
"babel": {

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/lz78.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ import test from 'ava';
22

33
import {mul} from '@aureooms/js-string';
44

5-
import {lz78} from '../../src/index.js';
5+
import {lz78} from '#module';
66

77
const {dict, encode, decode} = lz78;
88

test/src/readme.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import test from 'ava';
22

3-
import {lz78} from '../../src/index.js';
3+
import {lz78} from '#module';
44

55
const {dict, encode, decode} = lz78;
66

yarn.lock

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

1407+
"@node-loader/[email protected]":
1408+
version "2.0.0"
1409+
resolved "https://registry.yarnpkg.com/@node-loader/core/-/core-2.0.0.tgz#7f5a3a91fe137c8e71c0813f3bbaa0ee136a1308"
1410+
integrity sha512-7wV4qj2/tROXGgoYWmNvObUXbXqSv1yUD31K79Jt1q7NDuqrLz4WjjW+wVoCNgVcl8+YSj9BvLX8KsB/SrSzuw==
1411+
1412+
"@node-loader/[email protected]":
1413+
version "1.1.0"
1414+
resolved "https://registry.yarnpkg.com/@node-loader/import-maps/-/import-maps-1.1.0.tgz#4785fdce3bc973c5b53a4549248ab42b370ecda9"
1415+
integrity sha512-RPB+7vBVhk9xF/eiSGSxEnL6hGQ0a1ua9hvl/MxXDmu7F+Nv+gMwA7AJ0S5TmcgulHAp9/IxobGoFiOxkX7xWQ==
1416+
14071417
"@nodelib/[email protected]":
14081418
version "2.1.5"
14091419
resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"

0 commit comments

Comments
 (0)