119 self.assertEquals(len(p.related('tags', 'object')), 4) |
119 self.assertEquals(len(p.related('tags', 'object')), 4) |
120 |
120 |
121 |
121 |
122 def test_fetch_rql(self): |
122 def test_fetch_rql(self): |
123 user = self.user() |
123 user = self.user() |
124 Personne = self.vreg.etype_class('Personne') |
124 Personne = self.vreg['etypes'].etype_class('Personne') |
125 Societe = self.vreg.etype_class('Societe') |
125 Societe = self.vreg['etypes'].etype_class('Societe') |
126 Note = self.vreg.etype_class('Note') |
126 Note = self.vreg['etypes'].etype_class('Note') |
127 peschema = Personne.e_schema |
127 peschema = Personne.e_schema |
128 seschema = Societe.e_schema |
128 seschema = Societe.e_schema |
129 peschema.subject_relation('travaille').set_rproperty(peschema, seschema, 'cardinality', '1*') |
129 peschema.subject_relation('travaille').set_rproperty(peschema, seschema, 'cardinality', '1*') |
130 peschema.subject_relation('connait').set_rproperty(peschema, peschema, 'cardinality', '11') |
130 peschema.subject_relation('connait').set_rproperty(peschema, peschema, 'cardinality', '11') |
131 peschema.subject_relation('evaluee').set_rproperty(peschema, Note.e_schema, 'cardinality', '1*') |
131 peschema.subject_relation('evaluee').set_rproperty(peschema, Note.e_schema, 'cardinality', '1*') |
173 Personne.fetch_attrs = pfetch_attrs |
173 Personne.fetch_attrs = pfetch_attrs |
174 Societe.fetch_attrs = sfetch_attrs |
174 Societe.fetch_attrs = sfetch_attrs |
175 |
175 |
176 def test_related_rql(self): |
176 def test_related_rql(self): |
177 from cubicweb.entities import fetch_config |
177 from cubicweb.entities import fetch_config |
178 Personne = self.vreg.etype_class('Personne') |
178 Personne = self.vreg['etypes'].etype_class('Personne') |
179 Note = self.vreg.etype_class('Note') |
179 Note = self.vreg['etypes'].etype_class('Note') |
180 Personne.fetch_attrs, Personne.fetch_order = fetch_config(('nom', 'type')) |
180 Personne.fetch_attrs, Personne.fetch_order = fetch_config(('nom', 'type')) |
181 Note.fetch_attrs, Note.fetch_order = fetch_config(('type',)) |
181 Note.fetch_attrs, Note.fetch_order = fetch_config(('type',)) |
182 aff = self.add_entity('Personne', nom=u'pouet') |
182 aff = self.add_entity('Personne', nom=u'pouet') |
183 self.assertEquals(aff.related_rql('evaluee'), |
183 self.assertEquals(aff.related_rql('evaluee'), |
184 'Any X,AA,AB ORDERBY AA ASC WHERE E eid %(x)s, E evaluee X, ' |
184 'Any X,AA,AB ORDERBY AA ASC WHERE E eid %(x)s, E evaluee X, ' |