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)
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'