Ruby Weekly #552: 日本語サマリー
Highlights
RSpec 作成者が gem の経歴を振り返った。
- 2001 年に TDD を教えてた仕事がそもそものきっかけ。
- XUnit 表記は分かりづらかった(actual・expected 引数の順番が直感的じゃなかった)から、授業で使える DSL 作った。
- Bob Martin 先生の名言「Testing is about specification not verification」をもとに RSpec と名付けた。
- 実務では
Test::Unit
使うべきだと信じてたから gem 化しなかった。 - RubyConf 2005 にやっと gem としてリリースしてみた。意外とバズった。
- 2006 年に David Chelimsky 先生がコントリビューターとして参戦。
Articles & Tutorials
Some Useful Active Support Features You May Not Have Heard Of
知られざる ActiveSupport 便利機能。
Callbacks
Configurable
CurrentAttributes
MessageVerifier
MessageEncryptor
TDD の際は高レベルテストから書け、というアドバイス。
多数 Sidekiq ジョブの同時実行防止方法。
- フラグで制御
- キューにジョブが積まれてるか確認。
- Sidekiq Enterprise に課金して
sidekiq_options(unique_for:)
設定 - sidekiq-unique-jobs gem(一部 Lua 言語で実装されてる)
ActiveJob の場合は
役に立つ git 裏技。
- 空コミット
- ログを読みやすくする
- 不要なローカルブランチを捨てる
git rebase
などでうっかり消したコミット復元- 部分的
git add
git bisect
自動化