summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Bayer <mike_mp@zzzcomputing.com>2012-01-30 13:03:43 -0500
committerMike Bayer <mike_mp@zzzcomputing.com>2012-01-30 13:03:43 -0500
commit98c5513b77d0bf3cca516151dc75f68b1bd86d92 (patch)
tree1d6165fc28b467ff678c17aaa6d933f7ce78d327
parente28b5a5d3977579d8b70e55836ae060e393c4987 (diff)
downloadalembic-98c5513b77d0bf3cca516151dc75f68b1bd86d92.tar.gz
cut off the slug length at 20 chars
-rw-r--r--alembic/script.py2
-rw-r--r--tests/test_revision_create.py9
2 files changed, 10 insertions, 1 deletions
diff --git a/alembic/script.py b/alembic/script.py
index 5598b78..bc5b66a 100644
--- a/alembic/script.py
+++ b/alembic/script.py
@@ -149,7 +149,7 @@ class ScriptDirectory(object):
return map_
def _rev_path(self, rev_id, message):
- slug = "_".join(_slug_re.findall(message or "")[0:20]).lower()
+ slug = "_".join(_slug_re.findall(message or "")).lower()[0:20]
filename = "%s.py" % (
self.file_template % {'rev':rev_id, 'slug':slug}
)
diff --git a/tests/test_revision_create.py b/tests/test_revision_create.py
index 51aade2..2bdca93 100644
--- a/tests/test_revision_create.py
+++ b/tests/test_revision_create.py
@@ -58,6 +58,15 @@ def test_007_no_refresh():
env2 = staging_env(create=False)
eq_(script, env2._as_rev_number("head"))
+def test_008_long_name():
+ rid = util.rev_id()
+ script = env.generate_rev(rid,
+ "this is a really long name with "
+ "lots of characters and also "
+ "I'd like it to\nhave\nnewlines")
+ assert os.access(
+ os.path.join(env.dir, 'versions', '%s_this_is_a_really_lon.py' % rid), os.F_OK)
+
def setup():
global env