Sha256: 76d9dfda8368d48f048ba52aa1839514e6dbccc6e425563fb6f5fd0fa7602712

Contents?: true

Size: 1.09 KB

Versions: 3

Compression:

Stored size: 1.09 KB

Contents

require 'spec_helper'

describe Soulless do
  before(:each) do
    @dummy_class = DummyClass.new
  end
  
  it 'should validate name' do
    @dummy_class.name = nil
    @dummy_class.valid?.should == false
    @dummy_class.errors[:name].should_not be_empty
  end
  
  it 'should call #persist! when #save is called' do
    @dummy_class.save
    @dummy_class.saved.should be_true
  end
  
  it 'should call #persist! when #update_attributes is called' do
    @dummy_class.update_attributes(name: 'Biff')
    @dummy_class.saved.should be_true
  end
  
  it 'should not call #persist! if attributes are invalid' do
    @dummy_class.name = nil
    @dummy_class.save.should be_false
    @dummy_class.saved.should be_false
  end
  
  it '#update_attributes should update multiple attributes and then save' do
    @dummy_class.update_attributes(name: 'Yaw', email: 'yokoono@thebeatles.com')
    @dummy_class.name.should == 'Yaw'
    @dummy_class.email.should == 'yokoono@thebeatles.com'
    @dummy_class.saved?.should be_true
  end
  
  it '#persisted? should be false' do
    @dummy_class.persisted?.should be_false
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
soulless-0.4.1 spec/soulless_spec.rb
soulless-0.4.0 spec/soulless_spec.rb
soulless-0.3.0 spec/soulless_spec.rb