Merge branch 'master' of git@lx-office.linet-services.de:lx-office-erp
authorSven Schöling <s.schoeling@linet-services.de>
Fri, 21 Jan 2011 10:42:32 +0000 (11:42 +0100)
committerSven Schöling <s.schoeling@linet-services.de>
Fri, 21 Jan 2011 10:42:32 +0000 (11:42 +0100)
SL/Dispatcher.pm
t/007broken_links.t [new file with mode: 0644]

index da7ffef..2f23952 100644 (file)
@@ -5,7 +5,6 @@ use strict;
 BEGIN {
   unshift @INC, "modules/override"; # Use our own versions of various modules (e.g. YAML).
   push    @INC, "modules/fallback"; # Only use our own versions of modules if there's no system version.
-  push    @INC, "SL";               # FCGI won't find modules that are not properly named. Help it by inclduging SL
 }
 
 use CGI qw( -no_xhtml);
@@ -15,8 +14,8 @@ use SL::Auth;
 use SL::LXDebug;
 use SL::Locale;
 use SL::Common;
+use SL::Form;
 use SL::Helper::DateTime;
-use Form;
 use List::Util qw(first);
 use File::Basename;
 
diff --git a/t/007broken_links.t b/t/007broken_links.t
new file mode 100644 (file)
index 0000000..ee0021e
--- /dev/null
@@ -0,0 +1,42 @@
+#!/usr/bin/perl
+
+# adapted from Michael Stevens' test script posted in p5p
+# in the thread "broken links in blead" from 01/19/2011
+#
+# caveats: wikipedia seems to have crawler protection and
+# will give 403 forbidden unless the user agent is faked.
+
+use strict;
+use File::Find;
+use LWP::Simple;
+use Test::More tests => 1;
+use URI::Find;
+
+my @fails;
+
+my $finder = URI::Find->new(sub {
+  my ($uri_obj, $uri_text) = @_;
+  $uri_text =~ s/^\<//;
+  $uri_text =~ s/\>$//;
+
+  push @fails, "$uri_text in file $File::Find::name"
+    if !defined get($uri_text);
+
+  return $_[1];
+});
+
+find(sub {
+  open(FH, $File::Find::name) or return;
+  my $text;
+  { local $/; $text = <FH>; }
+
+  $finder->find(\$text);
+
+  }, "."
+);
+
+if (@fails) {
+  ok(0, join "\n", @fails);
+} else {
+  ok(1, "no broken links found");
+}