Пример #1
0
    def test_nameFromId(self):
        """Test page id from name"""
        testPages = { \
             290: {'name': 'A'},
             3783: {'name': 'B'},
             12266: {'name': 'Genetics'},
             3954: {'name': 'Biochemistry'},
             130495: {'name': 'EBay'},
             6235: {'name': 'Cell nucleus'},
             5507057: {'name': 'Deoxyribonuclease I'},
             7955: {'name': 'DNA'}}
        #writer = mediawikicdbwriter.MediaWikiCdbWriter()
        #writer.writeCdbNameFromId(self.dir+"pageNameFromId.cdb", testPages)
        pageNameFromId = CdbDictNameFromId(self.dir + "pageNameFromId.cdb")

        # test _pack_value and _unpack_value
        expected = {'name': 'Genetics'}
        result = pageNameFromId._unpack_value(pageNameFromId._pack_value(expected))
        self.assertEqual(result, expected)

        # test _pack_key and _unpack_key
        expected = 12266
        result = pageNameFromId._unpack_key(pageNameFromId._pack_key(expected))
        self.assertEqual(result, expected)

        pageNameFromId.clear()
        pageNameFromId.update(testPages)
        for i in testPages:
            expected = testPages[i]
            result = pageNameFromId[i]
            self.assertEqual(result, expected)
Пример #2
0
    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)