from mudlib.render.ansi import RESET, colorize_map, colorize_terrain def test_colorize_terrain_grass(): """Grass is colored green.""" result = colorize_terrain(".") assert "\033[" in result # has ANSI code assert "." in result assert RESET in result def test_colorize_terrain_mountain(): """Mountain is colored.""" result = colorize_terrain("^") assert "\033[" in result assert "^" in result assert RESET in result def test_colorize_terrain_water(): """Water is colored blue.""" result = colorize_terrain("~") assert "\033[" in result assert "~" in result assert RESET in result def test_colorize_terrain_unknown(): """Unknown characters pass through unchanged.""" result = colorize_terrain("?") assert result == "?" def test_colorize_map(): """colorize_map returns newline-separated colored rows.""" grid = [ [".", ".", "T"], ["~", "^", "."], ] result = colorize_map(grid) assert "\n" in result lines = result.split("\n") assert len(lines) == 2 # should have ANSI codes assert "\033[" in result