今まで毎日更新を目指してきましたが、正直に言うと1日のコンテンツが薄く、続けるモチベーション的にもいまいちになってきました。
これからは、良い感じにやる気が出たときに記事を書いて、公開していこうと思います。
今まで毎日更新を目指してきましたが、正直に言うと1日のコンテンツが薄く、続けるモチベーション的にもいまいちになってきました。
これからは、良い感じにやる気が出たときに記事を書いて、公開していこうと思います。
毎日更新を止めて、もう少し1日あたりの内容を多くする方が良いかな
予め作っておけばよかった
お盆なので
下記のようにモックを定義する。
import pandas as pd from unittest.mock import MagicMock import jquantsapi mock = MagicMock(return_value=pd.DataFrame()) cli = jquantsapi.Client(refresh_token="dummy") cli.get_prices_daily_quotes = mock
下記のように呼び出すと、モックされたメソッドが呼ばれ、規定した値を返す。
cli.get_prices_daily_quotes() # => Empty DataFrame # => Columns: [] # => Index: []
MagicMock(return_value=pd.DataFrame())
上記のように、 MagicMock
を初期化する際、 return_value
に渡してやった値が、全ての mock.*()
の戻り値となる。
要旨の部分では、 mock.get_prices_daily_quotes()
を呼んでいるが、このメソッド名だけでなく、いかなるメソッド名で呼んでも、 return_value
で規定した値が返るようになる。
単純に数だけで比較するのも議論の余地があるが、ひとまず参考として pytest
は少なくとも標準パッケージよりは主流と言っても良いかもしれない。
pytest
でPythonのリポジトリを検索した結果11,699
repository results
unittest
でPythonのリポジトリを検索した結果4,107
repository results
頭痛い。。。