Tests to check whether extensions load ()

This commit is contained in:
Katie Broida 2018-10-31 17:22:21 -04:00 committed by GitHub
parent 6ef600dc2c
commit 5cf10b1af1
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
13 changed files with 48 additions and 0 deletions
test/integration

View file

@ -0,0 +1,27 @@
const path = require('path');
const test = require('tap').test;
const fs = require('fs');
const readFileToBuffer = require('../fixtures/readProjectFile').readFileToBuffer;
const VirtualMachine = require('../../src/index');
test('Load external extensions', async t => {
const vm = new VirtualMachine();
const fileList = fs.readdirSync('./test/fixtures/load-extensions/');
const testFiles = fileList.filter(file => path.extname(file) === '.sb2' || path.extname(file) === '.sb3');
// Test each example extension file
for (const file of testFiles) {
const ext = file.split('-')[0];
const uri = path.resolve(__dirname, `../fixtures/load-extensions/${file}`);
const project = readFileToBuffer(uri);
await t.test('Confirm expected extension is installed in example sb2 projects', extTest => {
vm.loadProject(project)
.then(() => {
extTest.ok(vm.extensionManager.isExtensionLoaded(ext));
extTest.end();
});
});
}
t.end();
});