Skip to content

Commit

Permalink
Merge pull request #1235 from djmitche/gsp-warnings
Browse files Browse the repository at this point in the history
test for and consume warnings about legacy GSP
  • Loading branch information
sa2ajj committed Sep 29, 2014
2 parents ca0a563 + 0e6ccb4 commit a25b439
Showing 1 changed file with 20 additions and 4 deletions.
24 changes: 20 additions & 4 deletions master/buildbot/test/unit/test_status_gerrit.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,10 @@
from twisted.trial import unittest


import warnings
warnings.filterwarnings('error', message='.*Gerrit status')


def testReviewCB(builderName, build, result, status, arg):
verified = 1 if result == SUCCESS else -1
return makeReviewResult(str({'name': builderName, 'result': result}),
Expand Down Expand Up @@ -107,7 +111,8 @@ class TestGerritStatusPush(unittest.TestCase):
}
THING_URL = 'http://thing.example.com'

def run_fake_summary_build(self, gsp, buildResults, finalResult, resultText):
def run_fake_summary_build(self, gsp, buildResults, finalResult,
resultText, expWarning=False):
buildpairs = []
i = 0
for i in xrange(len(buildResults)):
Expand Down Expand Up @@ -166,6 +171,11 @@ def check(_):
info.append({'name': "Builder-%d" % i, 'result': buildResults[i],
'resultText': resultText[i], 'text': 'buildText',
'url': self.THING_URL})
if expWarning:
self.assertEqual([w['message'] for w in self.flushWarnings()],
['The Gerrit status callback uses the old '
'way to communicate results. The outcome '
'might be not what is expected.'])
return str(info)
return d

Expand Down Expand Up @@ -194,7 +204,7 @@ def check_summary_build_legacy(self, buildResults, finalResult, resultText,
gsp = _get_prepared_gsp(summaryCB=legacyTestSummaryCB)

d = self.run_fake_summary_build(gsp, buildResults, finalResult,
resultText)
resultText, expWarning=True)

@d.addCallback
def check(msg):
Expand Down Expand Up @@ -266,12 +276,18 @@ def test_buildsetComplete_mixed_sends_summary_review_legacy(self):
verifiedScore=-1)
return d

def run_fake_single_build(self, gsp, buildResult):
def run_fake_single_build(self, gsp, buildResult, expWarning=False):
build = FakeBuildStatus(name="build")
build.getProperty = self.TEST_PROPS.get

gsp.buildFinished('dummyBuilder', build, buildResult)

if expWarning:
self.assertEqual([w['message'] for w in self.flushWarnings()],
['The Gerrit status callback uses the old '
'way to communicate results. The outcome '
'might be not what is expected.'])

return defer.succeed(str({'name': 'dummyBuilder', 'result': buildResult}))

# same goes for check_single_build and check_single_build_legacy
Expand All @@ -293,7 +309,7 @@ def check(msg):
def check_single_build_legacy(self, buildResult, verifiedScore):
gsp = _get_prepared_gsp(reviewCB=legacyTestReviewCB)

d = self.run_fake_single_build(gsp, buildResult)
d = self.run_fake_single_build(gsp, buildResult, expWarning=True)

@d.addCallback
def check(msg):
Expand Down

0 comments on commit a25b439

Please sign in to comment.