chore(xo-vmdk-to-vhd): fix tests (#5981)

Introduced by fdf52a3d59

Follow-up of b00750bfa3
This commit is contained in:
Nicolas Raynaud
2021-11-07 15:38:45 +01:00
committed by GitHub
parent cb7b695a72
commit 88628bbdc0

View File

@@ -24,6 +24,15 @@ afterEach(async () => {
await pFromCallback(cb => rimraf(tmpDir, cb))
})
function bufferToArray(buffer) {
const view = new DataView(buffer)
const res = []
for (let i = 0; i < buffer.byteLength; i += 4) {
res.push(view.getUint32(i, true))
}
return res
}
function createFileAccessor(file) {
return async (start, end) => {
if (start < 0 || end < 0) {
@@ -52,7 +61,7 @@ test('VMDK to VHD can convert a random data file with VMDKDirectParser', async (
})
const result = await readVmdkGrainTable(createFileAccessor(vmdkFileName))
const pipe = (
await vmdkToVhd(createReadStream(vmdkFileName), result.grainLogicalAddressList, result.grainFileOffsetList)
await vmdkToVhd(createReadStream(vmdkFileName), bufferToArray(result.grainLogicalAddressList), bufferToArray(result.grainFileOffsetList))
).pipe(createWriteStream(vhdFileName))
await fromEvent(pipe, 'finish')
await execa('vhd-util', ['check', '-p', '-b', '-t', '-n', vhdFileName])