Automated testing of mappings in RPC server registration and client arg conversion #10751
issue TheBlueMatt openend this issue on July 5, 2017-
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.
-
luke-jr commented at 10:46 pm on July 5, 2017: memberI agree. But I wonder if it’s possible to just use the main RPC arg list rather than having two mapping lists?
-
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?
-
fanquake added the label RPC/REST/ZMQ on Jul 6, 2017
-
fanquake added the label Tests on Jul 6, 2017
-
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.
-
MarcoFalke referenced this in commit 7fcd61b261 on Sep 13, 2017
-
MarcoFalke commented at 4:48 pm on November 11, 2017: member@laanwj Fixed this. Thx!
-
MarcoFalke closed this on Nov 11, 2017
-
PastaPastaPasta referenced this in commit 94b9944a06 on Sep 24, 2019
-
PastaPastaPasta referenced this in commit 7085b31845 on Dec 21, 2019
-
PastaPastaPasta referenced this in commit e411886030 on Jan 2, 2020
-
PastaPastaPasta referenced this in commit a14339e4f4 on Jan 4, 2020
-
PastaPastaPasta referenced this in commit eb4fece37d on Jan 4, 2020
-
PastaPastaPasta referenced this in commit c442648c19 on Jan 10, 2020
-
PastaPastaPasta referenced this in commit 55d0336348 on Jan 10, 2020
-
PastaPastaPasta referenced this in commit 3ca3c65897 on Jan 10, 2020
-
PastaPastaPasta referenced this in commit 872204e0a2 on Jan 12, 2020
-
ckti referenced this in commit f18f4dc2bf on Mar 28, 2021
-
DrahtBot locked this on Sep 8, 2021
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-11-17 21:12 UTC
More mirrored repositories can be found on mirror.b10c.me