--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/sobjects/test/unittest_email.py Wed Nov 05 15:52:50 2008 +0100
@@ -0,0 +1,29 @@
+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()