diff options
-rw-r--r-- | tests/test_cards.py | 27 |
1 files changed, 17 insertions, 10 deletions
diff --git a/tests/test_cards.py b/tests/test_cards.py index a5e4437..73f42a0 100644 --- a/tests/test_cards.py +++ b/tests/test_cards.py @@ -1,19 +1,26 @@ +import json import unittest +from unittest.mock import patch, mock_open from swiftstory.cards import Cards class TestCards(unittest.TestCase): - def test_get_cards_fr(self): - self.assertTrue(Cards.get_white_cards("fr")) - self.assertTrue(Cards.get_black_cards("fr")) + def test_get_cards_supported_language(self): + white_cards = json.dumps([ + "White Card 1", "White Card 2", + "White Card 3", "White Card 4", + ]) + black_cards = json.dumps(["Black Card 1", "Black Card 2"]) - def test_get_cards_en(self): - self.assertTrue(Cards.get_white_cards("en")) - self.assertTrue(Cards.get_black_cards("en")) + with patch("swiftstory.cards.open", mock_open(read_data=white_cards)): + self.assertIn("White Card 2", Cards.get_white_cards("en")) + with patch("swiftstory.cards.open", mock_open(read_data=black_cards)): + self.assertIn("Black Card 1", Cards.get_black_cards("en")) def test_get_cards_unknown_language(self): - with self.assertRaises(FileNotFoundError): - Cards.get_white_cards("zz") - with self.assertRaises(FileNotFoundError): - Cards.get_black_cards("zz") + with patch("swiftstory.cards.open", side_effect=FileNotFoundError): + with self.assertRaises(FileNotFoundError): + Cards.get_white_cards("zz") + with self.assertRaises(FileNotFoundError): + Cards.get_black_cards("zz") |