Smarter todoification (this doesn't sound like a bad idea for CPAN in general)
Peter Rabbitson [Fri, 27 Dec 2013 16:32:15 +0000 (17:32 +0100)]
The remaining failing tests are *real* fails and need addressing

12 files changed:
.auto_todo [new file with mode: 0644]
.gitignore
lib/DBIx/Class/Storage/DBI/Replicated.pm
t/52leaks.t
t/lib/DBICTest.pm
t/sqlmaker/bind_transport.t
t/sqlmaker/core.t
t/sqlmaker/core_quoted.t
t/sqlmaker/limit_dialects/generic_subq.t
t/sqlmaker/limit_dialects/torture.t
t/sqlmaker/nest_deprec.t
t/storage/replicated.t

diff --git a/.auto_todo b/.auto_todo
new file mode 100644 (file)
index 0000000..966b837
--- /dev/null
@@ -0,0 +1,18 @@
+# *unless* any of the following variables are set:
+# RELEASE_TESTING
+# AUTHOR_TESTING
+# Any non-commented-out filename in this list will be executed in
+# "todo mode"
+#
+# Names are matched via
+#
+#  $0 =~ m! (?: \A | / ) \Q$chomped_name_as_seen_in_this_file\E \z !x
+#
+
+# blocked on Carp::Skip
+t/sqlmaker/bind_transport.t
+t/sqlmaker/nest_deprec.t
+t/sqlmaker/core.t
+
+# waiting on riba - the leak detection mechanism has issues here and there
+t/52leaks.t
index 233a2fb..5628398 100644 (file)
@@ -19,4 +19,4 @@ t/var/
 *~
 maint/.Generated_Pod
 examples/Schema/db
-lib/DBIx/Class/_TempExtlib
\ No newline at end of file
+lib/DBIx/Class/_TempExtlib
index 70e4980..91ce826 100644 (file)
@@ -345,6 +345,8 @@ my $method_dispatch = {
     sql_quote_char
     sql_name_sep
 
+    perl_renderer
+
     _prefetch_autovalues
     _perform_autoinc_retrieval
     _autoinc_supplied_for_op
index 683d543..4923be0 100644 (file)
@@ -21,8 +21,6 @@ use strict;
 use warnings;
 use Test::More;
 
-local $TODO = 'Temporarily todo-ed for dq2eb';
-
 my $TB = Test::More->builder;
 if ($ENV{DBICTEST_IN_PERSISTENT_ENV}) {
   # without this explicit close older TBs warn in END after a ->reset
index c75a077..8b72950 100644 (file)
@@ -21,6 +21,32 @@ BEGIN {
   }
 }
 
+# This is a pretty good candidate for a standalone extraction (Test::AutoSkip?)
+BEGIN {
+  if (
+    ! $ENV{RELEASE_TESTING}
+      and
+    ! $ENV{AUTHOR_TESTING}
+      and
+    $0 =~ /^ (.*) x?t [\/\\] .+ \.t $/x
+      and
+    -f ( my $fn = "$1.auto_todo")
+  ) {
+    # fuck you win32
+    require File::Spec;
+    my $canonical_dollarzero = File::Spec::Unix->catpath(File::Spec->splitpath($0));
+
+    for my $t ( map {
+      ( $_ =~ /^ \s* ( [^\#\n]+ ) /x ) ? $1 : ()
+    } do { local @ARGV = $fn; <> } ) {
+      if ( $canonical_dollarzero =~ m! (?: \A | / ) \Q$t\E \z !x ) {
+        require Test::Builder;
+        Test::Builder->new->todo_start("Global todoification of '$t' specified in $fn");
+      }
+    }
+  }
+}
+
 use Module::Runtime 'module_notional_filename';
 BEGIN {
   for my $mod (qw( DBIC::SqlMakerTest SQL::Abstract )) {
index da1176b..bafe8e9 100644 (file)
@@ -5,8 +5,6 @@ use Test::More;
 use Test::Exception;
 use Math::BigInt;
 
-local $TODO = 'Temporarily todo-ed for dq2eb';
-
 use lib qw(t/lib);
 use DBICTest;
 use DBIC::SqlMakerTest;
index e534269..57cf480 100644 (file)
@@ -4,8 +4,6 @@ use warnings;
 use Test::More;
 use Test::Exception;
 
-local $TODO = 'Temporarily todo-ed for dq2eb';
-
 use lib qw(t/lib);
 use DBICTest;
 use DBIC::SqlMakerTest;
index f02cf0d..53ce03b 100644 (file)
@@ -3,8 +3,6 @@ use warnings;
 
 use Test::More;
 
-local $TODO = 'Temporarily todo-ed for dq2eb';
-
 use lib qw(t/lib);
 use DBICTest;
 use DBIC::SqlMakerTest;
index f1e2fcb..c94942e 100644 (file)
@@ -2,9 +2,6 @@ use strict;
 use warnings;
 
 use Test::More;
-
-local $TODO = 'Temporarily todo-ed for dq2eb';
-
 use lib qw(t/lib);
 use List::Util 'min';
 use DBICTest;
index 11fb6a0..6671e37 100644 (file)
@@ -2,9 +2,6 @@ use strict;
 use warnings;
 
 use Test::More;
-
-local $TODO = 'Temporarily todo-ed for dq2eb';
-
 use Test::Exception;
 use Storable 'dclone';
 use lib qw(t/lib);
index f1fd693..f00443a 100644 (file)
@@ -4,8 +4,6 @@ use warnings;
 use Test::More;
 use Test::Warn;
 
-local $TODO = 'Temporarily todo-ed for dq2eb';
-
 use lib qw(t/lib);
 use DBICTest;
 use DBIC::SqlMakerTest;
index 644a934..dfd3870 100644 (file)
@@ -3,8 +3,6 @@ use warnings;
 
 use Test::More;
 
-local $TODO = 'Temporarily todo-ed for dq2eb';
-
 use lib qw(t/lib);
 use DBICTest;