File: 060_http_date.t

package info (click to toggle)
perl 5.40.1-6
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 126,152 kB
  • sloc: ansic: 668,539; perl: 525,522; sh: 72,038; pascal: 6,925; xml: 2,428; yacc: 1,410; makefile: 1,191; cpp: 208; lisp: 1
file content (29 lines) | stat: -rw-r--r-- 759 bytes parent folder | download | duplicates (16)
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
#!perl

use strict;
use warnings;

use Test::More;
use HTTP::Tiny;

# test cases adapted from HTTP::Date
my $epoch = 760233600;

my @cases = (
  ['Thu, 03 Feb 1994 00:00:00 GMT',       'RFC822+RFC1123'],
  ['Thu,  3 Feb 1994 00:00:00 GMT',       'broken RFC822+RFC1123'],
  ['Thursday, 03-Feb-94 00:00:00 GMT',    'old rfc850 HTTP format'],
  ['Thursday, 03-Feb-1994 00:00:00 GMT',  'broken rfc850 HTTP format'],
  ['Thu Feb  3 00:00:00 GMT 1994',        'ctime format'],
  ['Thu Feb  3 00:00:00 1994',            'same as ctime, except no TZ'],
);

plan tests => 1 + @cases;

is(HTTP::Tiny->_http_date($epoch), $cases[0][0], "epoch -> RFC822/RFC1123");

for my $c ( @cases ) {
  is( HTTP::Tiny->_parse_http_date($c->[0]), $epoch, $c->[1] . " -> epoch");
}