require File.dirname(__FILE__) + '/../spec_helper'
include AuthenticatedTestHelper
describe Event do
fixtures :users, :events
before(:each) do
@event = Event.new
end

it "should automatically create end time based on start time" do
event = create_event(:start => 5.days.from_now, :length => 2.hours)
event.should be_valid
event.end.should == event.start + 2.hours
end

it "should have a length" do
event = create_event(:start => 5.days.from_now, :length => 2.hours)
event.length.should == 2.hours
end

it "should get proper events" do
Event.left_in(Date.today, users(:aaron)).should == 15
end

it "should go down one event if its for next month" do
date = Date.today + 1.month
create_event(:start => date, :user => User.find(1))
Event.left_in(date, users(:aaron)).should == 14
end
end

private
def create_event (opts = {})
return Event.create({
:name => "foobar",
:description => "tadaaa",
:start => 5.days.from_now,
:length => 2.hours
}.merge(opts))
end