RSS Git Download  Clone
Raw Blame History
package App::Test;

use App::Class;
use Exporter 'import';
use HTTP::Request::Common;

our @EXPORT = qw(process_request get_next_location);

my $t; # set in initialise()

sub initialise ($jar, $test) {
    $t->{cookie_jar} = $jar;
    $t->{plack_test} = $test;
}

sub process_request ($req) {
	$t->{cookie_jar}->add_cookie_header($req);
    my $res = $t->{plack_test}->request($req);
    $t->{cookie_jar}->extract_cookies($res);
    return $res;
}

sub get_next_location ($res) {
    my $location = $res->header('Location');
    my $next_url = GET $location;
    my $next_res = process_request($next_url);
    return $next_res;
}

1;