Sha256: 1c0b13552a576befa8dc32bbd18215d06990ddf7fdd337a26e8070f1e59b15dd

Contents?: true

Size: 1.46 KB

Versions: 6

Compression:

Stored size: 1.46 KB

Contents

require "#{File.dirname(__FILE__)}/../../../spec_helper"

describe Position do
  it 'create position' do
    expect do
      FactoryGirl.create(:position)
    end.to change(Position, :count).by(1)
  end

  context 'Validation with scope and association' do
    it 'is not valid if exists time slot which have position with same person' do
      time_slot1 = FactoryGirl.create(:time_slot, starts_at: '2012-10-11'.to_date, ends_at: '2012-10-13'.to_date)
      time_slot2 = FactoryGirl.create(:time_slot, starts_at: '2012-10-12'.to_date, ends_at: '2012-10-13'.to_date)
      user = FactoryGirl.create(:user)
      position1 = FactoryGirl.create(:position, time_slot: time_slot1, user: user)
      position2 = FactoryGirl.build(:position, time_slot: time_slot2, user: user)
      expect(position2).not_to be_valid
      expect(position2.errors[:base]).not_to be_empty
    end

    it 'is be valid if exists time slot which have position with same person' do
      time_slot1 = FactoryGirl.create(:time_slot, starts_at: '2012-10-11'.to_date, ends_at: '2012-10-13'.to_date)
      time_slot2 = FactoryGirl.create(:time_slot, starts_at: '2012-10-14'.to_date, ends_at: '2012-10-15'.to_date)
      user = FactoryGirl.create(:user)
      position1 = FactoryGirl.create(:position, time_slot: time_slot1, user: user)
      position2 = FactoryGirl.build(:position, time_slot: time_slot2, user: user)
      expect(position2).to be_valid
      expect(position2.errors[:base]).to be_empty
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
validates_overlap-1.0.0 spec/dummy/spec/models/position_spec.rb
validates_overlap-0.8.6 spec/dummy/spec/models/position_spec.rb
validates_overlap-0.8.5 spec/dummy/spec/models/position_spec.rb
validates_overlap-0.8.4 spec/dummy/spec/models/position_spec.rb
validates_overlap-0.8.2 spec/dummy/spec/models/position_spec.rb
validates_overlap-0.8.1 spec/dummy/spec/models/position_spec.rb