ただの日記です。
gemはいくつか作っているのだけれど、大体がRailsに関連するgemだったり、Railsでよく使われているgemの関連gemだったりする。
どれもあんまり使われているわけでもないのだけれど、自社サービスで使っているので、RubyやRailsのバージョンアップに合わせて、ちゃんと動作することくらいはテストしていかないとなぁ~と常々思っていたので、プライベートの時間をそれに使うことにした。本を読んだりもしたいけれど。
とりあえずimyouの動作検証はやっておいた。imyouについてはこちらの記事を。
他にもいくつかあるのだが、ransacker_translatorという6年も放置していたgemがあったので、それをメンテすることにした。ところが、メンテしようにも、なんとテストを書いてなかった。多分当時はGemのテストを書く方法をあんまり知らなくてまぁ動くしいいや、みたいな感じでリリースしていたと思う。我ながらどうしようもない奴だ、と思い、ひとまずテストを書くことにした。
Railsに依存しているgemのテストの書き方については、公式のところにあるっちゃあるのだが、dummyアプリのRailsのバージョンが固定されるため、微妙。 imyouのときはcombustionというgemを使っていた。
このgemを使うことで、複数のバージョンを切り替えながらテストを書くことができるが、それについては今度また記事を書こうと思う。
一旦、モデルのテストだけ追加して、CircleCIでCIが回るように設定しておいた。バージョンアップする際にはgemをリリースする仕組みを追加しようとした。 ググったら自分のブログがヒットした。前にやってるじゃないか!?
とりあえずこれでいつでも複数バージョンのRailsやRubyでテストできるようになったので、ボチボチやっていこうと思う。