All files convertFromBlob.ts

100% Statements 14/14
100% Branches 3/3
100% Functions 3/3
100% Lines 11/11

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 203x     7x 1x     6x 1x     5x 5x 5x 5x 5x   5x    
export async function convertFromStream(
  content: string | Blob | NodeJS.ReadableStream
): Promise<string> {
  if (typeof content === 'string') {
    return content;
  }
 
  if (!(content instanceof Blob)) {
    throw new Error('Type must be Blob');
  }
 
  const arrayBuffer = new Promise<ArrayBuffer>((resolve, reject) => {
    const reader = new FileReader();
    reader.onload = () => resolve(reader.result as ArrayBuffer);
    reader.onerror = reject;
    reader.readAsArrayBuffer(content);
  });
  return Buffer.from(await arrayBuffer).toString();
}