File: 02interval.t

package info (click to toggle)
libdatetime-event-ical-perl 0.13-2
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, forky, sid, trixie
  • size: 220 kB
  • sloc: perl: 1,767; makefile: 2
file content (38 lines) | stat: -rw-r--r-- 1,043 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/bin/perl -w

use strict;

use Test::More tests => 1;

use DateTime;
use DateTime::Event::ICal;

{
    my $dt1 = new DateTime( year => 2003, month => 4, day => 28,
                           hour => 12, minute => 10, second => 45,
                           # nanosecond => 123456,
                           time_zone => 'UTC' );

    my $dt2 = new DateTime( year => 2003, month => 5, day => 01,
                           hour => 12, minute => 10, second => 45,
                           # nanosecond => 123456,
                           time_zone => 'UTC' );

    my ( $set, @dt, $r );

    # MINUTELY
    $set = DateTime::Event::ICal->recur( 
       freq => 'minutely',
       dtstart => $dt1,
       interval => 3,
       count => 3 );

    @dt = $set->as_list( start => $dt1,
                         end => $dt1->clone->add( minutes => 30 ) );
    $r = join(' ', map { $_->datetime } @dt);
    is( $r,
        '2003-04-28T12:10:45 2003-04-28T12:13:45 2003-04-28T12:16:45',
        "minutely, dtstart, dtend, interval, count" );

}