I have an event with start_time
and end_time
and want to check if the event is "in progress". That would be to check if today's date is in the range between the two dates.
How would you do this in a function?
In Ruby 1.9.2 ===
doesn't work, I get an error:
irb(main):019:0> (Time.now .. (Time.now+1)) === Time.now
TypeError: can't iterate from Time
from (irb):19:in `each'
from (irb):19:in `include?'
from (irb):19:in `include?'
from (irb):19:in `==='
from (irb):19
from /opt/ruby192/bin/irb:12:in `<main>'
Instead use #cover?
:
irb(main):002:0> (Time.now..Time.now+4).cover?(Time.now)
=> true
irb(main):003:0> (Time.now..Time.now+4).cover?(Time.now+10)
=> false