aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoão Barbosa <joao.paulo.barbosa@gmail.com>2017-08-25 03:31:27 +0100
committerJoão Barbosa <joao.paulo.barbosa@gmail.com>2017-09-07 00:38:13 +0100
commit29e1dfbd9793203479b8499c55ffec2086f5ab39 (patch)
treea7a0a3a1b348daec3ac563bb14558d639f8a61f2
parentce379b47b92d6c04250c21719bb1abfb41c586ad (diff)
[test] Add bitcoin-cli -stdin and -stdinrpcpass functional tests
-rwxr-xr-xtest/functional/bitcoin_cli.py24
1 files changed, 16 insertions, 8 deletions
diff --git a/test/functional/bitcoin_cli.py b/test/functional/bitcoin_cli.py
index 04847252eb..ffed5b0d33 100755
--- a/test/functional/bitcoin_cli.py
+++ b/test/functional/bitcoin_cli.py
@@ -4,7 +4,7 @@
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
"""Test bitcoin-cli"""
from test_framework.test_framework import BitcoinTestFramework
-from test_framework.util import assert_equal
+from test_framework.util import assert_equal, assert_raises_process_error, get_auth_cookie
class TestBitcoinCli(BitcoinTestFramework):
@@ -16,16 +16,24 @@ class TestBitcoinCli(BitcoinTestFramework):
"""Main test logic"""
self.log.info("Compare responses from gewalletinfo RPC and `bitcoin-cli getwalletinfo`")
- cli_get_info = self.nodes[0].cli.getwalletinfo()
- rpc_get_info = self.nodes[0].getwalletinfo()
-
- assert_equal(cli_get_info, rpc_get_info)
+ cli_response = self.nodes[0].cli.getwalletinfo()
+ rpc_response = self.nodes[0].getwalletinfo()
+ assert_equal(cli_response, rpc_response)
self.log.info("Compare responses from getblockchaininfo RPC and `bitcoin-cli getblockchaininfo`")
- cli_get_info = self.nodes[0].cli.getblockchaininfo()
- rpc_get_info = self.nodes[0].getblockchaininfo()
+ cli_response = self.nodes[0].cli.getblockchaininfo()
+ rpc_response = self.nodes[0].getblockchaininfo()
+ assert_equal(cli_response, rpc_response)
+
+ user, password = get_auth_cookie(self.nodes[0].datadir)
+
+ self.log.info("Test -stdinrpcpass option")
+ assert_equal(0, self.nodes[0].cli('-rpcuser=%s' % user, '-stdinrpcpass', input=password).getblockcount())
+ assert_raises_process_error(1, "incorrect rpcuser or rpcpassword", self.nodes[0].cli('-rpcuser=%s' % user, '-stdinrpcpass', input="foo").echo)
- assert_equal(cli_get_info, rpc_get_info)
+ self.log.info("Test -stdin and -stdinrpcpass")
+ assert_equal(["foo", "bar"], self.nodes[0].cli('-rpcuser=%s' % user, '-stdin', '-stdinrpcpass', input=password + "\nfoo\nbar").echo())
+ assert_raises_process_error(1, "incorrect rpcuser or rpcpassword", self.nodes[0].cli('-rpcuser=%s' % user, '-stdin', '-stdinrpcpass', input="foo").echo)
if __name__ == '__main__':
TestBitcoinCli().main()