Changeset View
Changeset View
Standalone View
Standalone View
test/functional/test_runner.py
Show First 20 Lines • Show All 765 Lines • ▼ Show 20 Lines | class RPCCoverage(): | ||||
def cleanup(self): | def cleanup(self): | ||||
return shutil.rmtree(self.dir) | return shutil.rmtree(self.dir) | ||||
def _get_uncovered_rpc_commands(self): | def _get_uncovered_rpc_commands(self): | ||||
""" | """ | ||||
Return a set of currently untested RPC commands. | Return a set of currently untested RPC commands. | ||||
""" | """ | ||||
# This is shared from `test/functional/test-framework/coverage.py` | # This is shared from `test/functional/test_framework/coverage.py` | ||||
reference_filename = 'rpc_interface.txt' | reference_filename = 'rpc_interface.txt' | ||||
coverage_file_prefix = 'coverage.' | coverage_file_prefix = 'coverage.' | ||||
coverage_ref_filename = os.path.join(self.dir, reference_filename) | coverage_ref_filename = os.path.join(self.dir, reference_filename) | ||||
coverage_filenames = set() | coverage_filenames = set() | ||||
all_cmds = set() | all_cmds = set() | ||||
covered_cmds = set() | # Consider RPC generate covered, because it is overloaded in | ||||
# test_framework/test_node.py and not seen by the coverage check. | |||||
covered_cmds = set({'generate'}) | |||||
if not os.path.isfile(coverage_ref_filename): | if not os.path.isfile(coverage_ref_filename): | ||||
raise RuntimeError("No coverage reference found") | raise RuntimeError("No coverage reference found") | ||||
with open(coverage_ref_filename, 'r', encoding="utf8") as file: | with open(coverage_ref_filename, 'r', encoding="utf8") as file: | ||||
all_cmds.update([line.strip() for line in file.readlines()]) | all_cmds.update([line.strip() for line in file.readlines()]) | ||||
for root, _, files in os.walk(self.dir): | for root, _, files in os.walk(self.dir): | ||||
▲ Show 20 Lines • Show All 109 Lines • Show Last 20 Lines |