やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

./web/http/Response.pyの単体テストをした

GitHubアップローダの一部。

成果物

GitHubGitHub.Uploader.Response.unittest.201704251554

開発環境

前回まで

http://ytyaru.hatenablog.com/entry/2017/12/20/000000

バグ

  • Response.Headers.ContentTypeクラス
    • suffixを取得できなかった
  • Response.Headers.Linkクラス
    • TypeError: string indices must be integers
      • Linkクラスを削除してPaginator.pyクラスを新規生成することになった

改修

Linkクラスを削除してPaginator.pyクラスを新規生成することになった。

Paginator.pyクラスを新規生成した。

ページネーションを要するコードの呼出部分を変更する必要がある。

$ find . -name "*.py" | xargs grep "Link.Next("
./web/service/github/api/v3/users/Emails.py:            url = self.__response.Headers.Link.Next(r)
./web/service/github/api/v3/users/SshKeys.py:            url = self.__response.Headers.Link.Next(r)
./web/service/github/api/v3/repositories/Repositories.py:            url = self.__response.Headers.Link.Next(r)
./web/service/github/api/v3/miscellaneous/Licenses.py:            url = self.__response.Headers.Link.Next(r)

GitHubアップローダ側にも修正が必要

しかし、これまで単体テストを飛ばして進めた結果、このような後戻り作業の肥大化になっている。なので、単体テストが全て終わってからマージしたほうがいいかもしれない。呼出側の修正も必要だということは忘れぬようメモしておく。

所感

次回は先送りしてしまう理由などについて考えてみたい。