-
Notifications
You must be signed in to change notification settings - Fork 16
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feature(integrations): add an integrations test harness for substreams modules #63
Conversation
072cd87
to
5ff71cf
Compare
2f457f1
to
337976f
Compare
let's just use substreams CLI |
b5a1bdf
to
220e19e
Compare
After talking with @this-username-is-taken today, need to give integrations further thought. Would like to compare the output of the subgraph against the output of the substreams module. Need to do some investigations into the best way to automate a subgraph <> substreams output comparison. For now, the integration harness is just checking the output from a single module against subsequent runs. When changes to the schema are made it will change the result and fail tests. Therefore, there needs to be a version of the module associated with tests. Since schemas typically only have major versions, we may wish to adopt a package version that is tightly coupled with the versioning of the protobuf package. |
The integrations crate provides a module test harness, calling the substreams cli to run each of the modules and cache the results to be compared on the next run. Cached results are saved in the integrations/target/ folder and can be run locally. The cached results are not committed to the repository, instead they can be restored in the github ci workflow for comparison. NOTE: There is some beginning work on calling the substreams grpc blocks endpoint directly using the substreams playground example as a guide, however, I have not been able to call the endpoint successfully and reverting to using the substreams CLI in the meantime. Signed-off-by: Ryan Tate <ryan.michael.tate@gmail.com>
Signed-off-by: Ryan Tate <ryan.michael.tate@gmail.com>
Signed-off-by: Ryan Tate <ryan.michael.tate@gmail.com>
Signed-off-by: Ryan Tate <ryan.michael.tate@gmail.com>
Signed-off-by: Ryan Tate <ryan.michael.tate@gmail.com>
4289ce1
to
d5c044d
Compare
Signed-off-by: Ryan Tate <ryan.michael.tate@gmail.com>
d5c044d
to
54b331c
Compare
Resolves #62
The integrations crate provides a module test harness, calling the
substreams
cli to run each of the modules and cache the results to be compared on the next run.Cached results are saved in the
integrations/target/
folder and can be run locally. The cached results are not committed to the repository, instead they can be restored in the github ci workflow for comparison.NOTE: There is some beginning work on calling the substreams grpc
blocks
endpoint directly using the substreams playground example as a guide, however, I have not been able to call the endpoint successfully and reverting to using the substreams CLI in the meantime.