--- test_config.pl 2002/06/16 18:11:14 1.1 +++ test_config.pl 2002/06/16 19:39:42 1.2 @@ -6,10 +6,13 @@ # check mps_header require "./search/config.pm"; + +my %mps; foreach (split(/\n/,$common::mps_header)) { if (/^F /) { - my (undef,$fld,undef) = split(/ /,$_,3); + my (undef,$fld,$desc,undef) = split(/ /,$_,4); die "fix 'common.pm' field $fld in mps_header is not in *SearchFieldNames" if (!grep(/$fld/,@main::NormalSearchFieldNames) && !grep(/$fld/,@main::AdvancedSearchFieldNames)); + $mps{$fld} = $desc; } } @@ -17,7 +20,17 @@ foreach (@default::FieldDisplayOrder) { die "fix 'search/config.pm' field $_ in FieldDisplayOrder is not in FieldNames" if (! $default::FieldNames{$_}); } +foreach (keys %default::FieldNames) { + die "fix 'search/config.pm' field $_ in FieldNames but not in FieldDisplayOrder" if (! grep(/$_/,@default::FieldDisplayOrder)); +} foreach (@default::Separator) { die "fix 'search/config.pm' field $_ in Separator is not in FieldNames" if (! $default::FieldNames{$_}); } +foreach (@main::NormalSearchFieldNames) { + die "fix 'search/config.pm' or 'common.pm' field $_ from NormalSearchFieldNames not in mps_header" if (! $mps{$_}); +} +foreach (@main::AdvancedSearchFieldNames) { + die "fix 'search/config.pm' or 'common.pm' field $_ from AdvancedSearchFieldNames not in mps_header" if (! $mps{$_}); +} +