Automated testing of mappings in RPC server registration and client arg conversion #10751

issue TheBlueMatt openend this issue on July 5, 2017
  1. TheBlueMatt commented at 6:54 pm on July 5, 2017: member
    #10747 fixed an issue where out client-side args type conversions got de-synced from our server-side named arguments -> arg position mappings. It would be super nice to have some kind of automated tester for that as I’m afraid simple typos will go entirely unnoticed.
  2. luke-jr commented at 10:46 pm on July 5, 2017: member
    I agree. But I wonder if it’s possible to just use the main RPC arg list rather than having two mapping lists?
  3. TheBlueMatt commented at 10:52 pm on July 5, 2017: member

    I thought about that, might lead to having much too many deps for -cli, but we could maybe go the other way - have a separate table for name -> arg mappings and use that.

    On July 5, 2017 6:46:43 PM EDT, Luke Dashjr notifications@github.com wrote:

    I agree. But I wonder if it’s possible to just use the main RPC arg list rather than having two mapping lists?

  4. fanquake added the label RPC/REST/ZMQ on Jul 6, 2017
  5. fanquake added the label Tests on Jul 6, 2017
  6. laanwj commented at 9:54 am on July 6, 2017: member

    I actually have a script for this, just need to hook it in (and update it for the new “a|b” syntax).

    I agree. But I wonder if it’s possible to just use the main RPC arg list rather than having two mapping lists?

    The problem is indeed one of dependencies. There is no way the -cli can access the server implementation files (rpc/misc.cpp etc). which contain the dispatch tables.

    An old idea is to remove all command-specific knowledge from the cli and instead request a JSON document from the server that describes the interface. This, in combination with smart caching to prevent extra roundtrips, could work.

  7. MarcoFalke referenced this in commit 7fcd61b261 on Sep 13, 2017
  8. MarcoFalke commented at 4:48 pm on November 11, 2017: member
    @laanwj Fixed this. Thx!
  9. MarcoFalke closed this on Nov 11, 2017

  10. PastaPastaPasta referenced this in commit 94b9944a06 on Sep 24, 2019
  11. PastaPastaPasta referenced this in commit 7085b31845 on Dec 21, 2019
  12. PastaPastaPasta referenced this in commit e411886030 on Jan 2, 2020
  13. PastaPastaPasta referenced this in commit a14339e4f4 on Jan 4, 2020
  14. PastaPastaPasta referenced this in commit eb4fece37d on Jan 4, 2020
  15. PastaPastaPasta referenced this in commit c442648c19 on Jan 10, 2020
  16. PastaPastaPasta referenced this in commit 55d0336348 on Jan 10, 2020
  17. PastaPastaPasta referenced this in commit 3ca3c65897 on Jan 10, 2020
  18. PastaPastaPasta referenced this in commit 872204e0a2 on Jan 12, 2020
  19. ckti referenced this in commit f18f4dc2bf on Mar 28, 2021
  20. DrahtBot locked this on Sep 8, 2021

github-metadata-mirror

This is a metadata mirror of the GitHub repository bitcoin/bitcoin. This site is not affiliated with GitHub. Content is generated from a GitHub metadata backup.
generated: 2024-10-05 07:12 UTC

This site is hosted by @0xB10C
More mirrored repositories can be found on mirror.b10c.me