diff --git a/evennia/typeclasses/managers.py b/evennia/typeclasses/managers.py index c8ad666e23..e5d1130f12 100644 --- a/evennia/typeclasses/managers.py +++ b/evennia/typeclasses/managers.py @@ -286,7 +286,7 @@ class TypedObjectManager(idmapper.manager.SharedMemoryManager): categories = make_iter(category) if category else [] n_keys = len(keys) n_categories = len(categories) - unique_categories = sorted(set(categories)) + unique_categories = set(categories) n_unique_categories = len(unique_categories) dbmodel = self.model.__dbclass__.__name__.lower() diff --git a/evennia/typeclasses/tests.py b/evennia/typeclasses/tests.py index aea6ce7518..90c4945898 100644 --- a/evennia/typeclasses/tests.py +++ b/evennia/typeclasses/tests.py @@ -142,6 +142,13 @@ class TestTypedObjectManager(BaseEvenniaTest): [self.obj1], ) + def test_get_tag_with_any_including_nones(self): + self.obj1.tags.add("tagA", "categoryA") + self.assertEqual( + self._manager("get_by_tag", ["tagA", "tagB"], ["categoryA", "categoryB", None], match="any"), + [self.obj1], + ) + def test_get_tag_withnomatch(self): self.obj1.tags.add("tagC", "categoryC") self.assertEqual(