#use Carp::Always;
$SIG{__DIE__} = sub { Carp::confess(@_) };
-my $dump = "$ENV{'CAFTEST_CAF'}/tests/tmp";
+my $dump = $ENV{'CAFTEST_TMP'} // 'tests/tmp';
+
+my $q = CGI->new;
+
+my $url = $q->url();
+
+$url =~ s{^\Qhttp://localhost/\E}{$ENV{CAFTEST_URLBASE}}
+ if $ENV{'CAFTEST_URLBASE'};
my @verifier_params =(
username_password_error => sub {
dir => $dump,
srcdump_filter_cwd => 0,
debug => sub { print STDERR "DEBUG ", @_[2..@_-1]; },
- );
+ get_url => sub { return $url },
+);
push @verifier_params, (
- get_url => sub { return $ENV{'CAFTEST_URL'}; },
- ) if $ENV{'CAFTEST_URL'};
+ srcdump_prepare => sub { },
+ )
+ if $ENV{'CAFTEST_NOSRCDUMP'};
my $verifier = CGI::Auth::Flexible->new_verifier(@verifier_params);
END { $verifier->disconnect() if $verifier; }
-my $q = CGI->new;
-
my $authreq = $verifier->new_request($q);
$authreq->check_ok() or exit;
my $cookie = $authreq->secret_cookie();
-my $url = $q->url();
my $hiddenhtml = $authreq->secret_hidden_html();
print <<END;
Set-Cookie: $cookie
<html><head><title>TITLE</title></head>
-<body><h1>H1</h1>
-<h1>again</h1>
-
-<h1>info<h1>
-<pre>
+<body><h1>ACCESSGRANTED</h1>
END
my $newurl = $authreq->url_with_query_params($authreq->chain_params());
my $newurl_esc = escapeHTML($newurl);
-my $txt = Data::Dumper->Dump([$authreq->get_username(), $authreq->mutate_ok(),
+my $incrurl = $authreq->url_with_query_params
+ ({ counter => [ ($q->param('counter')//0) + 1 ]});
+my $incrurl_esc = escapeHTML($incrurl);
+
+my @critters = qw(sponges worms);
+
+foreach my $make (@critters) {
+ my $param = $q->param("test_cgi_$make");
+ if (!$param) {
+ print "NO-$make\n";
+ } else {
+ $authreq->check_mutate();
+ print "MAKING-$make\n";
+ }
+}
+
+print <<END;
+<h1>info<h1>
+<pre>
+END
+
+my $txt = Data::Dumper->Dump([$authreq->get_username(),
$q->path_info(),
$authreq->chain_params(),
scalar $q->Vars()],
- [qw(username mutate_ok path
+ [qw(username path
authreq->chain_params() cgi->params())]);
foreach my $l (split /\n/, $txt) {
print escapeHTML($l),"\n";
print <<END;
</pre>
-<a href="$newurl_esc">$newurl_esc</a>
+self=<a href="$newurl_esc">$newurl_esc</a>
+increment=<a href="$incrurl_esc">$incrurl_esc</a>
<form method="POST" action="$url">
$hiddenhtml
-<input type="submit" name="test_cgi_sponges" value="Make sponges">
-<input type="submit" name="test_cgi_worms" value="Make worms">
+END
+
+print <<END foreach @critters;
+<input type="submit" name="test_cgi_$_" value="Make $_">
+END
+
+print <<END
<input type="submit" name="caf_logout" value="Logout">
</form>
<form method="POST" action="$url/extra">