- my $res;
- $res = $cb->(GET('/test/?q=%C3%86var'));
- my $html = $res->content;
- like($html, qr/<title>Ævar - /, 'HTML escaped in title');
- my @res = ($html =~ m/\?q=(.+var)\b/g);
- ok(scalar(@res), 'saw query strings');
- my %uniq = map { $_ => 1 } @res;
- is(1, scalar keys %uniq, 'all query values identical in HTML');
- is('%C3%86var', (keys %uniq)[0], 'matches original query');
- ok(index($html, 'by Ævar Arnfjörð Bjarmason') >= 0,
- "displayed Ævar's name properly in HTML");
-
- like($html, qr/download mbox\.gz: .*?"full threads"/s,
- '"full threads" download option shown');
+ my ($html, $res);
+ my $approxidate = 'now';
+ for my $req ('/test/?q=%C3%86var', '/test/?q=%25C3%2586var') {
+ $res = $cb->(GET($req."+d:..$approxidate"));
+ $html = $res->content;
+ like($html, qr/<title>Ævar d:\.\.\Q$approxidate\E/,
+ 'HTML escaped in title, "d:..$APPROXIDATE" preserved');
+ my @res = ($html =~ m/\?q=(.+var)\+d:\.\.\Q$approxidate\E/g);
+ ok(scalar(@res), 'saw query strings');
+ my %uniq = map { $_ => 1 } @res;
+ is(1, scalar keys %uniq, 'all query values identical in HTML');
+ is('%C3%86var', (keys %uniq)[0], 'matches original query');
+ ok(index($html, 'by Ævar Arnfjörð Bjarmason')
+ >= 0, "displayed Ævar's name properly in HTML");
+ like($html, qr/download mbox\.gz: .*?"full threads"/s,
+ '"full threads" download option shown');
+ }
+ like($html, qr/Initial query\b.*?returned no.results, used:.*instead/s,
+ 'noted retry on double-escaped query {-uxs_retried}');