sobjects/test/unittest_email.py
author Emile Anclin <emile.anclin@logilab.fr>
Wed, 01 Apr 2009 12:25:01 +0200
changeset 1195 79c1abc64304
parent 0 b97547f5f1fa
child 1802 d628defebc17
permissions -rw-r--r--
doc improvements

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()