aboutsummaryrefslogtreecommitdiffstats
path: root/script/check-recent-requests-sent
blob: 351ffaaedf7a1b0c30ee75066211a407d388fb78 (plain)
1
2
3
4
5
6
7
8
#!/bin/bash

LOC=`dirname $0`

$LOC/runner 'EximLog.check_recent_requests_have_been_sent'
*/ .highlight .il { color: #0000DD; font-weight: bold } /* Literal.Number.Integer.Long */
require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')

describe DateQuarter do
    include DateQuarter

    describe :quarters_between do

        it 'returns all the quarters in a year' do
            # This is a bit of a convoluted spec, since we have to convert each
            # Time in to an Integer to make a reasonable comparison
            # See http://makandracards.com/makandra/1057-why-two-ruby-time-objects-are-not-equal-although-they-appear-to-be
            with_env_tz 'UTC' do
                start = Time.parse('2014-01-01')
                finish = Time.parse('2014-12-31')

                expected = [['Wed Jan 01 00:00:00 +0000 2014', 'Mon Mar 31 23:59:59 +0000 2014'],
                            ['Tue Apr 01 00:00:00 +0000 2014', 'Mon Jun 30 23:59:59 +0000 2014'],
                            ['Tue Jul 01 00:00:00 +0000 2014', 'Tue Sep 30 23:59:59 +0000 2014'],
                            ['Wed Oct 01 00:00:00 +0000 2014', 'Wed Dec 31 23:59:59 +0000 2014']].
                            map { |pair| [Time.parse(pair[0]).to_i, Time.parse(pair[1]).to_i] }

                quarters_between(start, finish).each_with_index do |pair, i|
                    pair.map!(&:to_i)
                    pair.should == expected[i]
                end
            end
        end

    end

end