Git Product home page Git Product logo

Comments (8)

tarcieri avatar tarcieri commented on August 24, 2024

@liamsi can we figure out a way to run the currently #[ignore]d integration tests in CI? I think that'd be the ideal way to spot incompatibilities

from tendermint-rs.

liamsi avatar liamsi commented on August 24, 2024

Yes, that would be ideal! A naive approach that should work: grab a docker image (with the latest / a pinned tendermint version), pull in tendermint-rs source, spin up a single tendermint node and run the ignored tests against this node (via cargo test -- --ignored). Wasn't there a script that done exactly this in the past?

It makes sense to sync with @greg-szabo and @thanethomson on this too. Not likely that I'll work on this this year but I I'll open a PR with a fix for the regressions.

from tendermint-rs.

liamsi avatar liamsi commented on August 24, 2024

#169 surfaced new incompatibilities with the latest tendermint version.

from tendermint-rs.

liamsi avatar liamsi commented on August 24, 2024

As mentioned above the spec defines:

An identifier established by the Client that MUST contain a String, Number, or NULL value if included.

https://www.jsonrpc.org/specification#request_object

I'll go on and change the Id to be a enum to match above behaviour instead of currently a String only id: https://github.com/interchainio/tendermint-rs/blob/471ac8faa79c3072a220e09228bffae157fab2f0/tendermint/src/rpc/id.rs#L8

This resurfaced with: #181

from tendermint-rs.

greg-szabo avatar greg-szabo commented on August 24, 2024

I think this has been fixed with #183. The resolution (for 0.32) was to introduce the Rust version of omitempty for the structures.

Oh, I see the id thing is mentioned here too. That's not fixed yet. But CI works, so I'm guessing we're not testing for the id thingy?

from tendermint-rs.

liamsi avatar liamsi commented on August 24, 2024

so I'm guessing we're not testing for the id thingy

Yes, the JSON-only tests still use a string based ID (see all files here). When I run a tendermint instance locally it returns an integer though (ad do all examples in https://docs.tendermint.com/master/rpc/). Interestingly, gaia seems to return a string based ID, e.g. see https://rpc.cosmos.network/commit?height=1

That said, we might not explicitly test for the ID thingy but it's effectively parsed on each test / rpc call.

from tendermint-rs.

liamsi avatar liamsi commented on August 24, 2024

@liamsi Can we close this issue? Integration tests run and although they are not mandatory, they are a good indicator of issues.

As far as I can see all known issues are fixed. I have another comment on how to improve the integration test situation but I'll open a separate issue for this or use the #120 to track this.

from tendermint-rs.

liamsi avatar liamsi commented on August 24, 2024

Closing

from tendermint-rs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.