Насмешка Python Резьба блокировки - PullRequest
0 голосов
/ 12 февраля 2020

Как один модульный тест проверяет, что выполнение набора кода происходит внутри заблокированного фрагмента кода? Например, если у нас есть блок кода

import threading

def locking_function(thread_lock)
  thread_lock.acquire()

  some_method()

  thread_lock.release()

и я хочу проверить, что порядок выполнения имеет порядок thread_lock.acquire(), some_method(), lock.release(), как бы я это сделал? Мой первый инстинкт - это смоделировать методы получения и освобождения блокировки.

В моем случае я не могу создать блокировку моего метода тестирования в качестве параметра моей функции, так как он генерируется в другом месте кода. Я пробовал издеваться над Lock.acquire, однако при этом я получаю ошибки атрибутов.

Любая помощь будет принята с благодарностью.

...