describe Bluepill::System do describe :pid_alive? do it "should be true if process responds to zero signal" do Process.should_receive(:kill).with(0, 555).and_return(0) Bluepill::System.should be_pid_alive(555) end it "should be false if process throws exception on zero signal" do Process.should_receive(:kill).with(0, 555).and_raise(Errno::ESRCH) Bluepill::System.should_not be_pid_alive(555) end end describe :store do it "should be Hash" do Bluepill::System.store.should be_kind_of(Hash) end it "should return same Hash or every call" do Bluepill::System.store.should be_equal(Bluepill::System.store) end it "should store assigned pairs" do Bluepill::System.store[:somekey] = 10 Bluepill::System.store[:somekey].should be_eql(10) end end describe :reset_data do it 'should clear the #store' do Bluepill::System.store[:anotherkey] = Faker::Lorem.sentence Bluepill::System.reset_data Bluepill::System.store.should be_empty end end end