Skip to content

Commit

Permalink
fix warnings in Mojo::Cookie::Response
Browse files Browse the repository at this point in the history
  • Loading branch information
kraih committed Nov 30, 2015
1 parent 0ac5726 commit c6d00ca
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 5 deletions.
1 change: 1 addition & 0 deletions Changes
@@ -1,5 +1,6 @@

6.35 2015-12-02
- Fixed warnings in Mojo::Cookie::Response.

6.34 2015-12-01
- Improved Hypnotoad to report problems that have occured during the creation
Expand Down
2 changes: 1 addition & 1 deletion lib/Mojo/Cookie/Response.pm
Expand Up @@ -20,7 +20,7 @@ sub parse {
while (my ($name, $value) = splice @$pairs, 0, 2) {
next unless $ATTRS{my $attr = lc $name};
$value =~ s/^\.// if $attr eq 'domain';
$value = Mojo::Date->new($value)->epoch if $attr eq 'expires';
$value = Mojo::Date->new($value // '')->epoch if $attr eq 'expires';
$value = 1 if $attr eq 'secure' || $attr eq 'httponly';
$cookies[-1]{$attr eq 'max-age' ? 'max_age' : $attr} = $value;
}
Expand Down
15 changes: 11 additions & 4 deletions t/mojo/cookie.t
Expand Up @@ -374,12 +374,19 @@ is $cookies->[1], undef, 'no more cookies';

# Parse response cookie with broken Expires value
$cookies = Mojo::Cookie::Response->parse('foo="ba r"; Expires=Th');
is $cookies->[0]->name, 'foo', 'right name';
is $cookies->[0]->value, 'ba r', 'right value';
is $cookies->[0]->name, 'foo', 'right name';
is $cookies->[0]->value, 'ba r', 'right value';
is $cookies->[0]->expires, undef, 'no expires value';
is $cookies->[1], undef, 'no more cookies';
$cookies = Mojo::Cookie::Response->parse('foo="ba r"; Expires=Th; Path=/test');
is $cookies->[0]->name, 'foo', 'right name';
is $cookies->[0]->value, 'ba r', 'right value';
is $cookies->[0]->name, 'foo', 'right name';
is $cookies->[0]->value, 'ba r', 'right value';
is $cookies->[0]->expires, undef, 'no expires value';
is $cookies->[1], undef, 'no more cookies';
$cookies = Mojo::Cookie::Response->parse('foo="ba r"; Expires; Path=/test');
is $cookies->[0]->name, 'foo', 'right name';
is $cookies->[0]->value, 'ba r', 'right value';
is $cookies->[0]->expires, undef, 'no expires value';
is $cookies->[1], undef, 'no more cookies';

# Response cookie with Max-Age 0 and Expires 0
Expand Down

0 comments on commit c6d00ca

Please sign in to comment.