fix setup.py
This commit is contained in:
parent
bc1edc5c1b
commit
d835658f23
@ -169,10 +169,12 @@ class Repository(pathed.Pathed):
|
||||
"""Create a changeset to migrate this dbms from ver. start to end/latest.
|
||||
"""
|
||||
start = version.VerNum(start)
|
||||
|
||||
if end is None:
|
||||
end = self.latest
|
||||
else:
|
||||
end = version.VerNum(end)
|
||||
|
||||
if start <= end:
|
||||
step = 1
|
||||
range_mod = 1
|
||||
@ -181,7 +183,8 @@ class Repository(pathed.Pathed):
|
||||
step = -1
|
||||
range_mod = 0
|
||||
op = 'downgrade'
|
||||
versions = range(start+range_mod, end+range_mod, step)
|
||||
|
||||
versions = range(start + range_mod, end + range_mod, step)
|
||||
changes = [self.version(v).script(database, op) for v in versions]
|
||||
ret = Changeset(start, step=step, *changes)
|
||||
return ret
|
||||
|
2
setup.py
2
setup.py
@ -16,7 +16,7 @@ except ImportError:
|
||||
|
||||
test_requirements = ['nose >= 0.10']
|
||||
required_deps = ['sqlalchemy >= 0.5', 'decorator']
|
||||
readme_file = os.path.join(os.path.dirname(os.path.abspath(__file__)), 'README')
|
||||
readme_file = open(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'README'))
|
||||
|
||||
setup(
|
||||
name = "sqlalchemy-migrate",
|
||||
|
@ -126,7 +126,7 @@ class TestVersionedRepository(fixture.Pathed):
|
||||
"""Creates and verifies a changeset"""
|
||||
changeset = repos.changeset('postgres', *params)
|
||||
self.assertEquals(len(changeset), length)
|
||||
self.assert_(isinstance(changeset, Changeset))
|
||||
self.assertTrue(isinstance(changeset, Changeset))
|
||||
uniq = list()
|
||||
# Changesets are iterable
|
||||
for version, change in changeset:
|
||||
@ -137,50 +137,55 @@ class TestVersionedRepository(fixture.Pathed):
|
||||
return changeset
|
||||
|
||||
# Upgrade to a specified version...
|
||||
cs = check_changeset((0,10),10)
|
||||
self.assertEquals(cs.keys().pop(0),0) # 0 -> 1: index is starting version
|
||||
self.assertEquals(cs.keys().pop(),9) # 9 -> 10: index is starting version
|
||||
self.assertEquals(cs.start,0) # starting version
|
||||
self.assertEquals(cs.end,10) # ending version
|
||||
check_changeset((0,1),1)
|
||||
check_changeset((0,5),5)
|
||||
check_changeset((0,0),0)
|
||||
check_changeset((5,5),0)
|
||||
check_changeset((10,10),0)
|
||||
check_changeset((5,10),5)
|
||||
cs = check_changeset((0, 10), 10)
|
||||
self.assertEquals(cs.keys().pop(0),0 ) # 0 -> 1: index is starting version
|
||||
self.assertEquals(cs.keys().pop(), 9) # 9 -> 10: index is starting version
|
||||
self.assertEquals(cs.start, 0) # starting version
|
||||
self.assertEquals(cs.end, 10) # ending version
|
||||
check_changeset((0, 1), 1)
|
||||
check_changeset((0, 5), 5)
|
||||
check_changeset((0, 0), 0)
|
||||
check_changeset((5, 5), 0)
|
||||
check_changeset((10, 10), 0)
|
||||
check_changeset((5, 10), 5)
|
||||
|
||||
# Can't request a changeset of higher version than this repository
|
||||
self.assertRaises(Exception,repos.changeset,'postgres',5,11)
|
||||
self.assertRaises(Exception,repos.changeset,'postgres',-1,5)
|
||||
self.assertRaises(Exception, repos.changeset, 'postgres', 5, 11)
|
||||
self.assertRaises(Exception, repos.changeset, 'postgres', -1, 5)
|
||||
|
||||
# Upgrade to the latest version...
|
||||
cs=check_changeset((0,),10)
|
||||
self.assertEquals(cs.keys().pop(0),0)
|
||||
self.assertEquals(cs.keys().pop(),9)
|
||||
self.assertEquals(cs.start,0)
|
||||
self.assertEquals(cs.end,10)
|
||||
check_changeset((1,),9)
|
||||
check_changeset((5,),5)
|
||||
check_changeset((9,),1)
|
||||
check_changeset((10,),0)
|
||||
cs = check_changeset((0,), 10)
|
||||
self.assertEquals(cs.keys().pop(0), 0)
|
||||
self.assertEquals(cs.keys().pop(), 9)
|
||||
self.assertEquals(cs.start, 0)
|
||||
self.assertEquals(cs.end, 10)
|
||||
check_changeset((1,), 9)
|
||||
check_changeset((5,), 5)
|
||||
check_changeset((9,), 1)
|
||||
check_changeset((10,), 0)
|
||||
|
||||
# Can't request a changeset of higher/lower version than this repository
|
||||
self.assertRaises(Exception,repos.changeset,'postgres',11)
|
||||
self.assertRaises(Exception,repos.changeset,'postgres',-1)
|
||||
self.assertRaises(Exception, repos.changeset, 'postgres', 11)
|
||||
self.assertRaises(Exception, repos.changeset, 'postgres', -1)
|
||||
|
||||
# Downgrade
|
||||
cs=check_changeset((10,0),10)
|
||||
self.assertEquals(cs.keys().pop(0),10) # 10 -> 9
|
||||
self.assertEquals(cs.keys().pop(),1) # 1 -> 0
|
||||
self.assertEquals(cs.start,10)
|
||||
self.assertEquals(cs.end,0)
|
||||
check_changeset((10,5),5)
|
||||
check_changeset((5,0),5)
|
||||
cs=check_changeset((10, 0),10)
|
||||
self.assertEquals(cs.keys().pop(0), 10) # 10 -> 9
|
||||
self.assertEquals(cs.keys().pop(), 1) # 1 -> 0
|
||||
self.assertEquals(cs.start, 10)
|
||||
self.assertEquals(cs.end, 0)
|
||||
check_changeset((10, 5), 5)
|
||||
check_changeset((5, 0), 5)
|
||||
|
||||
def test_many_versions(self):
|
||||
"""Test what happens when lots of versions are created"""
|
||||
repos=Repository(self.path_repos)
|
||||
for i in range(1001): # since we normally create 3 digit ones, let's see if we blow up
|
||||
repos = Repository(self.path_repos)
|
||||
for i in range(1001):
|
||||
repos.create_script('')
|
||||
|
||||
# since we normally create 3 digit ones, let's see if we blow up
|
||||
self.assert_(os.path.exists('%s/versions/1000.py' % self.path_repos))
|
||||
self.assert_(os.path.exists('%s/versions/1001.py' % self.path_repos))
|
||||
|
||||
# TODO: test manage file
|
||||
# TODO: test changeset
|
||||
|
Loading…
x
Reference in New Issue
Block a user