10 my %compatibility_functions = map { ($_ => 1) } qw(address);
 
  12 sub read_default_columns {
 
  13   my $content   =  read_file('SL/DB/MetaSetup/Default.pm');
 
  14   my ($columns) =  $content =~ m{\n__PACKAGE__->meta->columns\((.+?)\n\)}s;
 
  15   $columns      =~ s/=>.*?\},|\n//g;
 
  17   $columns      =~ s/^\s+|\s+$//g;
 
  19   return map { ($_ => 1) } split m/ +/, $columns;
 
  22 sub test_file_content {
 
  24   my $content = read_file($file);
 
  26   while ($content =~ m{(?:INSTANCE_CONF\.|\$(?:main)?::instance_conf->)get_([a-z0-9_]+)}gi) {
 
  27     ok($default_columns{$1} || $compatibility_functions{$1}, "'get_${1}' is a valid method call on \$::instance_conf in $file");
 
  31 %default_columns = read_default_columns();
 
  32 my @files        = glob('*.pl');
 
  33 find(sub { push(@files, $File::Find::name) if $_ =~ /\.pm$/;   }, 'SL');
 
  34 find(sub { push(@files, $File::Find::name) if $_ =~ /\.pl$/;   },  qw(bin/mozilla sql/Pg-upgrade2 scripts));
 
  35 find(sub { push(@files, $File::Find::name) if $_ =~ /\.html$/; }, 'templates/webpages');
 
  37 test_file_content($_) for @files;