MCPcopy Index your code
hub / github.com/HelloZeroNet/ZeroNet / testHashfield

Method testHashfield

src/Test/TestPeer.py:55–76  ·  view source on GitHub ↗
(self, site)

Source from the content-addressed store, hash-verified

53 client.stop()
54
55 def testHashfield(self, site):
56 sample_hash = list(site.content_manager.contents["content.json"]["files_optional"].values())[0]["sha512"]
57
58 site.storage.verifyFiles(quick_check=True) # Find what optional files we have
59
60 # Check if hashfield has any files
61 assert site.content_manager.hashfield
62 assert len(site.content_manager.hashfield) > 0
63
64 # Check exsist hash
65 assert site.content_manager.hashfield.getHashId(sample_hash) in site.content_manager.hashfield
66
67 # Add new hash
68 new_hash = CryptHash.sha512sum(io.BytesIO(b"hello"))
69 assert site.content_manager.hashfield.getHashId(new_hash) not in site.content_manager.hashfield
70 assert site.content_manager.hashfield.appendHash(new_hash)
71 assert not site.content_manager.hashfield.appendHash(new_hash) # Don't add second time
72 assert site.content_manager.hashfield.getHashId(new_hash) in site.content_manager.hashfield
73
74 # Remove new hash
75 assert site.content_manager.hashfield.removeHash(new_hash)
76 assert site.content_manager.hashfield.getHashId(new_hash) not in site.content_manager.hashfield
77
78 def testHashfieldExchange(self, file_server, site, site_temp):
79 server1 = file_server

Callers

nothing calls this directly

Calls 5

valuesMethod · 0.80
verifyFilesMethod · 0.80
appendHashMethod · 0.80
removeHashMethod · 0.80
getHashIdMethod · 0.45

Tested by

no test coverage detected