diff options
author | Simon Bowly <simon.bowly@gmail.com> | 2021-05-07 11:21:55 +1000 |
---|---|---|
committer | Simon Bowly <simon.bowly@gmail.com> | 2021-05-07 01:48:29 +0000 |
commit | 4b0797f008f6cd4b53d1a44fd1bc83c32537d90d (patch) | |
tree | 9c679a23496cd64d49d3caa5e2478f76c4eb9998 /tests/test_version_traversal.py | |
parent | 54cedeb6b36e96ac00bea75fe1141ee1680d4387 (diff) | |
download | alembic-4b0797f008f6cd4b53d1a44fd1bc83c32537d90d.tar.gz |
Move empty downgrade revisions check to make it specific to branch filtering case as intended.
Fixed regression in new versioning traversal where "alembic downgrade head" (or equivalent) fails instead of iterating no revisions.
Fixes: #839
Change-Id: I9e8463ee067761ee4588c2ccc1b1009e2be97c38
Diffstat (limited to 'tests/test_version_traversal.py')
-rw-r--r-- | tests/test_version_traversal.py | 29 |
1 files changed, 20 insertions, 9 deletions
diff --git a/tests/test_version_traversal.py b/tests/test_version_traversal.py index f224731..bdc7f65 100644 --- a/tests/test_version_traversal.py +++ b/tests/test_version_traversal.py @@ -58,6 +58,11 @@ class RevisionPathTest(MigrationTest): self.a.revision, [self.a.revision], [], {self.a.revision} ) + def test_downgrade_to_existing_head(self): + self._assert_downgrade( + self.e.revision, [self.e.revision], [], {self.e.revision} + ) + def test_upgrade_path(self): self._assert_upgrade( self.e.revision, @@ -511,15 +516,6 @@ class BranchedPathTest(MigrationTest): [self.c1.revision, self.c2.revision], ) - def test_not_a_downgrade(self): - assert_raises_message( - util.CommandError, - "Not a valid downgrade target from current heads", - self.env._downgrade_revs, - self.d2.revision, - [self.d1.revision, self.d2.revision], - ) - def test_upgrade_from_base(self): self._assert_upgrade( "base+1", [], [self.up_(self.a)], set([self.a.revision]) @@ -544,6 +540,21 @@ class BranchedPathTest(MigrationTest): [], ) + def test_downgrade_no_effect_branched(self): + """Added for good measure when there are multiple branches. """ + self._assert_downgrade( + self.c2.revision, + [self.d1.revision, self.c2.revision], + [], + set([self.d1.revision, self.c2.revision]), + ) + self._assert_downgrade( + self.d1.revision, + [self.d1.revision, self.c2.revision], + [], + set([self.d1.revision, self.c2.revision]), + ) + class BranchFromMergepointTest(MigrationTest): |