cubicweb/pyramid/test/test_tools.py
author Philippe Pepiot <philippe.pepiot@logilab.fr>
Fri, 10 May 2019 16:07:32 +0200
changeset 12597 7882ad333954
parent 11631 faf279e33298
permissions -rw-r--r--
Move CWSchemaTC to RQLExpressionTC The test actually doesn't require a cubicweb schema, except for testing EmailAdress which is out of scope of the test (testing RQLExpression.transform_has_permission()). Just move the test in existing RQLExpressionTC inheriting from TestCase and rename the tests to be more explicit.

from cubicweb.pyramid.test import PyramidCWTest
from cubicweb.pyramid import tools


class ToolsTest(PyramidCWTest):
    anonymous_allowed = True

    def test_clone_user(self):
        with self.admin_access.repo_cnx() as cnx:
            user = cnx.find('CWUser', login='anon').one()
            user.login  # fill the cache
            clone = tools.clone_user(self.repo, user)

            self.assertEqual(clone.eid, user.eid)
            self.assertEqual(clone.login, user.login)

            self.assertEqual(clone.cw_rset.rows, user.cw_rset.rows)
            self.assertEqual(clone.cw_rset.rql, user.cw_rset.rql)

    def test_cnx_attach_entity(self):
        with self.admin_access.repo_cnx() as cnx:
            user = cnx.find('CWUser', login='anon').one()

        with self.admin_access.repo_cnx() as cnx:
            tools.cnx_attach_entity(cnx, user)
            self.assertEqual(user.login, 'anon')


if __name__ == '__main__':
    from unittest import main
    main()