Skip to main content

Compare data structures containing matching CIDs of different versions and encoding

Project description


Made by the IPFS Community IRC #py-ipfs on Matrix Standard README Compliant

Compare data structures containing matching CIDs of different versions and encodings

A simple wrapper around py-cid for easily writing tests involving CIDs in datastructures.

Table of Contents


Install with pip:

pip install pytest-cid


Basic usage example:

>>> import pytest_cid
>>> cid_1 = "zb2rhfE3SX3q7Ha6UErfMqQReKsmLn73BvdDRagHDM6X1eRFN"
>>> cid_2 = "bafkreid7qoywk77r7rj3slobqfekdvs57qwuwh5d2z3sqsw52iabe3mqne"
>>> assert pytest_cid.match(cid_1) == cid_2
>>> assert pytest_cid.normalize(cid_1) == pytest_cid.normalize(cid_2)
>>> cid_struct_1 = {
... 	"Hash": "QmQcCtMgLVwvMQGu6mvsRYLjwqrZJcYtH4mboM9urWW9vX",
... 	"Name": "fsdfgh", "Size": "16"
... }
>>> cid_struct_2 = {
... 	"Hash": "f0170122021b377e527deaa9698a451fa07232d7cd9494f6553252f325559d9053b565b38",
... 	"Name": "fsdfgh", "Size": "16"
... }
>>> assert pytest_cid.match(cid_struct_1) == cid_struct_2
>>> assert pytest_cid.match(cid_struct_1) != cid_1


FIXME (Usage example covers the whole API as of 1.0.0)



Join us on Matrix or on IRC on #py-ipfs on if you have any suggestions, questions or just want to chat about IPFS and/or Python with us.

  • Please note however that, at the time of writing, the default server is severely overloaded and your messages may only arrive with extreme delay; using a different homeserver is hence highly recommended.

Bug reports

You can submit bug reports using the GitHub issue tracker.

Pull requests

Pull requests are welcome. Before submitting a new pull request, please make sure that your code passes both the code formatting check:

$ tox -e styleck

And the unit tests:

$ tox

Please make sure to include new unit tests for new features or changes in behavior.


Distributed under the terms of the Mozilla Public License 2.0 license, “pytest-cid” is free and open source software. Details may be found in the LICENSE file in this repository.

Project details

Release history Release notifications

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for pytest_cid, version 1.0.0
Filename, size File type Python version Upload date Hashes
Filename, size pytest_cid-1.0.0-py3-none-any.whl (21.9 kB) File type Wheel Python version py3 Upload date Hashes View hashes
Filename, size pytest_cid-1.0.0.tar.gz (16.8 kB) File type Source Python version None Upload date Hashes View hashes

Supported by

Elastic Elastic Search Pingdom Pingdom Monitoring Google Google BigQuery Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN SignalFx SignalFx Supporter DigiCert DigiCert EV certificate StatusPage StatusPage Status page