4
4
# file COPYING or http://www.opensource.org/licenses/mit-license.php.
5
5
"""Test bitcoin-cli"""
6
6
from test_framework .test_framework import BitcoinTestFramework
7
- from test_framework .util import assert_equal
7
+ from test_framework .util import assert_equal , assert_raises_process_error , get_auth_cookie
8
8
9
9
class TestBitcoinCli (BitcoinTestFramework ):
10
10
@@ -16,16 +16,24 @@ def run_test(self):
16
16
"""Main test logic"""
17
17
18
18
self .log .info ("Compare responses from gewalletinfo RPC and `bitcoin-cli getwalletinfo`" )
19
- cli_get_info = self .nodes [0 ].cli .getwalletinfo ()
20
- rpc_get_info = self .nodes [0 ].getwalletinfo ()
21
-
22
- assert_equal (cli_get_info , rpc_get_info )
19
+ cli_response = self .nodes [0 ].cli .getwalletinfo ()
20
+ rpc_response = self .nodes [0 ].getwalletinfo ()
21
+ assert_equal (cli_response , rpc_response )
23
22
24
23
self .log .info ("Compare responses from getblockchaininfo RPC and `bitcoin-cli getblockchaininfo`" )
25
- cli_get_info = self .nodes [0 ].cli .getblockchaininfo ()
26
- rpc_get_info = self .nodes [0 ].getblockchaininfo ()
24
+ cli_response = self .nodes [0 ].cli .getblockchaininfo ()
25
+ rpc_response = self .nodes [0 ].getblockchaininfo ()
26
+ assert_equal (cli_response , rpc_response )
27
+
28
+ user , password = get_auth_cookie (self .nodes [0 ].datadir )
29
+
30
+ self .log .info ("Test -stdinrpcpass option" )
31
+ assert_equal (0 , self .nodes [0 ].cli ('-rpcuser=%s' % user , '-stdinrpcpass' , input = password ).getblockcount ())
32
+ assert_raises_process_error (1 , "incorrect rpcuser or rpcpassword" , self .nodes [0 ].cli ('-rpcuser=%s' % user , '-stdinrpcpass' , input = "foo" ).echo )
27
33
28
- assert_equal (cli_get_info , rpc_get_info )
34
+ self .log .info ("Test -stdin and -stdinrpcpass" )
35
+ assert_equal (["foo" , "bar" ], self .nodes [0 ].cli ('-rpcuser=%s' % user , '-stdin' , '-stdinrpcpass' , input = password + "\n foo\n bar" ).echo ())
36
+ assert_raises_process_error (1 , "incorrect rpcuser or rpcpassword" , self .nodes [0 ].cli ('-rpcuser=%s' % user , '-stdin' , '-stdinrpcpass' , input = "foo" ).echo )
29
37
30
38
if __name__ == '__main__' :
31
39
TestBitcoinCli ().main ()
0 commit comments