X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ian/git?a=blobdiff_plain;f=tests%2Fcgi;h=da7b2f72aa6ee3dbe5483e939cc15f49300b6d78;hb=af1635af0c27a27c20e95cc3cbefb55defd363cc;hp=6af24138ed4ab2f4d33f92c801d8056ffd284001;hpb=4e743c20f98b7ae5b8170b65c73d1ba60cb183b1;p=cgi-auth-flexible.git diff --git a/tests/cgi b/tests/cgi index 6af2413..da7b2f7 100755 --- a/tests/cgi +++ b/tests/cgi @@ -12,6 +12,13 @@ $SIG{__DIE__} = sub { Carp::confess(@_) }; my $dump = "$ENV{'CAFTEST_CAF'}/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 { my ($c,$r,$u,$p)=@_; @@ -22,24 +29,18 @@ my @verifier_params =( dir => $dump, srcdump_filter_cwd => 0, debug => sub { print STDERR "DEBUG ", @_[2..@_-1]; }, - ); - -push @verifier_params, ( - get_url => sub { return $ENV{'CAFTEST_URL'}; }, - ) if $ENV{'CAFTEST_URL'}; + get_url => sub { return $url }, +); 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 <TITLE -

H1

-

again

- -

info

-
+

ACCESSGRANTED

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 <info

+
+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";
@@ -69,11 +87,17 @@ foreach my $l (split /\n/, $txt) {
 
 print <
-$newurl_esc
+self=$newurl_esc
+increment=$incrurl_esc
 
$hiddenhtml - - +END + +print < +END + +print <