Main Koha release repository https://koha-community.org
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

43 lines
1.4 KiB

#!/usr/bin/perl
use strict;
use warnings;
use Test::More tests => 6;
use Test::Warn;
use CGI qw ( -utf8 );
BEGIN {
use_ok('C4::Output');
}
my $query = CGI->new();
my $cookie;
my $output = 'foobarbaz';
{
local *STDOUT;
my $stdout;
open STDOUT, '>', \$stdout;
output_html_with_http_headers $query, $cookie, $output, undef, { force_no_caching => 1 };
like($stdout, qr/Cache-control: no-cache, no-store, max-age=0/, 'force_no_caching sets Cache-control as desired');
like($stdout, qr/Expires: /, 'force_no_caching sets an Expires header');
$stdout = '';
close STDOUT;
open STDOUT, '>', \$stdout;
output_html_with_http_headers $query, $cookie, $output, undef, undef;
like($stdout, qr/Cache-control: no-cache[^,]/, 'not using force_no_caching sets Cache-control as desired');
unlike($stdout, qr/Expires: /, 'force_no_caching does not set an Expires header');
}
subtest 'parametrized_url' => sub {
plan tests => 2;
my $url = 'https://somesite.com/search?q={TITLE}&author={AUTHOR}{SUFFIX}';
my $subs = { TITLE => '_title_', AUTHOR => undef, ISBN => '123456789' };
my $res;
warning_is { $res = C4::Output::parametrized_url( $url, $subs ) }
q{}, 'No warning expected on undefined author';
is( $res, 'https://somesite.com/search?q=_title_&author=',
'Title replaced, author empty and SUFFIX removed' );
};