Sha256: 292cccefef7d7aff34ae1a090518d476c240a1b826cbb7fccec5338356bca8a5

Contents?: true

Size: 1.35 KB

Versions: 4

Compression:

Stored size: 1.35 KB

Contents

require 'spec_helper'

describe Reservation::Schedule::Interval do
  before { Time.zone = "Europe/Paris" }

  let(:start)  { time("2013-04-30T18:30:00") }
  let(:finish) { time("2013-04-30T22:30:00") }
  let(:event)  { Reservation::Event.new :start => start, :finish => finish }

  it "should match when start and finish match" do
    hm1 = Reservation::Schedule::HourMinute.new 18, 30
    hm2 = Reservation::Schedule::HourMinute.new 22, 30
    interval = Reservation::Schedule::Interval.new hm1, hm2
    interval.matches?(event).should be_true
  end

  it "should not match when start differs" do
    hm1 = Reservation::Schedule::HourMinute.new 14, 00
    hm2 = Reservation::Schedule::HourMinute.new 22, 30
    interval = Reservation::Schedule::Interval.new hm1, hm2
    interval.matches?(event).should be_false
  end

  it "should not match when finish differs" do
    hm1 = Reservation::Schedule::HourMinute.new 18, 30
    hm2 = Reservation::Schedule::HourMinute.new 23, 00
    interval = Reservation::Schedule::Interval.new hm1, hm2
    interval.matches?(event).should be_false
  end

  it "should generate a new Event with its start and finish times on the given date" do
    interval = make_interval "1830", "2300"
    event = interval.generate date('2013-07-12')
    event.start.pretty.should  == "20130712T1830"
    event.finish.pretty.should == "20130712T2300"
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
reservation-0.0.5 spec/models/schedule/interval_spec.rb
reservation-0.0.4 spec/models/schedule/interval_spec.rb
reservation-0.0.3 spec/models/schedule/interval_spec.rb
reservation-0.0.2 spec/models/schedule/interval_spec.rb