def test_card_draw_text(): """ Ensure the expected Label object is added to the screen's layout instance. """ card = Card("title", text="This is some text for the label...") card.layout = mock.MagicMock() card.font_size = "48sp" card._draw_text() card.layout.add_widget.assert_called_once_with(card.text_label) assert card.text_label.text == "This is some text for the label..." assert card.text_label.font_size == 48.0 assert card.text_label.markup is True assert card.text_label.color == [1.0, 1.0, 1.0, 1.0] assert card.text_label.padding == [10, 10] assert card.text_label.valign == "middle" assert card.text_label.halign == "center"
def test_card_screen_with_text_only(): """ If the card has only textual content, ensure the _draw_text method is called to paint it onto the screen. """ mock_screen_manager = mock.MagicMock() data_store = {"foo": "bar"} card = Card("title", text="Textual content...") card._draw_text = mock.MagicMock() card.screen(mock_screen_manager, data_store) card._draw_text.assert_called_once_with()