CoolFace
Apppublic

strong-tie/inbound-calls

sourceHugging Faceupdated 2y agoView on Hugging Face
0likes
logger-test-utils.js48 linesDownload Raw Back to logger
1'use strict'2 3const http = require('node:http')4const os = require('node:os')5const fs = require('node:fs')6 7const path = require('node:path')8 9function createDeferredPromise () {10  const promise = {}11  promise.promise = new Promise(function (resolve) {12    promise.resolve = resolve13  })14  return promise15}16 17let count = 018function createTempFile () {19  const file = path.join(os.tmpdir(), `sonic-boom-${process.pid}-${count++}`)20  function cleanup () {21    try {22      fs.unlinkSync(file)23    } catch { }24  }25  return { file, cleanup }26}27 28function request (url, cleanup = () => { }) {29  const promise = createDeferredPromise()30  http.get(url, (res) => {31    const chunks = []32    // we consume the response33    res.on('data', function (chunk) {34      chunks.push(chunk)35    })36    res.once('end', function () {37      cleanup(res, Buffer.concat(chunks).toString())38      promise.resolve()39    })40  })41  return promise.promise42}43 44module.exports = {45  request,46  createTempFile47}48