147 from cubicweb.server.sources.rql2sql import SQLGenerator, remove_unused_solutions |
147 from cubicweb.server.sources.rql2sql import SQLGenerator, remove_unused_solutions |
148 |
148 |
149 class RQLGeneratorTC(TestCase): |
149 class RQLGeneratorTC(TestCase): |
150 schema = backend = None # set this in concret test |
150 schema = backend = None # set this in concret test |
151 |
151 |
|
152 |
|
153 @classmethod |
|
154 def setUpClass(cls): |
|
155 if cls.backend is not None: |
|
156 try: |
|
157 cls.dbhelper = get_db_helper(cls.backend) |
|
158 except ImportError, ex: |
|
159 cls.skipTest(str(ex)) |
|
160 |
152 def setUp(self): |
161 def setUp(self): |
153 self.repo = FakeRepo(self.schema) |
162 self.repo = FakeRepo(self.schema) |
154 self.repo.system_source = mock_object(dbdriver=self.backend) |
163 self.repo.system_source = mock_object(dbdriver=self.backend) |
155 self.rqlhelper = RQLHelper(self.schema, special_relations={'eid': 'uid', |
164 self.rqlhelper = RQLHelper(self.schema, special_relations={'eid': 'uid', |
156 'has_text': 'fti'}, |
165 'has_text': 'fti'}, |
157 backend=self.backend) |
166 backend=self.backend) |
158 self.qhelper = QuerierHelper(self.repo, self.schema) |
167 self.qhelper = QuerierHelper(self.repo, self.schema) |
159 ExecutionPlan._check_permissions = _dummy_check_permissions |
168 ExecutionPlan._check_permissions = _dummy_check_permissions |
160 rqlannotation._select_principal = _select_principal |
169 rqlannotation._select_principal = _select_principal |
161 if self.backend is not None: |
170 if self.backend is not None: |
162 try: |
171 self.o = SQLGenerator(self.schema, self.dbhelper) |
163 dbhelper = get_db_helper(self.backend) |
|
164 except ImportError, ex: |
|
165 self.skipTest(str(ex)) |
|
166 self.o = SQLGenerator(self.schema, dbhelper) |
|
167 |
172 |
168 def tearDown(self): |
173 def tearDown(self): |
169 ExecutionPlan._check_permissions = _orig_check_permissions |
174 ExecutionPlan._check_permissions = _orig_check_permissions |
170 rqlannotation._select_principal = _orig_select_principal |
175 rqlannotation._select_principal = _orig_select_principal |
171 |
176 |