Projekt

Allgemein

Profil

« Zurück | Weiter » 

Revision 914c56f4

Von Sven Schöling vor mehr als 13 Jahren hinzugefügt

  • ID 914c56f424742187477b90604acfe7de93dbb5c0
  • Vorgänger 0279167d
  • Nachfolger 683f1b3d

Testscript um auf globale Variablen zu testen, die bei der Umstellung auf lx_office.conf vergessen wurden.

Unterschiede anzeigen:

t/structure/globals.t
1
#!/usr/bin/perl
2

  
3
use strict;
4
use lib 't';
5
use Support::Files;
6

  
7
my (@globals, $testcount);
8

  
9
BEGIN {
10
  @globals = qw(lxdebug auth myconfig form cgi lx_office_conf locale);
11
  $testcount = scalar(@Support::Files::testitems);
12
}
13

  
14
use Test::More tests => $testcount;
15

  
16
# Capture the TESTOUT from Test::More or Test::Builder for printing errors.
17
# This will handle verbosity for us automatically.
18
my $fh;
19
{
20
    local $^W = 0;  # Don't complain about non-existent filehandles
21
    if (-e \*Test::More::TESTOUT) {
22
        $fh = \*Test::More::TESTOUT;
23
    } elsif (-e \*Test::Builder::TESTOUT) {
24
        $fh = \*Test::Builder::TESTOUT;
25
    } else {
26
        $fh = \*STDOUT;
27
    }
28
}
29

  
30
my @testitems = @Support::Files::testitems;
31

  
32
# at last, here we actually run the test...
33
my $evilwordsregexp = join('|', @globals);
34

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

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

  
41
        my $found_word = '';
42

  
43
        while (my $file_line = <FILE>) { # and go through the file line by line
44
            if ($file_line =~ /([\$%@](?:main)?::(?!$evilwordsregexp)\w+\b)/i) { # found an evil word
45
                $found_word = $1;
46
                last;
47
            }
48
        }
49

  
50
        close (FILE);
51

  
52
        if ($found_word) {
53
            ok(0,"$file: found UNREGISTERED GLOBAL $found_word --WARNING");
54
        } else {
55
            ok(1,"$file does only contain registered globals");
56
        }
57
    } else {
58
        ok(0,"could not open $file for globals check --WARNING");
59
    }
60
}
61

  
62
exit 0;
63

  

Auch abrufbar als: Unified diff