diff --git a/packages/xo-vmdk-to-vhd/src/vmdk-to-vhd.integ.spec.js b/packages/xo-vmdk-to-vhd/src/vmdk-to-vhd.integ.spec.js index d75f15015..bb04d7669 100644 --- a/packages/xo-vmdk-to-vhd/src/vmdk-to-vhd.integ.spec.js +++ b/packages/xo-vmdk-to-vhd/src/vmdk-to-vhd.integ.spec.js @@ -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])