HomePhabricator

Merge #13747: tests: Skip P2PConnection's is_closing() check when not available

Description

Merge #13747: tests: Skip P2PConnection's is_closing() check when not available

Summary:
64b9f27e0e Skip is_closing() check when not available. (Daniel Kraft)

Pull request description:

#13715 introduced a new check for `_transport.is_closing()` in mininode's `P2PConnection`'s.  This function is [only available from Python 3.4.4](https://docs.python.org/3.4/library/asyncio-protocol.html#asyncio.BaseTransport.is_closing), though, while Bitcoin Core is supposed to support all Python 3.4 versions.

In this change, we make the check conditional on `is_closing` being available.  If it is not, then we revert to the behaviour before the check was introduced; this means that #13579 is not fixed for old systems, but at least the tests work as they used to do before.

This includes a small refactoring from a one-line lambda to an inline function, because this makes the code easier to read with more and more conditions being added.

Fixes #13745.

Tree-SHA512: 15be03b8b49c40a946c5b354c5974858d14dc46283ad48ee25d9e269377077ce741c6b379b3f6581ab981cb65be799809afbb99da278caaa2d8d870fa4fb748f

Backport of Core PR13747
https://github.com/bitcoin/bitcoin/pull/13747/files
Completes T677

Test Plan: test_runner.py

Reviewers: #bitcoin_abc, deadalnix, Fabien

Reviewed By: #bitcoin_abc, Fabien

Subscribers: Fabien

Differential Revision: https://reviews.bitcoinabc.org/D4019

Details

Provenance
MarcoFalke <falke.marco@gmail.com>Authored on Jul 23 2018, 14:04
jasonbcoxCommitted on Sep 9 2019, 16:32
jasonbcoxPushed on Sep 9 2019, 16:32
Reviewer
Restricted Project
Differential Revision
D4019: Merge #13747: tests: Skip P2PConnection's is_closing() check when not available
Parents
rABCbb86d8de9a17: Merge #13916: qa: wait_for_verack by default
Branches
Unknown
Tags
Unknown