def assertTriggeredBuildset(self, idsDeferred, waited_for, properties=None, sourcestamps=None): if properties is None: properties = {} bsid, brids = yield idsDeferred properties.update({'scheduler': ('n', 'Scheduler')}) self.assertEqual( self.master.db.buildsets.buildsets[bsid]['properties'], properties, ) buildset = yield self.master.db.buildsets.getBuildset(bsid) from datetime import datetime from buildbot.util import UTC ssids = buildset.pop('sourcestamps') self.assertEqual( buildset, { 'bsid': bsid, 'complete': False, 'complete_at': None, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'n' triggered this build", 'results': -1, 'submitted_at': datetime(1999, 12, 31, 23, 59, 59, tzinfo=UTC), 'parent_buildid': None, 'parent_relationship': None, }) actual_sourcestamps = yield defer.gatherResults([ self.master.db.sourcestamps.getSourceStamp(ssid) for ssid in ssids ]) self.assertEqual(len(sourcestamps), len(actual_sourcestamps)) for expected_ss, actual_ss in zip(sourcestamps, actual_sourcestamps): actual_ss = actual_ss.copy() # We don't care if the actual sourcestamp has *more* attributes # than expected. for key in list(actual_ss.keys()): if key not in expected_ss: del actual_ss[key] self.assertEqual(expected_ss, actual_ss) for brid in brids.values(): buildrequest = yield self.master.db.buildrequests.getBuildRequest( brid) self.assertEqual( buildrequest, { 'buildrequestid': brid, 'buildername': 'b', 'builderid': 77, 'buildsetid': bsid, 'claimed': False, 'claimed_at': None, 'complete': False, 'complete_at': None, 'claimed_by_masterid': None, 'priority': 0, 'results': -1, 'submitted_at': datetime( 1999, 12, 31, 23, 59, 59, tzinfo=UTC), 'waited_for': waited_for })
def assertTriggeredBuildset(self, idsDeferred, waited_for, properties={}, sourcestamps=None): bsid, brids = yield idsDeferred properties.update({u'scheduler': ('n', u'Scheduler')}) self.assertEqual( self.master.db.buildsets.buildsets[bsid]['properties'], properties, ) buildset = yield self.master.db.buildsets.getBuildset(bsid) from datetime import datetime from buildbot.util import UTC ssids = buildset.pop('sourcestamps') self.assertEqual( buildset, { 'bsid': bsid, 'complete': False, 'complete_at': None, 'external_idstring': None, 'reason': u"The Triggerable scheduler named 'n' triggered this build", 'results': -1, 'submitted_at': datetime(1999, 12, 31, 23, 59, 59, tzinfo=UTC), 'parent_buildid': None, 'parent_relationship': None, } ) actual_sourcestamps = yield defer.gatherResults([ self.master.db.sourcestamps.getSourceStamp(ssid) for ssid in ssids ]) self.assertEqual(len(sourcestamps), len(actual_sourcestamps)) for expected_ss, actual_ss in zip(sourcestamps, actual_sourcestamps): actual_ss = actual_ss.copy() # We don't care if the actual sourcestamp has *more* attributes # than expected. for key in list(actual_ss.keys()): if key not in expected_ss: del actual_ss[key] self.assertEqual(expected_ss, actual_ss) for brid in itervalues(brids): buildrequest = yield self.master.db.buildrequests.getBuildRequest(brid) self.assertEqual( buildrequest, { 'buildrequestid': brid, 'buildername': u'b', 'builderid': 77, 'buildsetid': bsid, 'claimed': False, 'claimed_at': None, 'complete': False, 'complete_at': None, 'claimed_by_masterid': None, 'priority': 0, 'results': -1, 'submitted_at': datetime(1999, 12, 31, 23, 59, 59, tzinfo=UTC), 'waited_for': waited_for } )
def assertTriggeredBuildset(self, idsDeferred, waited_for, properties={}, sourcestamps=None): bsid, brids = yield idsDeferred properties.update({u"scheduler": ("n", u"Scheduler")}) self.assertEqual(self.master.db.buildsets.buildsets[bsid]["properties"], properties) buildset = yield self.master.db.buildsets.getBuildset(bsid) from datetime import datetime from buildbot.util import UTC ssids = buildset.pop("sourcestamps") self.assertEqual( buildset, { "bsid": bsid, "complete": False, "complete_at": None, "external_idstring": None, "reason": u"The Triggerable scheduler named 'n' triggered this build", "results": -1, "submitted_at": datetime(1999, 12, 31, 23, 59, 59, tzinfo=UTC), "parent_buildid": None, "parent_relationship": None, }, ) actual_sourcestamps = yield defer.gatherResults( [self.master.db.sourcestamps.getSourceStamp(ssid) for ssid in ssids] ) self.assertEqual(len(sourcestamps), len(actual_sourcestamps)) for expected_ss, actual_ss in zip(sourcestamps, actual_sourcestamps): actual_ss = actual_ss.copy() # We don't care if the actual sourcestamp has *more* attributes # than expected. for key in list(actual_ss.keys()): if key not in expected_ss: del actual_ss[key] self.assertEqual(expected_ss, actual_ss) for brid in itervalues(brids): buildrequest = yield self.master.db.buildrequests.getBuildRequest(brid) self.assertEqual( buildrequest, { "buildrequestid": brid, "buildername": u"b", "builderid": 77, "buildsetid": bsid, "claimed": False, "claimed_at": None, "complete": False, "complete_at": None, "claimed_by_masterid": None, "priority": 0, "results": -1, "submitted_at": datetime(1999, 12, 31, 23, 59, 59, tzinfo=UTC), "waited_for": waited_for, }, )