davical/testing/normalise_result
2006-12-06 15:38:25 +13:00

32 lines
801 B
Perl
Executable File

#!/usr/bin/perl -w
#
# Given a result on stdin, try and normalise some
# elements of it (such as HTTP Header dates) so that we can
# simply compare it with other results
#
use strict;
while( <STDIN> ) {
/^Date: [SMTWF][a-z]{2}, [0-9]{1,2} [JFMAJSOND][a-z]+ 20[0-9]{2} [012][0-9]:[0-5][0-9]:[0-5][0-9] GMT\r$/ && do {
$_ = "Date: Dow, 01 Jan 2000 00:00:00 GMT\r\n";
};
/^Server: Apache\/[0-9.]+/ && do {
$_ = "";
};
/^X-Powered-By: PHP\/[0-9.]+/ && do {
$_ = "";
};
/^X-RSCDS-Version: RSCDS\/[0-9.]+\.[0-9.]+\.[0-9.]+; DB\/[0-9.]+\.[0-9.]+\.[0-9.]+/ && do {
$_ = "";
};
# Fix up any opaquelocktokens to something regular
s/opaquelocktoken:[[:xdigit:]]{8}-([[:xdigit:]]{4}-){3}[[:xdigit:]]{12}/opaquelocktoken:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/;
print;
}