pyramid_cubicweb/tests/test_tools.py
changeset 11550 38ed4c3ac3de
child 11611 9d2bb6bdb5c8
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/pyramid_cubicweb/tests/test_tools.py	Mon Jan 26 17:59:10 2015 +0100
@@ -0,0 +1,26 @@
+from pyramid_cubicweb.tests import PyramidCWTest
+from pyramid_cubicweb 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')