@@ -91,17 +91,16 @@ def run_test(self):
91
91
assert_equal (200 , rpccall (self .nodes [0 ], self .strange_users [4 ], "getblockcount" ).status )
92
92
93
93
self .test_users_permissions ()
94
- self .test_rpcwhitelistdefault_0_no_permissions ( )
94
+ self .test_rpcwhitelistdefault_permissions ( 0 , 200 )
95
95
96
96
# Replace file configurations
97
97
self .nodes [0 ].replace_in_config ([("rpcwhitelistdefault=0" , "rpcwhitelistdefault=1" )])
98
98
with open (self .nodes [0 ].datadir_path / "bitcoin.conf" , 'a' , encoding = 'utf8' ) as f :
99
99
f .write ("rpcwhitelist=__cookie__:getblockcount,getblockchaininfo,getmempoolinfo,stop\n " )
100
100
self .restart_node (0 )
101
101
102
- # Test rpcwhitelistdefault=1
103
102
self .test_users_permissions ()
104
- self .test_rpcwhitelistdefault_1_no_permissions ( )
103
+ self .test_rpcwhitelistdefault_permissions ( 1 , 403 )
105
104
106
105
def test_users_permissions (self ):
107
106
"""
@@ -118,27 +117,18 @@ def test_users_permissions(self):
118
117
self .log .info (f"[{ user [0 ]} ]: Testing non-permitted permission: getblockchaininfo" )
119
118
assert_equal (403 , rpccall (self .nodes [0 ], user , "getblockchaininfo" ).status )
120
119
121
- def test_rpcwhitelistdefault_0_no_permissions (self ):
120
+ def test_rpcwhitelistdefault_permissions (self , default_value , expected_status ):
122
121
"""
123
- * rpcwhitelistdefault=0
122
+ * rpcwhitelistdefault={default_value}
124
123
* No Permissions defined
125
- Expected result: * strangedude6 (not whitelisted) can access any method
124
+ Expected result: strangedude6 (not whitelisted) access is determined by default_value
125
+ When default_value=0: expects 200
126
+ When default_value=1: expects 403
126
127
"""
127
- unrestricted_user = self .strange_users [6 ]
128
+ user = self .strange_users [6 ] # strangedude6
128
129
for permission in ["getbestblockhash" , "getblockchaininfo" ]:
129
- self .log .info (f"[{ unrestricted_user [0 ]} ]: Testing unrestricted user permission ({ permission } )" )
130
- assert_equal (200 , rpccall (self .nodes [0 ], unrestricted_user , permission ).status )
131
-
132
- def test_rpcwhitelistdefault_1_no_permissions (self ):
133
- """
134
- * rpcwhitelistdefault=1
135
- * No Permissions defined
136
- Expected result: * strangedude6 (not whitelisted) can not access any method
137
- """
138
-
139
- for permission in ["getbestblockhash" , "getblockchaininfo" ]:
140
- self .log .info (f"[{ self .strange_users [6 ][0 ]} ]: Testing rpcwhitelistdefault=1 no specified permission ({ permission } )" )
141
- assert_equal (403 , rpccall (self .nodes [0 ], self .strange_users [6 ], permission ).status )
130
+ self .log .info (f"[{ user [0 ]} ]: Testing rpcwhitelistdefault={ default_value } no specified permission ({ permission } )" )
131
+ assert_equal (expected_status , rpccall (self .nodes [0 ], user , permission ).status )
142
132
143
133
144
134
if __name__ == "__main__" :
0 commit comments