ajax_replace_url becomes obsolete, req.build_ajax_replace_url should be used instead
The idea is to generate the full URL on the server side and not
on the client side (i.e in JS). This way, this gives a chance to the
ajax link to work outside the application itself (typically mash-ups).
from cubicweb.devtools.apptest import EnvBasedTC
class EmailAddressHooksTC(EnvBasedTC):
def test_use_email_set_primary_email(self):
self.execute('INSERT EmailAddress X: X address "admin@logilab.fr", U use_email X WHERE U login "admin"')
self.assertEquals(self.execute('Any A WHERE U primary_email X, U login "admin", X address A').rows,
[])
self.commit()
self.assertEquals(self.execute('Any A WHERE U primary_email X, U login "admin", X address A')[0][0],
'admin@logilab.fr')
# having another email should'nt change anything
self.execute('INSERT EmailAddress X: X address "a@logilab.fr", U use_email X WHERE U login "admin"')
self.commit()
self.assertEquals(self.execute('Any A WHERE U primary_email X, U login "admin", X address A')[0][0],
'admin@logilab.fr')
def test_primary_email_set_use_email(self):
self.execute('INSERT EmailAddress X: X address "admin@logilab.fr", U primary_email X WHERE U login "admin"')
self.assertEquals(self.execute('Any A WHERE U use_email X, U login "admin", X address A').rows,
[])
self.commit()
self.assertEquals(self.execute('Any A WHERE U use_email X, U login "admin", X address A')[0][0],
'admin@logilab.fr')
if __name__ == '__main__':
from logilab.common.testlib import unittest_main
unittest_main()