Skip to content
Snippets Groups Projects
Commit ba294ec1 authored by Holger's avatar Holger
Browse files

Improve derive_permlink and allow replies of comments with permlink lenght > 235

derive_permlink was improved so that replys to posts/comments with a permlink length of more than 235 characters is possible
unit tests added
parent 4c1fba88
No related branches found
No related tags found
No related merge requests found
......@@ -109,18 +109,18 @@ def sanitize_permlink(permlink):
return permlink
def derive_permlink(title, parent_permlink=None, parent_author=None):
def derive_permlink(title, parent_permlink=None, parent_author=None, max_permlink_length=256):
permlink = ""
if parent_permlink and parent_author:
permlink += "re-"
permlink += parent_author.replace("@", "")
permlink += "-"
permlink += parent_permlink
permlink += parent_permlink[:(max_permlink_length - 20 - len(parent_author.replace("@", "")) - 1)]
permlink += "-" + formatTime(timenow.time()) + "z"
elif parent_permlink:
permlink += "re-"
permlink += parent_permlink
permlink += parent_permlink[:(max_permlink_length - 20)]
permlink += "-" + formatTime(timenow.time()) + "z"
else:
permlink += title
......
"""THIS FILE IS GENERATED FROM beem SETUP.PY."""
version = '0.20.18'
"""THIS FILE IS GENERATED FROM beem SETUP.PY."""
version = '0.20.19'
"""THIS FILE IS GENERATED FROM beem SETUP.PY."""
version = '0.20.18'
"""THIS FILE IS GENERATED FROM beem SETUP.PY."""
version = '0.20.19'
"""THIS FILE IS GENERATED FROM beem SETUP.PY."""
version = '0.20.18'
"""THIS FILE IS GENERATED FROM beem SETUP.PY."""
version = '0.20.19'
"""THIS FILE IS GENERATED FROM beem SETUP.PY."""
version = '0.20.18'
"""THIS FILE IS GENERATED FROM beem SETUP.PY."""
version = '0.20.19'
......@@ -16,7 +16,7 @@ except LookupError:
ascii = codecs.lookup('ascii')
codecs.register(lambda name, enc=ascii: {True: enc}.get(name == 'mbcs'))
VERSION = '0.20.18'
VERSION = '0.20.19'
tests_require = ['mock >= 2.0.0', 'pytest', 'pytest-mock', 'parameterized']
......
......@@ -68,6 +68,8 @@ class Testcases(unittest.TestCase):
self.assertEqual(derive_permlink("Hello World"), "hello-world")
self.assertEqual(derive_permlink("aAf_0.12"), "aaf-0-12")
self.assertEqual(derive_permlink("[](){}"), "")
self.assertEqual(len(derive_permlink("", parent_permlink=256 * "a")), 256)
self.assertEqual(len(derive_permlink("", parent_permlink=256 * "a", parent_author="test")), 256)
def test_patch(self):
self.assertEqual(make_patch("aa", "ab"), '@@ -1 +1 @@\n-aa\n+ab\n')
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment