240
240
def test__format_query(self):
241
241
self.assertFormatQueryEquals(
242
"SELECT d0.doc_id FROM document_fields d0"
242
"SELECT doc.doc_id, doc.doc_rev, doc.content FROM document_fields"
243
" d0 INNER JOIN document doc ON doc.doc_id = d0.doc_id"
243
244
" WHERE d0.field_name = ? AND d0.value = ? ORDER BY d0.value",
245
246
self.assertFormatQueryEquals(
247
" FROM document_fields d0, document_fields d1"
247
"SELECT doc.doc_id, doc.doc_rev, doc.content FROM document_fields"
248
" d0, document_fields d1"
249
" INNER JOIN document doc ON doc.doc_id = d0.doc_id"
248
250
" WHERE d0.field_name = ? AND d0.value = ?"
249
251
" AND d0.doc_id = d1.doc_id"
250
252
" AND d1.field_name = ? AND d1.value = ?"
251
253
" ORDER BY d0.value, d1.value",
252
254
[0, 0], ["1", "2"])
253
255
self.assertFormatQueryEquals(
256
"SELECT doc.doc_id, doc.doc_rev, doc.content"
255
257
" FROM document_fields d0, document_fields d1, document_fields d2"
258
" INNER JOIN document doc ON doc.doc_id = d0.doc_id"
256
259
" WHERE d0.field_name = ? AND d0.value = ?"
257
260
" AND d0.doc_id = d1.doc_id"
258
261
" AND d1.field_name = ? AND d1.value = ?"
264
267
def test__format_query_wildcard(self):
265
268
self.assertFormatQueryEquals(
266
"SELECT d0.doc_id FROM document_fields d0"
269
"SELECT doc.doc_id, doc.doc_rev, doc.content"
270
" FROM document_fields d0"
271
" INNER JOIN document doc ON doc.doc_id = d0.doc_id"
267
272
" WHERE d0.field_name = ? AND d0.value NOT NULL ORDER BY d0.value",
269
274
self.assertFormatQueryEquals(
275
"SELECT doc.doc_id, doc.doc_rev, doc.content"
271
276
" FROM document_fields d0, document_fields d1"
277
" INNER JOIN document doc ON doc.doc_id = d0.doc_id"
272
278
" WHERE d0.field_name = ? AND d0.value = ?"
273
279
" AND d0.doc_id = d1.doc_id"
274
280
" AND d1.field_name = ? AND d1.value NOT NULL"
278
284
def test__format_query_glob(self):
279
285
self.assertFormatQueryEquals(
280
"SELECT d0.doc_id FROM document_fields d0"
286
"SELECT doc.doc_id, doc.doc_rev, doc.content"
287
" FROM document_fields d0"
288
" INNER JOIN document doc ON doc.doc_id = d0.doc_id"
281
289
" WHERE d0.field_name = ? AND d0.value GLOB ? ORDER BY d0.value",