server/test/unittest_multisources.py
brancholdstable
changeset 7254 c0278ad81823
parent 7088 76e0dba5f8f3
child 7631 4ac19f288149
--- a/server/test/unittest_multisources.py	Tue Apr 05 08:39:49 2011 +0200
+++ b/server/test/unittest_multisources.py	Wed Apr 27 09:54:22 2011 +0200
@@ -1,4 +1,4 @@
- # copyright 2003-2010 LOGILAB S.A. (Paris, FRANCE), all rights reserved.
+# copyright 2003-2011 LOGILAB S.A. (Paris, FRANCE), all rights reserved.
 # contact http://www.logilab.fr/ -- mailto:contact@logilab.fr
 #
 # This file is part of CubicWeb.
@@ -17,6 +17,7 @@
 # with CubicWeb.  If not, see <http://www.gnu.org/licenses/>.
 
 from datetime import datetime, timedelta
+from itertools import repeat
 
 from cubicweb.devtools import TestServerConfiguration, init_test_database
 from cubicweb.devtools.testlib import CubicWebTC, Tags
@@ -35,7 +36,6 @@
 pyro-ns-id = extern
 cubicweb-user = admin
 cubicweb-password = gingkow
-mapping-file = extern_mapping.py
 base-url=http://extern.org/
 '''
 
@@ -46,6 +46,12 @@
 PyroRQLSource_get_connection = PyroRQLSource.get_connection
 Connection_close = Connection.close
 
+def add_extern_mapping(source):
+    source.init_mapping(zip(('Card', 'Affaire', 'State',
+                             'in_state', 'documented_by', 'multisource_inlined_rel'),
+                            repeat(u'write')))
+
+
 def pre_setup_database_extern(session, config):
     session.execute('INSERT Card X: X title "C3: An external card", X wikiid "aaa"')
     session.execute('INSERT Card X: X title "C4: Ze external card", X wikiid "zzz"')
@@ -119,11 +125,13 @@
 pyro-ns-id = extern-multi
 cubicweb-user = admin
 cubicweb-password = gingkow
-mapping-file = extern_mapping.py
 ''')]:
-            session.create_entity('CWSource', name=unicode(uri),
-                                         type=u'pyrorql',
-                                         config=unicode(src_config))
+            source = session.create_entity('CWSource', name=unicode(uri),
+                                           type=u'pyrorql',
+                                           config=unicode(src_config))
+            session.commit()
+            add_extern_mapping(source)
+
         session.commit()
         # trigger discovery
         session.execute('Card X')