かもメモ

自分の落ちた落とし穴に何度も落ちる人のメモ帳

Ruby on Rails

Ruby Class を case 式で判定しようとしてハマったメモ。

Ruby は深く触ってないので初学者マンです。 Rails の複数のクラスで共通して使われている Decorator 内で case 式でクラスを判定して返す値を変えていた部分で self.class.name の文字列で判定するのではなく self.class で判定すればいいよ。とアドバイス…

RSpec include_context って何

プロジェクトの RSpec をみていて、 include_context 〜 という文章があり共通処理をしているっぽいけど、どういうものなのか知らなかったので調べたメモ include_context ref. shared context - Example groups - RSpec Core - RSpec - Relish shared_conte…

RSpec Capybara アクセスしてるページのURLを知りたい。

Capybara で visit してアクセスしてるページの情報をチェックしたい current_host を使う current_url ⇒ String Fully qualified URL of the current page. ref. Class: Capybara::Session — Documentation for jnicklas/capybara (master) 他にも色々ある…

RSpec メソッドの有無をテストしたい

メソッドがある事をテスト let(:foo) { create :foo } it 'foo has #method' do expect(foo).to respond_to(:method) end 又は expect(foo.respond_to?(:method)).to be true メソッドがない事をテスト let(:foo) { create :foo } it 'foo has #method' do e…

Ruby キーワード引数で見通しを良くするゾ

Ruby には 2.0 から導入されたキーワード引数という引数の値を変数名に割り当てメソッドを呼び出す方法があるそうです。(Ruby 2.1 からデフォルト値のない Requiredキーワード引数 が使えるようになった) キーワード引数のメリット メソッドに渡している引…

RSpec Rails Decorator で undefined method にハマる

やっはろー!RubyもRailsもほぼ初心者マン即実戦で四苦八苦してる日々です。 ActiveDecorator が使われている Rails のプロジェクトで decorator のテストを RSpec で書いていた所、decorator にあるはずのメソッドが undefined method になりテストがコケて…

RubyをアプデートしてRails 5 をインストール

1.Homebrew 自体をアップデート $ brew update 2. rbenv, ruby-build をアップデート $ brew upgrade rbenv ruby-build 3. rbenv で Ruby をアップデート インストール可能なRubyのバージョンを表示 $ rbenv install -l Ruby をインストール $ rbenv install…

Ruby rbenvで使ってるRubyのバージョンを変更するぞぃ

1. Homebrewをアップデード $ brew update 2. ruby-build をアップグレード rbenvでインストールできるリストを最新にするために必要っぽい $ brew upgrade ruby-build 3. rbenvで違うバージョンのRubyをインストール インストールできるリストを表示 $ rben…

Ruby Mac OS10.10にrbenvでRubyをインストールする

下準備 1. Xcodeをインストールする App StoreからXcodeをインストールする。 2. Command Line Tools for Xcodeをインストールする Xcodeを起動 メニューからXcode>Open Developer Tool>More Developer Toolsを選択。 ブラウザのページが開くのでCommand Lin…