mirror of
https://github.com/evennia/evennia.git
synced 2026-03-30 04:27:16 +02:00
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.
|
||||
|
||||
"""
|
||||
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
|
||||
if key:
|
||||
cachekey = "%s-%s" % (key, category)
|
||||
|
|
@ -323,7 +323,10 @@ class TagHandler(object):
|
|||
return
|
||||
if not key: # don't allow an empty key in cache
|
||||
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)
|
||||
catkey = "-%s" % category
|
||||
self._cache[cachekey] = tag_obj
|
||||
|
|
@ -340,7 +343,10 @@ class TagHandler(object):
|
|||
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
|
||||
if key:
|
||||
cachekey = "%s-%s" % (key, category)
|
||||
|
|
@ -419,7 +425,7 @@ class TagHandler(object):
|
|||
category = category.strip().lower() if category is not None else None
|
||||
if 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)))
|
||||
elif 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):
|
||||
if not (key or key.strip()): # we don't allow empty tags
|
||||
continue
|
||||
tagstr = key.strip().lower()
|
||||
tagstr = str(key).strip().lower()
|
||||
category = category.strip().lower() if category else category
|
||||
|
||||
# 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.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):
|
||||
"""
|
||||
Adding a tag without a category should create a new tag:None tag
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue