| #!perl |
| # Before `make install' is performed this script should be runnable with |
| # `make test'. After `make install' it should work as `perl test.pl' |
| |
| ######################### We start with some black magic to print on failure. |
| |
| # Change 1..1 below to 1..last_test_to_print . |
| # (It may become useful if the test is moved to ./t subdirectory.) |
| |
| eval { require Apache::Constants::Exports }; |
| Apache::Constants->export(qw(HTTP_MULTIPLE_CHOICES)); |
| use Apache::Constants qw(MODULE_MAGIC_NUMBER); |
| use strict qw(vars); |
| shift->send_http_header("text/plain"); |
| |
| my $version = SERVER_VERSION; |
| |
| if($version =~ /1\.1\.\d/) { |
| print "1..1\nok 1\n"; |
| print "skipping tests against $version\n"; |
| die ""; |
| } |
| |
| my(%SEEN, @export, $key, $val); |
| while(($key,$val) = each %Apache::Constants::EXPORT_TAGS) { |
| #warn "importing tag $key\n"; |
| Apache::Constants->import(":$key"); |
| push @export, grep {!$SEEN{$_}++} @$val; |
| } |
| |
| push @export, grep {!$SEEN{$_}++} @Apache::Constants::EXPORT; |
| for my $sym (@Apache::Constants::EXPORT_OK) { |
| next if $SEEN{$sym}++; |
| Apache::Constants->import($sym) unless defined &$sym; |
| } |
| |
| #skip some 1.3 stuff that 1.2 didn't have |
| my %skip = map { $_,1 } qw(DONE REMOTE_DOUBLE_REV DECLINE_CMD DIR_MAGIC_TYPE |
| SERVER_VERSION SERVER_SUBVERSION SERVER_BUILT); |
| |
| #if(MODULE_MAGIC_NUMBER < 19981108) { |
| if(1) { |
| for(qw(M_PATCH M_PROPFIND M_PROPPATCH M_MKCOL M_COPY |
| M_MOVE M_LOCK M_UNLOCK)) |
| { |
| $skip{$_}++; |
| } |
| } |
| |
| my $tests = (1 + @export) - keys %skip; |
| $tests += 1; #extras |
| |
| print "1..$tests\n"; |
| #$loaded = 1; |
| print "ok 1\n"; |
| my $ix = 2; |
| |
| my($sym); |
| |
| |
| for $sym (sort @export) { |
| next if $skip{$sym}; |
| my $val = &$sym; |
| my $name = ""; |
| eval { |
| $name = Apache::Constants->name($val); |
| }; |
| print defined $val ? "" : "not ", "ok $ix #($name|$sym: $val)\n"; |
| $ix++; |
| last if $ix >= $tests; |
| } |
| |
| my $added = HTTP_MULTIPLE_CHOICES(); |
| print defined $added ? "" : "not ", "ok $ix\n"; |
| |
| ######################### End of black magic. |
| |
| # Insert your test code below (better if it prints "ok 13" |
| # (correspondingly "not ok 13") depending on the success of chunk 13 |
| # of the test code): |
| |
| |