Пример #1
0
    def test_search_fields(self):
        """Test whether the search_fields is properly set"""

        setup_http_server()

        bg = BugzillaREST(BUGZILLA_SERVER_URL, max_bugs=2)
        bugs = [bug for bug in bg.fetch(from_date=None)]

        self.assertEqual(len(bugs), 3)

        bug = bugs[0]
        self.assertEqual(bg.metadata_id(bug['data']), bug['search_fields']['item_id'])
        self.assertEqual(bug['data']['product'], 'Connected Devices')
        self.assertEqual(bug['data']['product'], bug['search_fields']['product'])
        self.assertEqual(bug['data']['component'], 'Project Sensor Web')
        self.assertEqual(bug['data']['component'], bug['search_fields']['component'])

        bug = bugs[1]
        self.assertEqual(bg.metadata_id(bug['data']), bug['search_fields']['item_id'])
        self.assertEqual(bug['data']['product'], 'Connected Devices')
        self.assertEqual(bug['data']['product'], bug['search_fields']['product'])
        self.assertEqual(bug['data']['component'], 'Project Sensor Web')
        self.assertEqual(bug['data']['component'], bug['search_fields']['component'])

        bug = bugs[2]
        self.assertEqual(bg.metadata_id(bug['data']), bug['search_fields']['item_id'])
        self.assertEqual(bug['data']['product'], 'MailNews Core')
        self.assertEqual(bug['data']['product'], bug['search_fields']['product'])
        self.assertEqual(bug['data']['component'], 'Backend')
        self.assertEqual(bug['data']['component'], bug['search_fields']['component'])
Пример #2
0
# print(bugzilla)

oids = set()
for bug in bugzilla.fetch(category=args.category, from_date=args.date_from):
    # print(bug)
    # print(bug.keys())
    # print(bug['data'].keys())
    product = bug['data']['product']
    if args.product and args.product != product:
        continue
    # dtu = dateutil.parser.parse(bug['data']['last_change_time'])
    dtu = utc.localize(
        datetime.datetime.fromtimestamp(
            bugzilla.metadata_updated_on(bug['data'])))
    # print(dtu)
    if args.use_created_date:
        dtc = dateutil.parser.parse(bug['data']['creation_time'])
        diff = (dtu - dtc) / datetime.timedelta(seconds=1)
        # print((product, dtc, dtu))
        if (args.updated_diff >= 0 and diff > args.updated_diff
            ) or dtc < args.date_from or dtc > args.date_to:
            continue
    elif dtu > args.date_to:
        # print("skip {0} > {1}".format(dtu, args.date_to))
        break
    oids.add(bugzilla.metadata_id(bug['data']))
if args.product:
    print((args.product, len(oids)))
else:
    print(len(oids))