В зависимости от темы, как написать тесты для функций, которые имеют дело с , выбрать обработку событий в matplotlib?
В частности, учитывая следующий минимальный рабочий пример, как написать тест, который обеспечит 100% охват?
import numpy as np
import matplotlib.pyplot as plt
def onpick(event):
ind = event.ind
print('you clicked on point(s):', ind)
def attach_handler_to_figure(figure):
figure.canvas.mpl_connect('pick_event', onpick)
def main():
plt.ion()
x, y, c, s = np.random.rand(4, 100)
fig, ax = plt.subplots()
ax.scatter(x, y, 100*s, c, picker=True)
attach_handler_to_figure(fig)
main()
Критическая часть для меня - написание тестов для функций onpick
и attach_handler_to_figure
. Что касается сюжета, я нахожу этот ответ удовлетворительным!
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ: У меня нет способа проверить вывод консоли. Мне нужны тестовые функции, вроде test_onpick
и test_attach_handler_to_figure
и test_main
(ну, в общем, задача состоит в тестировании строки attach_handler_to_figure(fig)
), которые могут использоваться pytest или любой другой механизм тестирования.