Path: blob/master/test/externalTests/consume.js
1499 views
const assert = require('assert')12module.exports = () => async (bot) => {3const Item = require('prismarine-item')(bot.registry)45await bot.test.setInventorySlot(36, new Item(bot.registry.itemsByName.bread.id, 5, 0))6await bot.test.becomeSurvival()7// Cannot consume if bot.food === 208await assert.rejects(bot.consume, (err) => {9if (!err) {10// log the conditions that made this not throw11console.log({ a: bot.game.gameMode !== 'creative', b: !['potion', 'milk_bucket', 'enchanted_golden_apple', 'golden_apple'].includes(bot.heldItem.name), c: bot.food === 20 })12}13assert.notStrictEqual(err, undefined)14return true15})1617await bot.test.becomeSurvival()1819while (bot.food > 0) {20if (bot.supportFeature('effectAreNotPrefixed')) bot.test.sayEverywhere('/effect give @s hunger 1 255')21else if (bot.supportFeature('effectAreMinecraftPrefixed')) bot.test.sayEverywhere(`/effect ${bot.username} minecraft:hunger 1 255`)22await bot.test.wait(500)23}2425assert.ok(!bot.usingHeldItem)26while (bot.food < 20) {27const consume = bot.consume()28assert.ok(bot.usingHeldItem)29await consume30assert.ok(!bot.usingHeldItem)31await bot.test.wait(100)32}33}343536