Projekt

Allgemein

Profil

Herunterladen (2,5 KB) Statistiken
| Zweig: | Markierung: | Revision:
1d91e75c Sven Schöling
# -*- Mode: perl; indent-tabs-mode: nil -*-
#
# The contents of this file are subject to the Mozilla Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/MPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code are the Bugzilla Tests.
#
# The Initial Developer of the Original Code is Zach Lipton
# Portions created by Zach Lipton are
# Copyright (C) 2002 Zach Lipton. All
# Rights Reserved.
#
# Contributor(s): Zach Lipton <zach@zachlipton.com>


#################
#Bugzilla Test 6#
####Spelling#####

use lib 't';
use Support::Files;

BEGIN { # yes the indenting is off, deal with it
#add the words to check here:
@evilwords = qw(
82e09671 Sven Schöling
CONTANTS
1d91e75c Sven Schöling
anyways
arbitary
d88c278c Geoffrey Richardson
cofigur
78637a08 Sven Schöling
custemer
1d91e75c Sven Schöling
databasa
dependan
d88c278c Geoffrey Richardson
execept
1d91e75c Sven Schöling
existance
existant
fomr
71180454 Sven Schöling
invoce
82e09671 Sven Schöling
paramater
0054c778 Sven Schöling
pirce
cc8e9951 Bernd Bleßmann
postition
0054c778 Sven Schöling
primt
71180454 Sven Schöling
puchase
82e09671 Sven Schöling
puhs
sekf
32eacf36 Geoffrey Richardson
seperat
82e09671 Sven Schöling
sucess
varsion
921420df Geoffrey Richardson
wether
1d91e75c Sven Schöling
);

0054c778 Sven Schöling
$testcount = scalar(@Support::Files::files);
1d91e75c Sven Schöling
}

use Test::More tests => $testcount;

# Capture the TESTOUT from Test::More or Test::Builder for printing errors.
# This will handle verbosity for us automatically.
my $fh;
{
local $^W = 0; # Don't complain about non-existent filehandles
if (-e \*Test::More::TESTOUT) {
$fh = \*Test::More::TESTOUT;
} elsif (-e \*Test::Builder::TESTOUT) {
$fh = \*Test::Builder::TESTOUT;
} else {
$fh = \*STDOUT;
}
}

0054c778 Sven Schöling
my @testitems = @Support::Files::files;
1d91e75c Sven Schöling
# at last, here we actually run the test...
my $evilwordsregexp = join('|', @evilwords);

foreach my $file (@testitems) {
$file =~ s/\s.*$//; # nuke everything after the first space (#comment)
next if (!$file); # skip null entries

if (open (FILE, $file)) { # open the file for reading

my $found_word = '';

while (my $file_line = <FILE>) { # and go through the file line by line
if ($file_line =~ /($evilwordsregexp)/i) { # found an evil word
$found_word = $1;
last;
}
}

close (FILE);

if ($found_word) {
ok(0,"$file: found SPELLING ERROR $found_word --WARNING");
} else {
ok(1,"$file does not contain registered spelling errors");
}
} else {
ok(0,"could not open $file for spellcheck --WARNING");
}
}

exit 0;