Skip to content

Commit

Permalink
feat: add more tests
Browse files Browse the repository at this point in the history
  • Loading branch information
wu-vincent committed Feb 12, 2025
1 parent 25cb1bb commit 5bf29d4
Show file tree
Hide file tree
Showing 3 changed files with 34 additions and 7 deletions.
27 changes: 25 additions & 2 deletions src/endstone_test/event_listener.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ def on_player_login(self, event: PlayerLoginEvent) -> None:

@event_handler
def on_player_join(self, event: PlayerJoinEvent) -> None:
self.server.logger.info(event.join_message)
event.join_message = ColorFormat.BOLD + event.join_message

self._plugin.logger.info("===========================")
Expand All @@ -38,6 +39,12 @@ def on_player_join(self, event: PlayerJoinEvent) -> None:

run_tests("on_player_join", player=event.player, plugin=self._plugin)

@event_handler
def on_player_emote(self, event: PlayerEmoteEvent) -> None:
self._plugin.logger.info(
f"{event.player.name} sends an emote: {event.emote_id}"
)

@event_handler
def on_player_interact(self, event: PlayerInteractEvent):
self._plugin.logger.info(
Expand All @@ -59,11 +66,12 @@ def on_player_kick(self, event: PlayerKickEvent) -> None:

@event_handler
def on_player_quit(self, event: PlayerQuitEvent) -> None:
self.server.logger.info(event.quit_message)
event.quit_message = ColorFormat.BOLD + event.quit_message

@event_handler
def on_player_chat(self, event: PlayerChatEvent) -> None:
pass
self._plugin.logger.info(f"{event.player.name} says: {event.message}")

@event_handler
def on_player_game_mode_changed(self, event: PlayerGameModeChangeEvent) -> None:
Expand All @@ -79,11 +87,26 @@ def on_player_teleport(self, event: PlayerTeleportEvent):

@event_handler
def on_player_death(self, event: PlayerDeathEvent):
self._plugin.logger.info(
f"{event.player.name} died (source: {event.damage_source})."
)
event.death_message = ColorFormat.RED + event.death_message

@event_handler
def on_player_respawn(self, event: PlayerRespawnEvent):
self._plugin.logger.info(f"{event.player.name} respawned.")

@event_handler
def on_actor_damaged(self, event: ActorDamageEvent):
self._plugin.logger.info(
f"{event.actor.name} ({event.actor.type}) hurt (source: {event.damage_source}, damage: {event.damage})."
)

@event_handler
def on_actor_death(self, event: ActorDeathEvent):
self._plugin.logger.info(f"{event.actor.name} ({event.actor.type}) died.")
self._plugin.logger.info(
f"{event.actor.name} ({event.actor.type}) died (source: {event.damage_source})."
)

@event_handler
def on_actor_explode(self, event: ActorExplodeEvent):
Expand Down
6 changes: 2 additions & 4 deletions src/endstone_test/tests/on_load/test_block.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,5 @@ def test_create_block_data_custom_block_states(server: Server) -> None:


def test_get_block_outside_world_boundaries(server: Server) -> None:
with pytest.raises(RuntimeError) as exec_info:
server.level.dimensions[0].get_block_at(x=0, y=-256, z=0)

assert "outside of the world boundaries" in str(exec_info.value)
block = server.level.dimensions[0].get_block_at(x=0, y=-256, z=0)
assert block.type == "minecraft:air"
8 changes: 7 additions & 1 deletion src/endstone_test/tests/on_load/test_server.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,7 @@
from endstone import Server, __minecraft_version__
from endstone.command import CommandSenderWrapper
from endstone.plugin import Plugin
from endstone.level import Dimension


@pytest.fixture
Expand All @@ -15,11 +16,16 @@ def test_server_version(server: Server) -> None:
assert server.minecraft_version == __minecraft_version__


def test_server_level(server: Server) -> None:
def test_get_dimension(server: Server) -> None:
level = server.level

for dimension in level.dimensions:
assert level.get_dimension(dimension.name) is dimension

assert level.get_dimension("overworld").type == Dimension.OVERWORLD
assert level.get_dimension("nether").type == Dimension.NETHER
assert level.get_dimension("the_end").type == Dimension.THE_END


def test_dispatch_command(server: Server) -> None:
assert server.dispatch_command(
Expand Down

0 comments on commit 5bf29d4

Please sign in to comment.