def test_basic_settings(): # remove existing DB shutil.rmtree(db1, True) # create new DB H.hashdb(["create", db1, "-p1024", "-m3", "-a 128", "-t 7", "--bloom=disabled", "--bloom_kM=4:14"]) # validate settings parameters settings = H.parse_settings(db1) H.int_equals(settings['settings_version'], 2) H.int_equals(settings['byte_alignment'], 128) H.int_equals(settings['hash_truncation'], 7) H.int_equals(settings['hash_block_size'], 1024) H.int_equals(settings['maximum_hash_duplicates'], 3) H.bool_equals(settings['bloom_used'], False) H.int_equals(settings['bloom_k_hash_functions'], 4) H.int_equals(settings['bloom_M_hash_size'], 14) # byte alignment boundary H.write_temp_dfxml_hash(byte_run_len=1024) changes = H.parse_changes(H.hashdb(["import", db1, "temp_dfxml_hash"])) H.int_equals(changes['hashes_inserted'], 1)
def test_rebuild_bloom(): bloom_path = os.path.join(db1, "bloom_filter") # create DB shutil.rmtree(db1, True) H.hashdb(["create", db1]) H.bool_equals(os.path.exists(bloom_path), True) H.hashdb(["rebuild_bloom", db1, "--bloom", "disabled"]) H.bool_equals(os.path.exists(bloom_path), False) H.hashdb(["rebuild_bloom", db1]) H.bool_equals(os.path.exists(bloom_path), True)