[hooks] build EnsureSymmetricRelations{Add,Delete} dynamically
Instead of setting the __select__ attribute at registration time, which
confuses the filterable_selectors cache when running different tests (with
different schemas) in the same process, just make entirely new classes.
Closes #8785708.
from yams.buildobjs import ComputedRelation, EntityType, RelationDefinition
from cubicweb.schema import RRQLExpression
class Subject(EntityType):
pass
class Object(EntityType):
pass
class relation(RelationDefinition):
subject = 'Subject'
object = 'Object'
class computed(ComputedRelation):
rule = 'S relation O'
__permissions__ = {'read': (RRQLExpression('S is ET'),)}