Commit 52b2954e authored by zach%zachlipton.com's avatar zach%zachlipton.com

Fix for bug 166481 ("Spellcheck is borked"). Part one of this fix fixes

the spelling errors so tinderbox doesn't barf, part two fixes t/006spellcheck.t and adds some more new words to check for. Part 1 patch by myself, r=timeless Part 2 patch by MattyT. r=zach (myself) a=justdave
parent d0932ae8
...@@ -146,7 +146,7 @@ I<Bugzilla::CGI> also includes additional functions. ...@@ -146,7 +146,7 @@ I<Bugzilla::CGI> also includes additional functions.
=item C<canonicalise_query(@exclude)> =item C<canonicalise_query(@exclude)>
This returns a sorted string of the paramaters, suitable for use in a url. This returns a sorted string of the parameters, suitable for use in a url.
Values in C<@exclude> are not included in the result. Values in C<@exclude> are not included in the result.
=back =back
...@@ -72,7 +72,7 @@ sub check_shadowdb { ...@@ -72,7 +72,7 @@ sub check_shadowdb {
return "You need to specify a host when using a shadow database"; return "You need to specify a host when using a shadow database";
} }
# Can't test existance of this because ConnectToDatabase uses the param, # Can't test existence of this because ConnectToDatabase uses the param,
# but we can't set this before testing.... # but we can't set this before testing....
# This can really only be fixed after we can use the DBI more openly # This can really only be fixed after we can use the DBI more openly
return ""; return "";
...@@ -294,7 +294,7 @@ sub check_netmask { ...@@ -294,7 +294,7 @@ sub check_netmask {
'This is done so that long slow read-only operations can be used ' . 'This is done so that long slow read-only operations can be used ' .
'against this db, and not lock up things for everyone else. This ' . 'against this db, and not lock up things for everyone else. This ' .
'database is on the <tt>shadowdbhost</tt>, and must exist. ' . 'database is on the <tt>shadowdbhost</tt>, and must exist. ' .
'Bugzilla does not update it, if you use this paramater, then ' . 'Bugzilla does not update it, if you use this parameter, then ' .
'you need to set up replication for your database', 'you need to set up replication for your database',
type => 't', type => 't',
default => '', default => '',
......
...@@ -231,9 +231,9 @@ if ($action eq 'changeform') { ...@@ -231,9 +231,9 @@ if ($action eq 'changeform') {
print "<TR><TD ALIGN=CENTER>|</TD><TD COLSPAN=3>Members of these groups are included in this group</TD></TR>"; print "<TR><TD ALIGN=CENTER>|</TD><TD COLSPAN=3>Members of these groups are included in this group</TD></TR>";
print "<TR><TD ALIGN=CENTER>|</TD><TD ALIGN=CENTER>|</TD><TD COLSPAN=2></TD><TR>"; print "<TR><TD ALIGN=CENTER>|</TD><TD ALIGN=CENTER>|</TD><TD COLSPAN=2></TD><TR>";
# For each group, we use left joins to establish the existance of # For each group, we use left joins to establish the existence of
# a record making that group a member of this group # a record making that group a member of this group
# and the existance of a record permitting that group to bless # and the existence of a record permitting that group to bless
# this one # this one
SendSQL("SELECT groups.id, groups.name, groups.description," . SendSQL("SELECT groups.id, groups.name, groups.description," .
" group_group_map.member_id IS NOT NULL," . " group_group_map.member_id IS NOT NULL," .
......
...@@ -32,6 +32,9 @@ BEGIN { # yes the indenting is off, deal with it ...@@ -32,6 +32,9 @@ BEGIN { # yes the indenting is off, deal with it
@evilwords = qw( @evilwords = qw(
databasa databasa
arbitary arbitary
paramater
existance
existant
); );
$testcount = scalar(@Support::Files::testitems) * scalar(@evilwords); $testcount = scalar(@Support::Files::testitems) * scalar(@evilwords);
...@@ -60,21 +63,32 @@ my @testitems = @Support::Files::testitems; ...@@ -60,21 +63,32 @@ my @testitems = @Support::Files::testitems;
foreach my $file (@testitems) { foreach my $file (@testitems) {
$file =~ s/\s.*$//; # nuke everything after the first space (#comment) $file =~ s/\s.*$//; # nuke everything after the first space (#comment)
next if (!$file); # skip null entries next if (!$file); # skip null entries
if (! open (FILE, $file)) { # open the file for reading
ok(0,"could not open $file for spellcheck --WARNING"); foreach my $word (@evilwords) { # go through the evilwords
next;
if (open (FILE, $file)) { # open the file for reading
my $found_word = 0;
while (my $file_line = <FILE>) { # and go through the file line by line
if ($file_line =~ /$word/i) { # found an evil word
$found_word = 1;
last;
}
}
if ($found_word) {
ok(0,"$file: found SPELLING ERROR $word --WARNING");
}
else {
ok(1,"$file does not contain the spelling error $word");
}
close (FILE);
}
else {
ok(0,"could not open $file for spellcheck --WARNING");
}
} }
foreach my $word (@evilwords) { # go through the evilwords
while (my $file_line = <FILE>) { # and go through the file line by line
if ($file_line =~ /$word/i) { # found an evil word
$found_word = 1;
last;
}
}
if ($found_word eq 1) { ok(0,"$file: found SPELLING ERROR $word --WARNING") }
if ($found_word ne 1) { ok(1,"$file does not contain the spelling error $word") }
$found_word = 0;
}
} }
exit 0; exit 0;
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment