Files
minecraft-bot/tests/test_clear_leaves.py

38 lines
1.1 KiB
Python

import unittest
from unittest.mock import patch
from munch import Munch
from mosfet.jobs.clear_leaves import ClearLeavesStates
class ClearLeavesTests(unittest.TestCase):
def test_spaces_leaf_breaks_at_configured_interval(self):
class FakeGame:
def __init__(self):
self.broken = []
def break_block(self, location):
self.broken.append(location)
return True
game = FakeGame()
state = ClearLeavesStates(Munch(
breaking=False, game=game, look_at=None))
state.leaves = [(0, 64, 0), (1, 64, 0)]
with patch('mosfet.jobs.clear_leaves.time.monotonic', return_value=10):
state.break_leaves()
self.assertEqual(game.broken, [(0, 64, 0)])
with patch('mosfet.jobs.clear_leaves.time.monotonic', return_value=10.59):
state.break_leaves()
self.assertEqual(game.broken, [(0, 64, 0)])
with patch('mosfet.jobs.clear_leaves.time.monotonic', return_value=10.6):
state.break_leaves()
self.assertEqual(game.broken, [(0, 64, 0), (1, 64, 0)])
if __name__ == '__main__':
unittest.main()