Merge pull request #3104 from Machine-Garden-MUD/main
Cast tags to strings
This commit is contained in:
commit
9f30d5feb4
2 changed files with 23 additions and 5 deletions
|
|
@ -254,7 +254,7 @@ class TagHandler(object):
|
||||||
database lookup.
|
database lookup.
|
||||||
|
|
||||||
"""
|
"""
|
||||||
key = key.strip().lower() if key else None
|
key = str(key).strip().lower() if key else None
|
||||||
category = category.strip().lower() if category else None
|
category = category.strip().lower() if category else None
|
||||||
if key:
|
if key:
|
||||||
cachekey = "%s-%s" % (key, category)
|
cachekey = "%s-%s" % (key, category)
|
||||||
|
|
@ -323,7 +323,10 @@ class TagHandler(object):
|
||||||
return
|
return
|
||||||
if not key: # don't allow an empty key in cache
|
if not key: # don't allow an empty key in cache
|
||||||
return
|
return
|
||||||
key, category = (key.strip().lower(), category.strip().lower() if category else category)
|
key, category = (
|
||||||
|
str(key).strip().lower(),
|
||||||
|
category.strip().lower() if category else category,
|
||||||
|
)
|
||||||
cachekey = "%s-%s" % (key, category)
|
cachekey = "%s-%s" % (key, category)
|
||||||
catkey = "-%s" % category
|
catkey = "-%s" % category
|
||||||
self._cache[cachekey] = tag_obj
|
self._cache[cachekey] = tag_obj
|
||||||
|
|
@ -340,7 +343,10 @@ class TagHandler(object):
|
||||||
category (str or None): A cleaned category name
|
category (str or None): A cleaned category name
|
||||||
|
|
||||||
"""
|
"""
|
||||||
key, category = (key.strip().lower(), category.strip().lower() if category else category)
|
key, category = (
|
||||||
|
str(key).strip().lower(),
|
||||||
|
category.strip().lower() if category else category,
|
||||||
|
)
|
||||||
catkey = "-%s" % category
|
catkey = "-%s" % category
|
||||||
if key:
|
if key:
|
||||||
cachekey = "%s-%s" % (key, category)
|
cachekey = "%s-%s" % (key, category)
|
||||||
|
|
@ -419,7 +425,7 @@ class TagHandler(object):
|
||||||
category = category.strip().lower() if category is not None else None
|
category = category.strip().lower() if category is not None else None
|
||||||
if key:
|
if key:
|
||||||
for tag_str in make_iter(key):
|
for tag_str in make_iter(key):
|
||||||
tag_str = tag_str.strip().lower()
|
tag_str = str(tag_str).strip().lower()
|
||||||
ret.append(bool(self._getcache(tag_str, category)))
|
ret.append(bool(self._getcache(tag_str, category)))
|
||||||
elif category:
|
elif category:
|
||||||
ret.extend(bool(tag) for tag in self._getcache(category=category))
|
ret.extend(bool(tag) for tag in self._getcache(category=category))
|
||||||
|
|
@ -507,7 +513,7 @@ class TagHandler(object):
|
||||||
for key in make_iter(key):
|
for key in make_iter(key):
|
||||||
if not (key or key.strip()): # we don't allow empty tags
|
if not (key or key.strip()): # we don't allow empty tags
|
||||||
continue
|
continue
|
||||||
tagstr = key.strip().lower()
|
tagstr = str(key).strip().lower()
|
||||||
category = category.strip().lower() if category else category
|
category = category.strip().lower() if category else category
|
||||||
|
|
||||||
# This does not delete the tag object itself. Maybe it should do
|
# This does not delete the tag object itself. Maybe it should do
|
||||||
|
|
|
||||||
|
|
@ -314,6 +314,18 @@ class TestTags(BaseEvenniaTest):
|
||||||
self.obj1.tags.add("tagC", "categoryC")
|
self.obj1.tags.add("tagC", "categoryC")
|
||||||
self.assertFalse(self.obj1.tags.has(category="categoryD"))
|
self.assertFalse(self.obj1.tags.has(category="categoryD"))
|
||||||
|
|
||||||
|
def test_integer_tag(self):
|
||||||
|
self.obj1.tags.add(1)
|
||||||
|
self.assertTrue(self.obj1.tags.has(1))
|
||||||
|
self.assertTrue(self.obj1.tags.get(1))
|
||||||
|
self.assertTrue(self.obj1.tags.has("1"))
|
||||||
|
self.assertTrue(self.obj1.tags.get("1"))
|
||||||
|
self.obj1.tags.remove(1)
|
||||||
|
self.assertFalse(self.obj1.tags.has(1))
|
||||||
|
self.assertFalse(self.obj1.tags.get(1))
|
||||||
|
self.assertFalse(self.obj1.tags.has("1"))
|
||||||
|
self.assertFalse(self.obj1.tags.get("1"))
|
||||||
|
|
||||||
def test_tag_add_no_category__issue_2688(self):
|
def test_tag_add_no_category__issue_2688(self):
|
||||||
"""
|
"""
|
||||||
Adding a tag without a category should create a new tag:None tag
|
Adding a tag without a category should create a new tag:None tag
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue