def test_pageNameFromId(self): """Test page ids""" pageIdFromName = CdbDictIdFromName("cdb/pageIdFromName.cdb") pageNameFromId = CdbDictNameFromId("cdb/pageNameFromId.cdb") for i in pageNameFromId: name = pageNameFromId[i] print "name:", name result = pageIdFromName[name['name']]['id'] #print "pagei", i, "id", id, "name", name self.assertEqual(result, i) # test keys result = pageIdFromName.keys() expected = ['A', 'B', 'Genetics', 'Biochemistry', '\xc3\x86', 'EBay', 'Cell nucleus', '\xc3\x9f', 'Deoxyribonuclease I', 'DNA'] self.assertEqual(result, expected) result = pageNameFromId.keys() expected = [290, 3783, 12266, 198274, 5507057, 3954, 7955, 184309, 6235, 130495] self.assertEqual(result, expected)
def test_idFromName(self): """Test page id from name""" testPages = { \ 'A': {'id': 290}, 'B': {'id': 3783}, 'Genetics': {'id': 12266}, 'Biochemistry': {'id': 3954}, 'EBay': {'id': 130495}, 'Cell nucleus': {'id': 6235}, 'Deoxyribonuclease I': {'id': 5507057}, 'DNA': {'id': 7955}} #writer = mediawikicdbwriter.MediaWikiCdbWriter() #writer.writeCdbIdFromName(self.dir+"pageIdFromName.cdb", testPages) pageIdFromName = CdbDictIdFromName(self.dir + "pageIdFromName.cdb") # test _pack_value and _unpack_value expected = {'id': 12266} result = pageIdFromName._unpack_value(pageIdFromName._pack_value(expected)) self.assertEqual(result, expected) # test _pack_key and _unpack_key expected = 'Genetics' result = pageIdFromName._unpack_key(pageIdFromName._pack_key(expected)) self.assertEqual(result, expected) pageIdFromName.clear() pageIdFromName.update(testPages) for i in testPages: expected = testPages[i] result = pageIdFromName[i] print "r, e", result, expected self.assertEqual(result, expected) pageIdFromName.clear() self.assertEqual(len(pageIdFromName.keys()), 0)