4 use DateTime::Format::ISO8601;
5 use Test::More tests => 10;
8 use_ok( 'OpenSRF::Utils' );
11 is (OpenSRF::Utils::interval_to_seconds('1 second'), 1);
12 is (OpenSRF::Utils::interval_to_seconds('1 minute'), 60);
13 is (OpenSRF::Utils::interval_to_seconds('1 hour'), 3600);
14 is (OpenSRF::Utils::interval_to_seconds('1 day'), 86400);
15 is (OpenSRF::Utils::interval_to_seconds('1 week'), 604800);
16 is (OpenSRF::Utils::interval_to_seconds('1 month'), 2628000);
18 # With context, no DST change
19 is (OpenSRF::Utils::interval_to_seconds('1 month',
20 DateTime::Format::ISO8601->new->parse_datetime('2017-02-04T23:59:59-04')), 2419200);
22 # With context, with DST change
23 is (OpenSRF::Utils::interval_to_seconds('1 month',
24 DateTime::Format::ISO8601->new->parse_datetime('2017-02-14T23:59:59-04')), 2415600);
26 is (OpenSRF::Utils::interval_to_seconds('1 year'), 31536000);
27 is (OpenSRF::Utils::interval_to_seconds('1 year 1 second'), 31536001);