def test_conversation_pending_message():
    """
    Test that a conversation with a message that's not yet downloaded
    shows the right placeholder text
    """
    w = Window()
    w.controller = mock.MagicMock()
    w.main_view = mock.MagicMock()
    w._add_item_content_or = mock.MagicMock()
    mock_conview = mock.MagicMock()
    mock_source = mock.MagicMock()
    mock_source.journalistic_designation = 'Testy McTestface'

    submission = Submission(source=mock_source,
                            uuid="test",
                            size=123,
                            filename="test.msg.gpg",
                            download_url='http://test/test')

    submission.is_downloaded = False

    mock_source.collection = [submission]

    with mock.patch('securedrop_client.gui.main.ConversationView',
                    mock_conview):
        w.show_conversation_for(mock_source)
        conv = mock_conview()

        # once for source name, once for message
        assert conv.add_message.call_count == 2
        assert conv.add_message.call_args == \
            mock.call("<Message not yet downloaded>")
示例#2
0
def test_submission_content_downloaded():
    source = Source(journalist_designation="testy test", uuid="test",
                    is_flagged=False, public_key='test', interaction_count=1,
                    is_starred=False, last_updated='test')
    submission = Submission(source=source, uuid="test", size=123,
                            filename="test.docx",
                            download_url='http://test/test')
    submission.is_downloaded = True
    with mock.patch('builtins.open', mock.mock_open(read_data="blah")):
        assert submission.content == "blah"