コード例 #1
0
    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
                })
コード例 #2
0
    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
                }
            )
コード例 #3
0
    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,
                },
            )