From: Mike Bayer Date: Mon, 30 Jan 2012 18:03:43 +0000 (-0500) Subject: cut off the slug length at 20 chars X-Git-Tag: rel_0_2_0~3 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=98c5513b77d0bf3cca516151dc75f68b1bd86d92;p=thirdparty%2Fsqlalchemy%2Falembic.git cut off the slug length at 20 chars --- diff --git a/alembic/script.py b/alembic/script.py index 5598b78f..bc5b66af 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 51aade27..2bdca938 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