Skip to content

Commit 6bd2ee5

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/5c07fa640b846da4c34695dc6ef1b93c034a99a2/src/transforms/ava:test-build.js Please contact the author of the transform if you believe there was an error.
1 parent 5cbc3b6 commit 6bd2ee5

15 files changed

+140
-21
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@v4
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@v4
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@v4
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@v4
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@v4
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
@@ -32,7 +32,7 @@ query(Fn, 123456748023490823409283409834802349082340928340983n); // 0n
3232

3333
[![License](https://img.shields.io/github/license/string-data-structure/fibonacci-string.svg)](https://raw.githubusercontent.com/string-data-structure/fibonacci-string/main/LICENSE)
3434
[![Version](https://img.shields.io/npm/v/@string-data-structure/fibonacci-string.svg)](https://www.npmjs.org/package/@string-data-structure/fibonacci-string)
35-
[![Tests](https://img.shields.io/github/workflow/status/string-data-structure/fibonacci-string/ci:test?event=push&label=tests)](https://github.com/string-data-structure/fibonacci-string/actions/workflows/ci:test.yml?query=branch:main)
35+
[![Tests](https://img.shields.io/github/workflow/status/string-data-structure/fibonacci-string/ci?event=push&label=tests)](https://github.com/string-data-structure/fibonacci-string/actions/workflows/ci.yml?query=branch:main)
3636
[![Dependencies](https://img.shields.io/librariesio/github/string-data-structure/fibonacci-string.svg)](https://github.com/string-data-structure/fibonacci-string/network/dependencies)
3737
[![GitHub issues](https://img.shields.io/github/issues/string-data-structure/fibonacci-string.svg)](https://github.com/string-data-structure/fibonacci-string/issues)
3838
[![Downloads](https://img.shields.io/npm/dm/@string-data-structure/fibonacci-string.svg)](https://www.npmjs.org/package/@string-data-structure/fibonacci-string)

package.json

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -50,8 +50,6 @@
5050
"build": "NODE_ENV=production microbundle",
5151
"build-docs": "esdoc",
5252
"build-gh-pages": "npm run build-docs",
53-
"ci:build": "npm run build",
54-
"ci:test": "npm run lint-config && npm run lint && npm run cover",
5553
"commit-msg": "commitlint --edit",
5654
"cover": "NODE_ENV=cover c8 --all --src src --reporter lcov --reporter text-summary --reporter text npm test",
5755
"debug": "NODE_ENV=debug npm run test -- -st --fail-fast",
@@ -67,7 +65,13 @@
6765
"prepare": "npm run build",
6866
"prepublishOnly": "pinst --disable",
6967
"release": "np --message ':hatching_chick: release: Bumping to v%s.'",
70-
"test": "ava"
68+
"test": "npm run test:src",
69+
"test-cmd": "NODE_LOADER_CONFIG=test/loader/config.js ava",
70+
"test:cjs": "IMPORT_MAP_PATH=test/import-maps/dist/index.json npm run test-cmd",
71+
"test:dist": "npm run test:modern && npm run test:module && npm run test:cjs",
72+
"test:modern": "IMPORT_MAP_PATH=test/import-maps/dist/index.modern.json npm run test-cmd",
73+
"test:module": "IMPORT_MAP_PATH=test/import-maps/dist/index.module.json npm run test-cmd",
74+
"test:src": "IMPORT_MAP_PATH=test/import-maps/src/index.json npm run test-cmd"
7175
},
7276
"dependencies": {
7377
"@functional-abstraction/predicate": "^4.0.0",
@@ -84,6 +88,8 @@
8488
"@iterable-iterator/zip": "1.0.1",
8589
"@js-library/commitlint-config": "0.0.4",
8690
"@node-loader/babel": "2.0.1",
91+
"@node-loader/core": "2.0.0",
92+
"@node-loader/import-maps": "1.1.0",
8793
"ava": "6.1.1",
8894
"babel-plugin-transform-remove-console": "6.9.4",
8995
"babel-plugin-unassert": "3.2.0",
@@ -109,7 +115,7 @@
109115
"test/src/**/*"
110116
],
111117
"nodeArguments": [
112-
"--experimental-loader=@node-loader/babel"
118+
"--experimental-loader=@node-loader/core"
113119
],
114120
"require": [
115121
"regenerator-runtime/runtime.js"

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

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ import {map} from '@iterable-iterator/map';
66
import {range} from '@iterable-iterator/range';
77
import {take} from '@iterable-iterator/slice';
88

9-
import {query, gen} from '../../src/index.js';
9+
import {query, gen} from '#module';
1010

1111
// eslint-disable-next-line no-return-assign
1212
export const iadd = (a, b) => (a += b);

test/src/examples.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 {makeIndex, query} from '../../src/index.js';
3+
import {makeIndex, query} from '#module';
44

55
test('README.md (Number)', (t) => {
66
const F = makeIndex({iadd: (x, y) => x + y, zero: () => 1, one: () => 2}, 10);

test/src/query.js

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

33
import {enumerate} from '@iterable-iterator/zip';
44

5-
import {query, makeIndex} from '../../src/index.js';
6-
75
import {makeSymbol, type, typen, repr} from './_fixtures.js';
6+
import {query, makeIndex} from '#module';
87

98
const symbol = makeSymbol({a: 'a', b: 'b'});
109

yarn.lock

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

2449+
"@node-loader/[email protected]":
2450+
version "2.0.0"
2451+
resolved "https://registry.yarnpkg.com/@node-loader/core/-/core-2.0.0.tgz#7f5a3a91fe137c8e71c0813f3bbaa0ee136a1308"
2452+
integrity sha512-7wV4qj2/tROXGgoYWmNvObUXbXqSv1yUD31K79Jt1q7NDuqrLz4WjjW+wVoCNgVcl8+YSj9BvLX8KsB/SrSzuw==
2453+
2454+
"@node-loader/[email protected]":
2455+
version "1.1.0"
2456+
resolved "https://registry.yarnpkg.com/@node-loader/import-maps/-/import-maps-1.1.0.tgz#4785fdce3bc973c5b53a4549248ab42b370ecda9"
2457+
integrity sha512-RPB+7vBVhk9xF/eiSGSxEnL6hGQ0a1ua9hvl/MxXDmu7F+Nv+gMwA7AJ0S5TmcgulHAp9/IxobGoFiOxkX7xWQ==
2458+
24492459
"@nodelib/[email protected]":
24502460
version "2.1.5"
24512461
resolved "https://registry.yarnpkg.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz#7619c2eb21b25483f6d167548b4cfd5a7488c3d5"

0 commit comments

Comments
 (0)