Как проверить атексит с помощью pytest - PullRequest
1 голос
/ 16 марта 2020

Я пытался заставить свой скрипт сохранить некоторые данные до его выхода. Я посмотрел документацию по atexit, и мне было интересно, есть ли способ проверить выполнение кода после завершения процесса (более конкретно, с помощью pytest). Может быть, в этом нет никакого смысла, но возможно ли это? Вот мой код

метод, который atexit вызывает

@classmethod
def save_state(cls, program_state, program_manager):
    running = program_state.get_curr_running()
    print("Saving the current state upon exit...")
    pruned = program_manager.prune_programs(running)
    for pg in pruned:
        pg.end_now()
    DataManager.update_pg_times(pruned)
# Before the program is shutdown, currently running programs are updated
import atexit
atexit.register(DataManager.save_state, program_state, program_manager)

...