import unittest

from agent_gui.avatar import available_states, get_avatar


class AvatarTests(unittest.TestCase):
    def test_all_states_have_art(self):
        for state in available_states():
            avatar = get_avatar(state)
            self.assertEqual(avatar["state"], state)
            self.assertTrue(avatar["label"])
            self.assertTrue(avatar["art"])

    def test_unknown_state_falls_back_to_idle(self):
        avatar = get_avatar("missing")
        self.assertEqual(avatar["state"], "idle")


if __name__ == "__main__":
    unittest.main()
