Skip to content

Commit

Permalink
replace nodejs once() usage with mineflayer once() with a default 20s…
Browse files Browse the repository at this point in the history
… timeout
  • Loading branch information
extremeheat committed Feb 22, 2024
1 parent 95b3644 commit 2a0f054
Show file tree
Hide file tree
Showing 22 changed files with 27 additions and 25 deletions.
2 changes: 1 addition & 1 deletion lib/plugins/anvil.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
const assert = require('assert')
const { sleep } = require('../promise_utils')
const { once } = require('events')
const { once } = require('../promise_utils')

module.exports = inject

Expand Down
2 changes: 1 addition & 1 deletion lib/plugins/book.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const assert = require('assert')
const { once } = require('events')
const { once } = require('../promise_utils')

module.exports = inject

Expand Down
2 changes: 1 addition & 1 deletion lib/plugins/craft.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const assert = require('assert')
const { once } = require('events')
const { once } = require('../promise_utils')

module.exports = inject

Expand Down
4 changes: 2 additions & 2 deletions lib/plugins/creative.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const assert = require('assert')
const { Vec3 } = require('vec3')
const { sleep, onceWithCleanup } = require('../promise_utils')
const { once } = require('events')
const { once } = require('../promise_utils')

module.exports = inject

Expand Down Expand Up @@ -70,7 +70,7 @@ function inject (bot) {

// last step
bot.entity.position = destination
await once(bot, 'move')
await once(bot, 'move', /* no timeout */ 0)
}

function startFlying () {
Expand Down
2 changes: 1 addition & 1 deletion lib/plugins/enchantment_table.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const assert = require('assert')
const { once } = require('events')
const { once } = require('../promise_utils')

module.exports = inject

Expand Down
3 changes: 1 addition & 2 deletions lib/plugins/inventory.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
const assert = require('assert')
const { Vec3 } = require('vec3')
const { once } = require('events')
const { sleep, createDoneTask, createTask, withTimeout } = require('../promise_utils')
const { once, sleep, createDoneTask, createTask, withTimeout } = require('../promise_utils')

module.exports = inject

Expand Down
2 changes: 1 addition & 1 deletion lib/plugins/villager.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const assert = require('assert')
const { once } = require('events')
const { once } = require('../promise_utils')

module.exports = inject

Expand Down
5 changes: 5 additions & 0 deletions lib/promise_utils.js
Original file line number Diff line number Diff line change
Expand Up @@ -72,6 +72,10 @@ function onceWithCleanup (emitter, event, { timeout = 0, checkCondition = undefi
return task.promise
}

function once (emitter, event, timeout = 20000) {
return onceWithCleanup(emitter, event, { timeout })
}

function withTimeout (promise, timeout) {
return Promise.race([
promise,
Expand All @@ -82,6 +86,7 @@ function withTimeout (promise, timeout) {
}

module.exports = {
once,
sleep,
createTask,
createDoneTask,
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/anvil.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const assert = require('assert')
const { once } = require('events')
const { once } = require('../../lib/promise_utils')

module.exports = () => {
async function runTest (bot, testFunction) {
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/bed.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const assert = require('assert')
const { once } = require('events')
const { once } = require('../../lib/promise_utils')

module.exports = () => async (bot) => {
const midnight = 18000
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/chat.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const assert = require('assert')
const { once } = require('events')
const { once } = require('../../lib/promise_utils')

module.exports = () => {
async function runTest (bot, testFunction) {
Expand Down
3 changes: 1 addition & 2 deletions test/externalTests/commandBlock.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
const assert = require('assert')
const { once } = require('events')
const { Vec3 } = require('vec3')
const { onceWithCleanup } = require('../../lib/promise_utils')
const { once, onceWithCleanup } = require('../../lib/promise_utils')

module.exports = () => async (bot) => {
const command = `/say ${Math.floor(Math.random() * 1000)}`
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/crafting.js
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
const { once } = require('events')
const { once } = require('../../lib/promise_utils')
const { Vec3 } = require('vec3')

module.exports = () => async (bot) => {
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/nether.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
const assert = require('assert')
const Vec3 = require('vec3')
const { once } = require('events')
const { once } = require('../../lib/promise_utils')

module.exports = () => async (bot) => {
// Test spawn event on death
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/placeEntity.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
const assert = require('assert')
const { Vec3 } = require('vec3')
const { once } = require('events')
const { once } = require('../../lib/promise_utils')

module.exports = (version) => {
async function runTest (bot, testFunction) {
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/plugins/testCommon.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const { Vec3 } = require('vec3')

const { spawn } = require('child_process')
const { once } = require('events')
const { once } = require('../../lib/promise_utils')
const process = require('process')
const assert = require('assert')
const { sleep, onceWithCleanup, withTimeout } = require('../../../lib/promise_utils')
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/rain.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const assert = require('assert')
const { once } = require('events')
const { once } = require('../../lib/promise_utils')

module.exports = () => async (bot) => {
bot.test.sayEverywhere('/weather clear')
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/scoreboard.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
// const assert = require('assert')
// const { once } = require('events')
// const { once } = require('../../lib/promise_utils')

module.exports = () => async (bot) => {
// TODO: This is failing randomly, investigate and fix
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/spawnEvent.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const mineflayer = require('mineflayer')
const { once } = require('events')
const { once } = require('../../lib/promise_utils')

module.exports = () => async (bot) => {
// Test spawn event on login
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/team.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const assert = require('assert')
const { once } = require('events')
const { once } = require('../../lib/promise_utils')

module.exports = () => async (bot) => {
const p = once(bot, 'teamMemberAdded')
Expand Down
2 changes: 1 addition & 1 deletion test/externalTests/trade.js
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
const assert = require('assert')
const { once } = require('events')
const { once } = require('../../lib/promise_utils')

module.exports = () => async (bot) => {
const Item = require('prismarine-item')(bot.registry)
Expand Down
3 changes: 1 addition & 2 deletions test/externalTests/useChests.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
const { Vec3 } = require('vec3')
const assert = require('assert')
const { once } = require('events')
const { onceWithCleanup } = require('../../lib/promise_utils')
const { once, onceWithCleanup } = require('../../lib/promise_utils')

module.exports = () => async (bot) => {
const Item = require('prismarine-item')(bot.registry)
Expand Down

0 comments on commit 2a0f054

Please sign in to comment.