MCPcopy Create free account
hub / github.com/ElementsProject/elements / stop_node

Method stop_node

test/functional/test_framework/test_node.py:342–372  ·  view source on GitHub ↗

Stop the node.

(self, expected_stderr='', *, wait=0, wait_until_stopped=True)

Source from the content-addressed store, hash-verified

340 return self.version is None or self.version >= ver
341
342 def stop_node(self, expected_stderr='', *, wait=0, wait_until_stopped=True):
343 """Stop the node."""
344 if not self.running:
345 return
346 self.log.debug("Stopping node")
347 try:
348 # Do not use wait argument when testing older nodes, e.g. in feature_backwards_compatibility.py
349 if self.version_is_at_least(180000):
350 self.stop(wait=wait)
351 else:
352 self.stop()
353 except http.client.CannotSendRequest:
354 self.log.exception("Unable to stop node.")
355
356 # If there are any running perf processes, stop them.
357 for profile_name in tuple(self.perf_subprocesses.keys()):
358 self._stop_perf(profile_name)
359
360 # Check that stderr is as expected
361 self.stderr.seek(0)
362 stderr = self.stderr.read().decode('utf-8').strip()
363 if stderr != expected_stderr:
364 raise AssertionError("Unexpected stderr {} != {}".format(stderr, expected_stderr))
365
366 self.stdout.close()
367 self.stderr.close()
368
369 del self.p2ps[:]
370
371 if wait_until_stopped:
372 self.wait_until_stopped()
373
374 def is_node_stopped(self):
375 """Checks whether the node has stopped.

Callers 15

run_testMethod · 0.45
test_default_asmapMethod · 0.45
test_empty_asmapMethod · 0.45
run_testMethod · 0.45
run_testMethod · 0.45
run_testMethod · 0.45
run_testMethod · 0.45

Calls 9

version_is_at_leastMethod · 0.95
_stop_perfMethod · 0.95
wait_until_stoppedMethod · 0.95
formatMethod · 0.80
stopMethod · 0.45
seekMethod · 0.45
decodeMethod · 0.45
readMethod · 0.45
closeMethod · 0.45

Tested by

no test coverage detected