Explorar o código

Fixed migration that could be incorrectly skipped due to wrong condition being used

Alejandro Celaya %!s(int64=3) %!d(string=hai) anos
pai
achega
32fdb257a3
Modificáronse 1 ficheiros con 4 adicións e 6 borrados
  1. 4 6
      data/migrations/Version20210207100807.php

+ 4 - 6
data/migrations/Version20210207100807.php

@@ -15,10 +15,9 @@ final class Version20210207100807 extends AbstractMigration
     public function up(Schema $schema): void
     {
         $visits = $schema->getTable('visits');
-        $shortUrlId = $visits->getColumn('short_url_id');
-
-        $this->skipIf(! $shortUrlId->getNotnull());
+        $this->skipIf($visits->hasColumn('visited_url'));
 
+        $shortUrlId = $visits->getColumn('short_url_id');
         $shortUrlId->setNotnull(false);
 
         $visits->addColumn('visited_url', Types::STRING, [
@@ -34,10 +33,9 @@ final class Version20210207100807 extends AbstractMigration
     public function down(Schema $schema): void
     {
         $visits = $schema->getTable('visits');
-        $shortUrlId = $visits->getColumn('short_url_id');
-
-        $this->skipIf($shortUrlId->getNotnull());
+        $this->skipIf(! $visits->hasColumn('visited_url'));
 
+        $shortUrlId = $visits->getColumn('short_url_id');
         $shortUrlId->setNotnull(true);
         $visits->dropColumn('visited_url');
         $visits->dropColumn('type');