Example #1
0
def translate(texts):
    api_client = APIClient()
    json_response = api_client.translate(texts)
    translation_uids = [
        translation_object['uid']
        for translation_object in json_response['objects']
    ]
    api_client.update_translations_until_completed(translation_uids)
Example #2
0
def test_update_translations_until_completed(db_wrapper):
    """fetching and persisting translations until their status becomes 'completed' """
    api_client = APIClient(db_wrapper)
    mock_get_translations = []
    mock_get_translations.append([{'uid': 'fake_uid', 'status': 'new'}])
    mock_get_translations.append([{'uid': 'fake_uid', 'status': 'completed'}])
    api_client.get_translations = Mock(side_effect=mock_get_translations)
    api_client.update_translations_until_completed(
        translation_uids=['fake_uid'], wait_time_between_updates=0)
    translation = db_wrapper.db.translations.find_one()

    assert db_wrapper.db.translations.count() == 1
    assert translation['uid'] == 'fake_uid'
    assert translation['status'] == 'completed'