Improve lifetime code readability

Signed-off-by: Loren Eteval <loren.eteval@proton.me>
This commit is contained in:
Loren Eteval
2026-10-06 19:54:41 +08:00
parent a315506418
commit 67fd9fe7e4
6 changed files with 25 additions and 0 deletions
+3
View File
@@ -346,6 +346,7 @@ class EndpointInfoService(QtCore.QObject):
generation = self._generation
self.state = state
self.stateChanged.emit(state)
return self._isCurrentGeneration(generation)
@@ -355,6 +356,7 @@ class EndpointInfoService(QtCore.QObject):
generation = self._generation
self.result = result
self.resultChanged.emit(result)
return self._isCurrentGeneration(generation)
@@ -368,6 +370,7 @@ class EndpointInfoService(QtCore.QObject):
self._cached = False
self._requestInFlight = False
self._countryHint = ''
self.httpClient.cancelAll()
if not self._isCurrentGeneration(generation):
+11
View File
@@ -162,8 +162,10 @@ def runNotificationAndDnsProbe(iterations=100):
assert calls == ['first', 'last']
assert not isValid(victim)
deleteQObject(first)
deleteQObject(last)
assert not len(pool)
poolNotifications += 1
@@ -171,6 +173,7 @@ def runNotificationAndDnsProbe(iterations=100):
class PendingReply(QNetworkReply):
def abort(self):
self.setFinished(True)
self.finished.emit()
def readData(self, _maximumLength):
@@ -181,6 +184,7 @@ def runNotificationAndDnsProbe(iterations=100):
resolver = SimpleNamespace(_newResultMap=DnsResolver._newResultMap)
operation = DnsResolutionOperation(resolver, 'example.test')
results = []
operation.finished.connect(lambda *_args: results.append(True))
def beginResolve(resultMap):
@@ -192,6 +196,7 @@ def runNotificationAndDnsProbe(iterations=100):
deleteQObject(operation)
resolver._beginResolve = beginResolve
operation.start()
if boundary == 'cancel-start':
@@ -202,8 +207,11 @@ def runNotificationAndDnsProbe(iterations=100):
operation._resultMap['reference'].append(reply)
reply.finished.connect(lambda: deleteQObject(operation))
operation._timeout = 0
operation._poll()
assert reply.isFinished()
deleteQObject(reply)
assert not results
@@ -220,7 +228,9 @@ def runNotificationAndDnsProbe(iterations=100):
manager, '_clearUsageOnReconnectEnabled', return_value=True
):
manager._consumeResult(manager._generation, TrafficCounters(100, 100), 1.0)
getattr(manager, signalName).connect(lambda *_args: deleteQObject(manager))
manager._sampleReady.emit(manager._generation, TrafficCounters(10, 10), 2.0)
assert not isValid(manager)
@@ -290,6 +300,7 @@ def runNotificationAndDnsProbe(iterations=100):
if isValid(service):
assert service.state is EndpointInfoState.Disabled
assert not service._requestInFlight
deleteQObject(service)
deleteQObject(client)
+5
View File
@@ -623,9 +623,11 @@ class ConnectionStartupAsyncTest(TestCase):
for _ in range(20):
resolver = mock.Mock()
resolver._newResultMap = DnsResolver._newResultMap
operation = DnsResolutionOperation(resolver, 'example.test')
results = []
destroyed = []
operation.finished.connect(lambda *_args: results.append(True))
operation.destroyed.connect(lambda *_args: destroyed.append(True))
@@ -665,6 +667,7 @@ class ConnectionStartupAsyncTest(TestCase):
class PendingReply(QtNetwork.QNetworkReply):
def abort(self):
self.setFinished(True)
self.finished.emit()
def readData(self, _maximumLength):
@@ -673,10 +676,12 @@ class ConnectionStartupAsyncTest(TestCase):
for _ in range(20):
resolver = mock.Mock()
resolver._newResultMap = DnsResolver._newResultMap
operation = DnsResolutionOperation(resolver, 'example.test', timeout=1)
reply = PendingReply()
results = []
destroyed = []
operation.finished.connect(lambda *_args: results.append(True))
operation.destroyed.connect(lambda *_args: destroyed.append(True))
operation._resultMap['depth'] = 1
+3
View File
@@ -342,6 +342,7 @@ class EndpointInfoServiceTest(unittest.TestCase):
service.refresh()
processQtEvents()
qtErrors.assert_not_called()
self.assertEqual(triggered, [True])
@@ -365,7 +366,9 @@ class EndpointInfoServiceTest(unittest.TestCase):
"""The latest preference wins even when a listener reverses the transition."""
service, controller, client = self._service()
service.setPageVisible(True)
generation = service._generation
service.enabledChanged.connect(
lambda enabled: service.setEnabled(True) if not enabled else None
)
+1
View File
@@ -217,6 +217,7 @@ class MixinNotificationLifetimeTest(unittest.TestCase):
victim = Participant('victim')
last = Participant('last')
first.victim = victim
victim.destroyed.connect(lambda *_args: destroyed.append(True))
try:
+2
View File
@@ -652,6 +652,7 @@ class TrafficStatsManagerTest(unittest.TestCase):
):
manager.connectedCallback()
processQtEvents()
qtErrors.assert_not_called()
if boundary == 'reset':
@@ -721,6 +722,7 @@ class TrafficStatsManagerTest(unittest.TestCase):
expected = signalNames[
: signalNames.index(signalName) + 1
]
self.assertEqual(delivered, list(expected))
if action == 'destroy':