Stop deleting the wrong version
Yanick Champoux [Mon, 8 Aug 2011 16:23:23 +0000 (12:23 -0400)]
If downgrading from 101 to 100, it'd try to delete version 100
from the database.

Changes
lib/DBIx/Class/DeploymentHandler/Dad.pm
t/02-instantiation-no-ddl.t

diff --git a/Changes b/Changes
index c9a9b92..89fe020 100644 (file)
--- a/Changes
+++ b/Changes
@@ -1,6 +1,7 @@
 Revision history for {{$dist->name}}
 
 {{$NEXT}}
+       - Stop deleting the wrong version
        - Fix documentation for in the Cookbook (moltar)
 
 0.001005  2011-04-13 15:21:08 CST6CDT
index 86043e8..1fb3520 100644 (file)
@@ -75,7 +75,7 @@ sub upgrade {
 }
 
 sub downgrade {
-  log_info { 'upgrading' };
+  log_info { 'downgrading' };
   my $self = shift;
   my $ran_once = 0;
   while ( my $version_list = $self->previous_version_set ) {
@@ -83,7 +83,7 @@ sub downgrade {
     $self->downgrade_single_step({ version_set => $version_list });
 
     # do we just delete a row here?  I think so but not sure
-    $self->delete_database_version({ version => $version_list->[-1] });
+    $self->delete_database_version({ version => $version_list->[0] });
   }
   log_warn { 'no version to run downgrade' } unless $ran_once;
 }
index 1948051..289fa52 100644 (file)
@@ -158,6 +158,10 @@ DOWN2: {
       baz => 'frew',
     })
   } 'schema is at version 2';
+
+  is $handler->version_storage->database_version => 2, 
+    'database version is down to 2';
+
 }
 
 done_testing;