scratch-vm/test/fixtures/readProjectFile.js

22 lines
733 B
JavaScript
Raw Normal View History

const AdmZip = require('adm-zip');
const fs = require('fs');
module.exports = {
readFileToBuffer: function (path) {
return Buffer.from(fs.readFileSync(path));
},
extractProjectJson: function (path) {
const zip = new AdmZip(path);
2022-05-16 17:11:55 -04:00
const projectEntry = zip.getEntries().find(item => item.entryName.match(/project\.json/));
if (projectEntry) {
return JSON.parse(zip.readAsText(projectEntry.entryName, 'utf8'));
}
return null;
},
extractAsset: function (path, assetFileName) {
const zip = new AdmZip(path);
const assetEntry = zip.getEntries().find(item => item.entryName.match(assetFileName));
return assetEntry.getData();
}
};