def test_reader_suggest_search( all_zims, filename, entry_count, suggestion_string, suggestion_count, suggestion_result, search_string, search_count, search_result, ): zim = Archive(all_zims / filename) # suggestion and search results assert zim.entry_count == entry_count assert ( zim.get_estimated_suggestions_results_count(suggestion_string) == suggestion_count ) assert list(zim.suggest(suggestion_string)) == suggestion_result assert zim.get_estimated_search_results_count(search_string) == search_count assert list(zim.search(search_string)) == search_result
item = TestItem("Monadical_SAS", "Monadical", content) item2 = TestItem("Monadical_2", "Monadical 2", content2) zim_file_path = f"kiwix-test-{uuid.uuid1()}.zim" print(f"Testing writer for {zim_file_path}") with Creator(zim_file_path).config_indexing(True, "eng").config_minclustersize( 512 ) as zc: zc.set_mainpath("Monadical") zc.add_item(item) zc.add_item(item2) for name, value in { "creator": "python-libzim", "description": "Created in python", "name": "Hola", "publisher": "Monadical", "title": "Test Zim", }.items(): zc.add_metadata(name.title(), value.encode("UTF-8")) print("Testing reader") zim = Archive(zim_file_path) entry = zim.get_entry_by_path("Monadical") print(f"Main entry is at {zim.main_entry.get_item().path}") print(f"Entry {entry.title} at {entry.path} is {entry.get_item().size}b:") print(bytes(entry.get_item().content).decode("UTF-8"))
# -*- coding:utf-8 -*- from libzim.reader import Archive zim = Archive("/home/xiaohe/wikiZIM/wikipedia_zh_all.zim") print(f"Main entry is at {zim.main_entry.get_item().path}") entry = zim.get_entry_by_path("性交") print(f"Entry {entry.title} at {entry.path} is {entry.get_item().size}b:") print(bytes(entry.get_item().content).decode("UTF-8"))
def test_reader_has_index(all_zims, filename, has_fulltext_index, has_title_index): zim = Archive(all_zims / filename) # we should not get a fulltext index but title should assert zim.has_fulltext_index is has_fulltext_index assert zim.has_title_index is has_title_index
def test_creator_filename(fpath): with Creator(fpath) as c: assert c.filename == fpath assert Archive(fpath).filename == fpath