diff --git a/package.json b/package.json index 048d5e95..dee15816 100644 --- a/package.json +++ b/package.json @@ -46,10 +46,13 @@ "aegir": "^21.9.0", "async-iterator-all": "^1.0.0", "benchmark": "^2.1.4", + "buffer": "^5.6.0", "chai": "^4.2.0", "delay": "^4.3.0", "dirty-chai": "^2.0.1", "ipfs-repo": "^2.0.0", + "ipfs-utils": "^2.2.0", + "iso-random-stream": "^1.1.1", "libp2p": "^0.27.0", "libp2p-kad-dht": "^0.18.3", "libp2p-mplex": "^0.9.2", @@ -68,7 +71,6 @@ "peer-info": "^0.17.0", "promisify-es6": "^1.0.3", "rimraf": "^3.0.0", - "buffer": "^5.6.0", "stats-lite": "^2.2.0", "uuid": "^3.3.2" }, @@ -85,7 +87,7 @@ "multihashing-async": "^0.8.0", "protons": "^1.0.1", "streaming-iterables": "^4.1.1", - "varint-decoder": "~0.1.1" + "varint-decoder": "^0.4.0" }, "pre-push": [ "lint", diff --git a/src/decision-engine/index.js b/src/decision-engine/index.js index 7364bb15..90565a8a 100644 --- a/src/decision-engine/index.js +++ b/src/decision-engine/index.js @@ -50,7 +50,9 @@ class DecisionEngine { } _scheduleProcessTasks () { - setImmediate(() => this._processTasks()) + setTimeout(() => { + this._processTasks() + }) } // Pull tasks off the request queue and send a message to the corresponding diff --git a/test/utils/make-block.js b/test/utils/make-block.js index 50d59713..bb3bb94b 100644 --- a/test/utils/make-block.js +++ b/test/utils/make-block.js @@ -3,7 +3,7 @@ const multihashing = require('multihashing-async') const CID = require('cids') const Block = require('ipld-block') -const crypto = require('crypto') +const randomBytes = require('iso-random-stream/src/random') const range = require('lodash.range') const { Buffer } = require('buffer') const uuid = require('uuid/v4') @@ -11,7 +11,7 @@ const uuid = require('uuid/v4') module.exports = async (count, size) => { const blocks = await Promise.all( range(count || 1).map(async () => { - const data = size ? crypto.randomBytes(size) : Buffer.from(`hello world ${uuid()}`) + const data = size ? randomBytes(size) : Buffer.from(`hello world ${uuid()}`) const hash = await multihashing(data, 'sha2-256') return new Block(data, new CID(hash)) }) diff --git a/test/utils/mocks.js b/test/utils/mocks.js index 36d71ccf..2179b371 100644 --- a/test/utils/mocks.js +++ b/test/utils/mocks.js @@ -5,7 +5,7 @@ const PeerId = require('peer-id') const PeerInfo = require('peer-info') const PeerStore = require('libp2p/src/peer-store') const Node = require('./create-libp2p-node').bundle -const os = require('os') +const tmpdir = require('ipfs-utils/src/temp-dir') const Repo = require('ipfs-repo') const EventEmitter = require('events') @@ -59,14 +59,14 @@ exports.mockNetwork = (calls, done, onMsg) => { messages, connects, connectTo (p) { - setImmediate(() => { + setTimeout(() => { connects.push(p) }) }, sendMessage (p, msg) { messages.push([p, msg]) - setImmediate(() => { + setTimeout(() => { finish([p, msg]) }) @@ -182,7 +182,7 @@ exports.genBitswapNetwork = async (n, enableDHT = false) => { }) // create the repos - const tmpDir = os.tmpdir() + const tmpDir = tmpdir() netArray.forEach((net, i) => { const repoPath = tmpDir + '/' + net.peerInfo.id.toB58String() net.repo = new Repo(repoPath)