Насмешка над датой и временем приводит к ошибке в pyarrow


person Carsten    schedule 11.01.2021    source источник
comment
Вы не просто издевались над datetime.now; вы издевались над всем классом datetime с тем, в котором нет ничего кроме метода класса с именем now.   -  person chepner    schedule 11.01.2021
comment
Спасибо за подсказку! Выложу рабочее решение   -  person Carsten    schedule 11.01.2021


Ответы (1)


Чепнер спасибо за подсказку. Для дальнейшего использования, вот рабочее решение:

import pytest
import pyarrow.parquet as pq
import datetime

mockdate = datetime.datetime(2000, 1, 1, 0, 0, 0)
    
def function_to_test():
    date = datetime.datetime.now()
    some_table = pq.read_table("abc/def")
    return some_table, date
    
def test_function_to_test(mocker):

    mocker.patch(__name__  + '.datetime')
    datetime.datetime.now.return_value = mockdate
    
    table, date = function_to_test()
    
    assert date == mockdate
person Carsten    schedule 11.01.2021