@@ -1198,22 +1198,22 @@ def test_create_json_index(self):
11981198 """
11991199 index = self .db .create_query_index (fields = ['name' , 'age' ])
12001200 self .assertIsInstance (index , Index )
1201+
12011202 ddoc = self .db [index .design_document_id ]
1203+
1204+ self .assertEquals (ddoc ['_id' ], index .design_document_id )
12021205 self .assertTrue (ddoc ['_rev' ].startswith ('1-' ))
1203- self .assertEqual (ddoc ,
1204- {'_id' : index .design_document_id ,
1205- '_rev' : ddoc ['_rev' ],
1206- 'indexes' : {},
1207- 'lists' : {},
1208- 'shows' : {},
1209- 'language' : 'query' ,
1210- 'views' : {index .name : {'map' : {'fields' : {'name' : 'asc' ,
1211- 'age' : 'asc' }},
1212- 'reduce' : '_count' ,
1213- 'options' : {'def' : {'fields' : ['name' ,
1214- 'age' ]},
1215- }}}}
1216- )
1206+
1207+ self .assertEquals (ddoc ['indexes' ], {})
1208+ self .assertEquals (ddoc ['language' ], 'query' )
1209+ self .assertEquals (ddoc ['lists' ], {})
1210+ self .assertEquals (ddoc ['shows' ], {})
1211+
1212+ index = ddoc ['views' ][index .name ]
1213+ self .assertEquals (index ['map' ]['fields' ]['age' ], 'asc' )
1214+ self .assertEquals (index ['map' ]['fields' ]['name' ], 'asc' )
1215+ self .assertEquals (index ['options' ]['def' ]['fields' ], ['name' , 'age' ])
1216+ self .assertEquals (index ['reduce' ], '_count' )
12171217
12181218 def test_create_text_index (self ):
12191219 """
@@ -1225,62 +1225,65 @@ def test_create_text_index(self):
12251225 {'name' : 'age' , 'type' :'number' }]
12261226 )
12271227 self .assertIsInstance (index , TextIndex )
1228+
12281229 ddoc = self .db [index .design_document_id ]
1230+
1231+ self .assertEquals (ddoc ['_id' ], index .design_document_id )
12291232 self .assertTrue (ddoc ['_rev' ].startswith ('1-' ))
1230- self .assertEqual (ddoc ,
1231- {'_id' : index .design_document_id ,
1232- '_rev' : ddoc ['_rev' ],
1233- 'language' : 'query' ,
1234- 'views' : {},
1235- 'lists' : {},
1236- 'shows' : {},
1237- 'indexes' : {index .name : {'index' : {'index_array_lengths' : True ,
1238- 'fields' : [{'name' : 'name' , 'type' : 'string' },
1239- {'name' : 'age' , 'type' : 'number' }],
1240- 'default_field' : {},
1241- 'default_analyzer' : 'keyword' ,
1242- 'selector' : {}},
1243- 'analyzer' : {'name' : 'perfield' ,
1244- 'default' : 'keyword' ,
1245- 'fields' : {'$default' : 'standard' }}}}}
1246- )
1233+
1234+ self .assertEquals (ddoc ['language' ], 'query' )
1235+ self .assertEquals (ddoc ['lists' ], {})
1236+ self .assertEquals (ddoc ['shows' ], {})
1237+ self .assertEquals (ddoc ['views' ], {})
1238+
1239+ text_index = ddoc ['indexes' ][index .name ]
1240+ self .assertEquals (text_index ['analyzer' ]['default' ], 'keyword' )
1241+ self .assertEquals (text_index ['analyzer' ]['fields' ]['$default' ], 'standard' )
1242+ self .assertEquals (text_index ['analyzer' ]['name' ], 'perfield' )
1243+ self .assertEquals (text_index ['index' ]['default_analyzer' ], 'keyword' )
1244+ self .assertEquals (text_index ['index' ]['default_field' ], {})
1245+ self .assertEquals (text_index ['index' ]['fields' ], [{'name' : 'name' , 'type' : 'string' }, {'name' : 'age' , 'type' : 'number' }])
1246+ self .assertEquals (text_index ['index' ]['selector' ], {})
1247+ self .assertTrue (text_index ['index' ]['index_array_lengths' ])
12471248
12481249 def test_create_all_fields_text_index (self ):
12491250 """
12501251 Ensure that a text index is created for all fields as expected.
12511252 """
12521253 index = self .db .create_query_index (index_type = 'text' )
12531254 self .assertIsInstance (index , TextIndex )
1255+
12541256 ddoc = self .db [index .design_document_id ]
1257+
1258+ self .assertEquals (ddoc ['_id' ], index .design_document_id )
12551259 self .assertTrue (ddoc ['_rev' ].startswith ('1-' ))
1256- self .assertEqual (ddoc ,
1257- {'_id' : index .design_document_id ,
1258- '_rev' : ddoc ['_rev' ],
1259- 'language' : 'query' ,
1260- 'views' : {},
1261- 'lists' : {},
1262- 'shows' : {},
1263- 'indexes' : {index .name : {'index' : {'index_array_lengths' : True ,
1264- 'fields' : 'all_fields' ,
1265- 'default_field' : {},
1266- 'default_analyzer' : 'keyword' ,
1267- 'selector' : {}},
1268- 'analyzer' : {'name' : 'perfield' ,
1269- 'default' : 'keyword' ,
1270- 'fields' : {'$default' : 'standard' }}}}}
1271- )
1260+
1261+ self .assertEquals (ddoc ['language' ], 'query' )
1262+ self .assertEquals (ddoc ['lists' ], {})
1263+ self .assertEquals (ddoc ['shows' ], {})
1264+ self .assertEquals (ddoc ['views' ], {})
1265+
1266+ index = ddoc ['indexes' ][index .name ]
1267+ self .assertEquals (index ['analyzer' ]['default' ], 'keyword' )
1268+ self .assertEquals (index ['analyzer' ]['fields' ], {'$default' : 'standard' })
1269+ self .assertEquals (index ['analyzer' ]['name' ], 'perfield' )
1270+ self .assertEquals (index ['index' ]['default_analyzer' ], 'keyword' )
1271+ self .assertEquals (index ['index' ]['default_field' ], {})
1272+ self .assertEquals (index ['index' ]['fields' ], 'all_fields' )
1273+ self .assertEquals (index ['index' ]['selector' ], {})
1274+ self .assertTrue (index ['index' ]['index_array_lengths' ])
12721275
12731276 def test_create_multiple_indexes_one_ddoc (self ):
12741277 """
12751278 Tests that multiple indexes of different types can be stored in one
12761279 design document.
12771280 """
1278- json_index = self .db .create_query_index (
1281+ index = self .db .create_query_index (
12791282 'ddoc001' ,
12801283 'json-index-001' ,
12811284 fields = ['name' , 'age' ]
12821285 )
1283- self .assertIsInstance (json_index , Index )
1286+ self .assertIsInstance (index , Index )
12841287 search_index = self .db .create_query_index (
12851288 'ddoc001' ,
12861289 'text-index-001' ,
@@ -1289,32 +1292,31 @@ def test_create_multiple_indexes_one_ddoc(self):
12891292 {'name' : 'age' , 'type' :'number' }]
12901293 )
12911294 self .assertIsInstance (search_index , TextIndex )
1295+
12921296 ddoc = self .db ['_design/ddoc001' ]
1297+
1298+ self .assertEquals (ddoc ['_id' ], index .design_document_id )
12931299 self .assertTrue (ddoc ['_rev' ].startswith ('2-' ))
1294- self .assertEqual (ddoc ,
1295- {'_id' : '_design/ddoc001' ,
1296- '_rev' : ddoc ['_rev' ],
1297- 'language' : 'query' ,
1298- 'lists' : {},
1299- 'shows' : {},
1300- 'views' : {'json-index-001' : {
1301- 'map' : {'fields' : {'name' : 'asc' ,
1302- 'age' : 'asc' }},
1303- 'reduce' : '_count' ,
1304- 'options' : {'def' : {'fields' : ['name' ,
1305- 'age' ]},
1306- }}},
1307- 'indexes' : {'text-index-001' : {
1308- 'index' : {'index_array_lengths' : True ,
1309- 'fields' : [{'name' : 'name' , 'type' : 'string' },
1310- {'name' : 'age' , 'type' : 'number' }],
1311- 'default_field' : {},
1312- 'default_analyzer' : 'keyword' ,
1313- 'selector' : {}},
1314- 'analyzer' : {'name' : 'perfield' ,
1315- 'default' : 'keyword' ,
1316- 'fields' : {'$default' : 'standard' }}}}}
1317- )
1300+
1301+ self .assertEquals (ddoc ['language' ], 'query' )
1302+ self .assertEquals (ddoc ['lists' ], {})
1303+ self .assertEquals (ddoc ['shows' ], {})
1304+
1305+ json_index = ddoc ['views' ]['json-index-001' ]
1306+ self .assertEquals (json_index ['map' ]['fields' ]['age' ], 'asc' )
1307+ self .assertEquals (json_index ['map' ]['fields' ]['name' ], 'asc' )
1308+ self .assertEquals (json_index ['options' ]['def' ]['fields' ], ['name' , 'age' ])
1309+ self .assertEquals (json_index ['reduce' ], '_count' )
1310+
1311+ text_index = ddoc ['indexes' ]['text-index-001' ]
1312+ self .assertEquals (text_index ['analyzer' ]['default' ], 'keyword' )
1313+ self .assertEquals (text_index ['analyzer' ]['fields' ]['$default' ], 'standard' )
1314+ self .assertEquals (text_index ['analyzer' ]['name' ], 'perfield' )
1315+ self .assertEquals (text_index ['index' ]['default_analyzer' ], 'keyword' )
1316+ self .assertEquals (text_index ['index' ]['default_field' ], {})
1317+ self .assertEquals (text_index ['index' ]['fields' ], [{'name' : 'name' , 'type' : 'string' }, {'name' : 'age' , 'type' : 'number' }])
1318+ self .assertEquals (text_index ['index' ]['selector' ], {})
1319+ self .assertTrue (text_index ['index' ]['index_array_lengths' ])
13181320
13191321 def test_create_query_index_failure (self ):
13201322 """
@@ -1381,28 +1383,32 @@ def test_get_query_indexes_raw(self):
13811383 """
13821384 self .db .create_query_index ('ddoc001' , 'json-idx-001' , fields = ['name' , 'age' ])
13831385 self .db .create_query_index ('ddoc001' , 'text-idx-001' , 'text' )
1384- self .assertEqual (
1385- self .db .get_query_indexes (raw_result = True ),
1386- {'indexes' : [
1387- {'ddoc' : None ,
1388- 'name' : '_all_docs' ,
1389- 'type' : 'special' ,
1390- 'def' : {'fields' : [{'_id' : 'asc' }]}},
1391- {'ddoc' : '_design/ddoc001' ,
1392- 'name' : 'json-idx-001' ,
1393- 'type' : 'json' ,
1394- 'def' : {'fields' : [{'name' : 'asc' }, {'age' : 'asc' }]}},
1395- {'ddoc' : '_design/ddoc001' ,
1396- 'name' : 'text-idx-001' ,
1397- 'type' : 'text' ,
1398- 'def' : {'index_array_lengths' : True ,
1399- 'fields' : [],
1400- 'default_field' : {},
1401- 'default_analyzer' : 'keyword' ,
1402- 'selector' : {}}}
1403- ],
1404- 'total_rows' : 3 }
1405- )
1386+
1387+ indexes = self .db .get_query_indexes (raw_result = True )
1388+
1389+ self .assertEquals (indexes ['total_rows' ], 3 )
1390+
1391+ all_docs_index = indexes ['indexes' ][0 ]
1392+ self .assertEquals (all_docs_index ['ddoc' ], None )
1393+ self .assertEquals (all_docs_index ['def' ]['fields' ], [{'_id' : 'asc' }])
1394+ self .assertEquals (all_docs_index ['name' ], '_all_docs' )
1395+ self .assertEquals (all_docs_index ['type' ], 'special' )
1396+
1397+ json_index = indexes ['indexes' ][1 ]
1398+ self .assertEquals (json_index ['ddoc' ], '_design/ddoc001' )
1399+ self .assertEquals (json_index ['def' ]['fields' ], [{'name' : 'asc' }, {'age' : 'asc' }])
1400+ self .assertEquals (json_index ['name' ], 'json-idx-001' )
1401+ self .assertEquals (json_index ['type' ], 'json' )
1402+
1403+ text_index = indexes ['indexes' ][2 ]
1404+ self .assertEquals (text_index ['ddoc' ], '_design/ddoc001' )
1405+ self .assertEquals (text_index ['def' ]['default_analyzer' ], 'keyword' )
1406+ self .assertEquals (text_index ['def' ]['default_field' ], {})
1407+ self .assertEquals (text_index ['def' ]['fields' ], [])
1408+ self .assertEquals (text_index ['def' ]['selector' ], {})
1409+ self .assertEquals (text_index ['name' ], 'text-idx-001' )
1410+ self .assertEquals (text_index ['type' ], 'text' )
1411+ self .assertTrue (text_index ['def' ]['index_array_lengths' ])
14061412
14071413 def test_get_query_indexes (self ):
14081414 """
0 commit comments