CI only wasm

This commit is contained in:
Aliaksei Chapyzhenka 2021-10-10 20:22:15 -07:00
parent 97c3b15331
commit 7ae0d858ad
8 changed files with 26 additions and 23 deletions

View File

@ -14,4 +14,4 @@ jobs:
with: with:
node-version: ${{ matrix.node-version }} node-version: ${{ matrix.node-version }}
- run: npm i - run: npm i
- run: npm test - run: npm run nyc_mocha_wasm

View File

@ -14,4 +14,4 @@ jobs:
with: with:
node-version: ${{ matrix.node-version }} node-version: ${{ matrix.node-version }}
- run: npm i - run: npm i
- run: npm test - run: npm run nyc_mocha_wasm

View File

@ -14,4 +14,4 @@ jobs:
with: with:
node-version: ${{ matrix.node-version }} node-version: ${{ matrix.node-version }}
- run: npm i - run: npm i
- run: npm test - run: npm run nyc_mocha_wasm

View File

@ -12,7 +12,6 @@
"watch": "mocha --watch", "watch": "mocha --watch",
"build.web": "browserify ./lib/vcd-web.js | terser --compress -o demo/vcd-web.min.js", "build.web": "browserify ./lib/vcd-web.js | terser --compress -o demo/vcd-web.min.js",
"watch.web": "watchify ./lib/vcd-web.js -o demo/vcd-web.min.js -v", "watch.web": "watchify ./lib/vcd-web.js -o demo/vcd-web.min.js -v",
"install": "node bin/build.js",
"prepare": "node bin/build.js" "prepare": "node bin/build.js"
}, },
"files": [ "files": [

View File

@ -1,13 +1,14 @@
'use strict'; 'use strict';
const expect = require('chai').expect; const expect = require('chai').expect;
const lib = require('../lib/index.js'); const createVCD = require('../out/vcd.js');
const webVcdParser = require('../lib/web-vcd-parser.js');
describe('wasm any', function () { describe('wasm any', function () {
it('simple any', function (done) { it('simple any', function (done) {
lib.createVCD().then(mod => { createVCD().then(mod => {
lib.webVcdParser(mod).then(inst => { webVcdParser(mod).then(inst => {
const dump = []; const dump = [];
inst.change.any((id, time, cmd, value, mask) => { inst.change.any((id, time, cmd, value, mask) => {

View File

@ -1,24 +1,25 @@
'use strict'; 'use strict';
const expect = require('chai').expect; const expect = require('chai').expect;
const lib = require('../lib/index.js'); const createVCD = require('../out/vcd.js');
const webVcdParser = require('../lib/web-vcd-parser.js');
describe('wasm basic', () => { describe('wasm basic', () => {
it('typeof vcd', async function () { it('typeof vcd', async function () {
const mod = await lib.createVCD(); const mod = await createVCD();
expect(mod).to.be.an('object'); expect(mod).to.be.an('object');
}); });
it('typeof vcd instance', async function () { it('typeof vcd instance', async function () {
const mod = await lib.createVCD(); const mod = await createVCD();
const inst = await lib.webVcdParser(mod); const inst = await webVcdParser(mod);
expect(inst).to.be.an('object'); expect(inst).to.be.an('object');
}); });
it('fail: foo bar', async function () { it('fail: foo bar', async function () {
const mod = await lib.createVCD(); const mod = await createVCD();
const inst = await lib.webVcdParser(mod); const inst = await webVcdParser(mod);
expect(inst.write(Buffer.from(' foo bar ???'))).to.eq(true); expect(inst.write(Buffer.from(' foo bar ???'))).to.eq(true);
expect(inst.info).to.deep.eq({ expect(inst.info).to.deep.eq({
stack: [{}], stack: [{}],
@ -28,8 +29,8 @@ describe('wasm basic', () => {
}); });
it('$comment', async function () { it('$comment', async function () {
const mod = await lib.createVCD(); const mod = await createVCD();
const inst = await lib.webVcdParser(mod); const inst = await webVcdParser(mod);
expect(inst.write(Buffer.from( expect(inst.write(Buffer.from(
' \n $comment some text $end $comment more text $end ???' ' \n $comment some text $end $comment more text $end ???'
))).to.eq(true); ))).to.eq(true);
@ -42,8 +43,8 @@ describe('wasm basic', () => {
}); });
it('$version', async function () { it('$version', async function () {
const mod = await lib.createVCD(); const mod = await createVCD();
const inst = await lib.webVcdParser(mod); const inst = await webVcdParser(mod);
expect(inst.write(` expect(inst.write(`
$version Generated by VerilatedVcd $end $version Generated by VerilatedVcd $end
$date Wed Sep 18 22:59:07 2019 $date Wed Sep 18 22:59:07 2019

View File

@ -1,13 +1,14 @@
'use strict'; 'use strict';
const expect = require('chai').expect; const expect = require('chai').expect;
const lib = require('../lib/index.js'); const createVCD = require('../out/vcd.js');
const webVcdParser = require('../lib/web-vcd-parser.js');
describe('wasm dump', function () { describe('wasm dump', function () {
it('simple wasm', function (done) { it('simple wasm', function (done) {
lib.createVCD().then(function (mod) { createVCD().then(function (mod) {
lib.webVcdParser(mod).then(function (inst) { webVcdParser(mod).then(function (inst) {
const dump = []; const dump = [];
['"}G', '{u', 'u)'] // array of all signal ids ['"}G', '{u', 'u)'] // array of all signal ids
.map(id => .map(id =>

View File

@ -1,13 +1,14 @@
'use strict'; 'use strict';
const expect = require('chai').expect; const expect = require('chai').expect;
const lib = require('../lib/index.js'); const createVCD = require('../out/vcd.js');
const webVcdParser = require('../lib/web-vcd-parser.js');
describe('wasm events', () => { describe('wasm events', () => {
it('$enddefinitions', async function () { it('$enddefinitions', async function () {
const mod = await lib.createVCD(); const mod = await createVCD();
const inst = await lib.webVcdParser(mod); const inst = await webVcdParser(mod);
inst.on('$enddefinitions', () => { inst.on('$enddefinitions', () => {
expect(inst.info).to.deep.eq({ expect(inst.info).to.deep.eq({