Pagure: Fix handling of threshold_reached: None

Threshold_reached will be None (in the API) if no minimal score
to merge PR is configured. So the value needs to be handled
as True because the threshold is by default reached in that case.

Change-Id: I103c9f601e5362f451647fb3597fa790df481dd6
This commit is contained in:
Fabien Boucher 2019-10-25 10:09:12 +02:00
parent 81e3508938
commit fa06cf69e1
2 changed files with 7 additions and 2 deletions

View File

@ -460,7 +460,8 @@ class TestPagureDriver(ZuulTestCase):
self.assertEqual(0, len(self.history))
# Set the score threshold as reached
A.threshold_reached = True
# Here we use None that means no specific score is required
A.threshold_reached = None
self.fake_pagure.emitEvent(A.getPullRequestOpenedEvent())
self.waitUntilSettled()
# connection.canMerge is not validated

View File

@ -785,9 +785,13 @@ class PagureConnection(BaseConnection):
if self._hasRequiredStatusChecks(change):
ci_flag = True
# By default project get -1 in "Minimum score to merge pull-request"
# But this makes the API to return None for threshold_reached. We need
# to handle this case as threshold_reached: True because it means
# no minimal score configured.
threshold = pr.get('threshold_reached')
if threshold is None:
self.log.debug("No threshold_reached attribute found")
threshold = True
log.debug(
'PR %s#%s mergeability details mergeable: %s '