READMEではテストのところで使われてるけど、developmentでも設定しておくと、解消しないとどうしようもなくなるので良い。
READMEではテストのところで使われてるけど、developmentでも設定しておくと、解消しないとどうしようもなくなるので良い。
gitで日本語ファイル名を扱わざるを得ない事態になったので、これを打った。
一見問題なさそうだけど、良からぬことが起きないか様子見中。
thoughtbot/shoulda-matchers · GitHub は面倒臭いValidationなどのテストをお手軽に書ける素敵Gem。
許容文字列のチェックも簡単。
it { should allow_value('http://foo.com', 'http://bar.com/baz').for(:website_url) }
ただ、同じノリで以下のように書くとハマる。
('fiz'
しかチェックされない)
it { should_not allow_value('fiz', 'buz', 'bar').for(:website_url) }
正しくはこう。
it { should_not allow_value('fiz').for(:website_url) }
it { should_not allow_value('buz').for(:website_url) }
it { should_not allow_value('bar').for(:website_url) }
shoulda-matchers/allow_value_matcher.rb at master · thoughtbot/shoulda-matchers · GitHub
に書いてある。
ちゃんと読もう、自分…。
何も考えずに
expect(foo).to match(/#{bar}/)
みたいなテストを書いてたら、たまに落ちる。
なんでかな、と思ったら、bar
に正規表現の文字列が入ることがあった。
※ barはSecureRandom.urlsafe_base64
で生成した文字列
expect(foo).to match(Regexp.escape(bar))
で事なきを得た。
Regexp.escape
、忘れがちだ。気をつけよう。
auスマートバリュー mineに申し込んだので、普段はチェックしない携帯の請求額を確認していた。
すると、今月から急にオプション使用料が6000円から6500円に上がっている!?
明細を見ると…「テザリングオプション」と書いてある。
あー、確かにiPhone 5買った時に2年間無料で申し込んでるから、もう無料期間終わってるなぁ。
が、申し込んだのは2年前の9月なのに、なぜ今更?
テザリングオプションは一度解約したらもう1回無料にできたりとか、いろいろバグあったっぽいから、これもバグだろうか。
で、スマートバリュー適用にあたり、料金が見直されて、誤って無料になってたのが修正された、的な。
なんともリアクションしづらい事態である。