)]}'
{"tests/base.py":[{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"f6d110830242e82bd04a3bceaad01dfe480980a9","unresolved":false,"context_lines":[{"line_number":1153,"context_line":"                \u0027project_fullname\u0027: project,"},{"line_number":1154,"context_line":"                \u0027branch\u0027: \u0027master\u0027,"},{"line_number":1155,"context_line":"                \u0027end_commit\u0027: headsha,"},{"line_number":1156,"context_line":"                \u0027old_commit\u0027: \u00271\u0027 * 40,"},{"line_number":1157,"context_line":"            },"},{"line_number":1158,"context_line":"            \u0027msg_id\u0027: str(uuid.uuid4()),"},{"line_number":1159,"context_line":"            \u0027timestamp\u0027: 1427459070,"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_c7cc808c","line":1156,"updated":"2019-10-17 14:05:32.000000000","message":"Should this represent a non existing old commit? In this case it should be \u00270\u0027 * 40","commit_id":"46d10431241a814df7d3036f7ef27add41a952c8"},{"author":{"_account_id":6889,"name":"Fabien Boucher","email":"fboucher@redhat.com","username":"fabien-boucher"},"change_message_id":"f1863390e5bf1986208efc4a995a44b1bc340fc2","unresolved":false,"context_lines":[{"line_number":1153,"context_line":"                \u0027project_fullname\u0027: project,"},{"line_number":1154,"context_line":"                \u0027branch\u0027: \u0027master\u0027,"},{"line_number":1155,"context_line":"                \u0027end_commit\u0027: headsha,"},{"line_number":1156,"context_line":"                \u0027old_commit\u0027: \u00271\u0027 * 40,"},{"line_number":1157,"context_line":"            },"},{"line_number":1158,"context_line":"            \u0027msg_id\u0027: str(uuid.uuid4()),"},{"line_number":1159,"context_line":"            \u0027timestamp\u0027: 1427459070,"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_b962b9ac","line":1156,"in_reply_to":"3fa7e38b_c7cc808c","updated":"2019-10-18 09:47:18.000000000","message":"Here old_commit is supposed to represent an existing ref with a random old commit. I choose that, is it confusing ? should I change it ?","commit_id":"46d10431241a814df7d3036f7ef27add41a952c8"}],"tests/unit/test_pagure_driver.py":[{"author":{"_account_id":16068,"name":"Tobias Henkel","email":"tobias.henkel@bmw.de","username":"tobias.henkel"},"change_message_id":"f6d110830242e82bd04a3bceaad01dfe480980a9","unresolved":false,"context_lines":[{"line_number":216,"context_line":"        event \u003d self.fake_pagure.getGitBranchEvent("},{"line_number":217,"context_line":"            \u0027org/project\u0027, \u0027stable-1.0\u0027, \u0027creation\u0027, newrev)"},{"line_number":218,"context_line":"        old \u003d self.sched.tenant_last_reconfigured.get(\u0027tenant-one\u0027, 0)"},{"line_number":219,"context_line":"        time.sleep(1)"},{"line_number":220,"context_line":"        self.fake_pagure.emitEvent(event)"},{"line_number":221,"context_line":"        self.waitUntilSettled()"},{"line_number":222,"context_line":"        new \u003d self.sched.tenant_last_reconfigured.get(\u0027tenant-one\u0027, 0)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_e7c97c79","line":219,"updated":"2019-10-17 14:05:32.000000000","message":"What\u0027s the reason for the sleep? We need to avoid sleeps in the tests to avoid test races that lead to random test failures. In case we need to wait for a condition there are two ways, wailtUntilSettled for waiting until all events in zuul are processed (including reconfig). In case you want to wait for a different condition use iterate_timeout.","commit_id":"46d10431241a814df7d3036f7ef27add41a952c8"},{"author":{"_account_id":6889,"name":"Fabien Boucher","email":"fboucher@redhat.com","username":"fabien-boucher"},"change_message_id":"f1863390e5bf1986208efc4a995a44b1bc340fc2","unresolved":false,"context_lines":[{"line_number":216,"context_line":"        event \u003d self.fake_pagure.getGitBranchEvent("},{"line_number":217,"context_line":"            \u0027org/project\u0027, \u0027stable-1.0\u0027, \u0027creation\u0027, newrev)"},{"line_number":218,"context_line":"        old \u003d self.sched.tenant_last_reconfigured.get(\u0027tenant-one\u0027, 0)"},{"line_number":219,"context_line":"        time.sleep(1)"},{"line_number":220,"context_line":"        self.fake_pagure.emitEvent(event)"},{"line_number":221,"context_line":"        self.waitUntilSettled()"},{"line_number":222,"context_line":"        new \u003d self.sched.tenant_last_reconfigured.get(\u0027tenant-one\u0027, 0)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_f6011e08","line":219,"in_reply_to":"3fa7e38b_e7c97c79","updated":"2019-10-18 09:47:18.000000000","message":"I followed a pattern in similar tests. tenant_last_reconfigured is int(time.time()) where we lost the float precision. That\u0027s why there that time.sleep(1).\nNext PS fix that. But I\u0027ll provide another patch to remove sleep on other tests that follow that pattern.","commit_id":"46d10431241a814df7d3036f7ef27add41a952c8"},{"author":{"_account_id":6889,"name":"Fabien Boucher","email":"fboucher@redhat.com","username":"fabien-boucher"},"change_message_id":"f927153a9517aac3dece036d23707528c1aadb6d","unresolved":false,"context_lines":[{"line_number":216,"context_line":"        event \u003d self.fake_pagure.getGitBranchEvent("},{"line_number":217,"context_line":"            \u0027org/project\u0027, \u0027stable-1.0\u0027, \u0027creation\u0027, newrev)"},{"line_number":218,"context_line":"        old \u003d self.sched.tenant_last_reconfigured.get(\u0027tenant-one\u0027, 0)"},{"line_number":219,"context_line":"        time.sleep(1)"},{"line_number":220,"context_line":"        self.fake_pagure.emitEvent(event)"},{"line_number":221,"context_line":"        self.waitUntilSettled()"},{"line_number":222,"context_line":"        new \u003d self.sched.tenant_last_reconfigured.get(\u0027tenant-one\u0027, 0)"}],"source_content_type":"text/x-python","patch_set":5,"id":"3fa7e38b_793d21dc","line":219,"in_reply_to":"3fa7e38b_f6011e08","updated":"2019-10-18 10:04:01.000000000","message":"https://review.opendev.org/689394/","commit_id":"46d10431241a814df7d3036f7ef27add41a952c8"}],"zuul/driver/pagure/pagureconnection.py":[{"author":{"_account_id":2,"name":"Monty Taylor","email":"mordred@inaugust.com","username":"mordred"},"change_message_id":"67f3b01ffb7613678b6c416be0bfdbdcf4766ca6","unresolved":false,"context_lines":[{"line_number":72,"context_line":"#   https://pagure.io/pagure/issue/4401"},{"line_number":73,"context_line":"# - Pagure does not send an event when a branch is deleted"},{"line_number":74,"context_line":"#   https://pagure.io/pagure/issue/4399 (merged so need to be used)"},{"line_number":75,"context_line":"# - Pagure does not reset the score when a PR code is updated"},{"line_number":76,"context_line":"#   https://pagure.io/pagure/issue/3985"},{"line_number":77,"context_line":"# - CI status flag updated field unit is second, better to have millisecond"},{"line_number":78,"context_line":"#   unit to avoid unpossible sorting to get last status if two status set the"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_729e8155","side":"PARENT","line":75,"updated":"2019-10-03 13:02:34.000000000","message":"I think you deleted the wrong line here.","commit_id":"150f99c27669187b1232b200a19e0932b929806f"},{"author":{"_account_id":6889,"name":"Fabien Boucher","email":"fboucher@redhat.com","username":"fabien-boucher"},"change_message_id":"047f7537a6b6d601d46287148024edc4e1122682","unresolved":false,"context_lines":[{"line_number":72,"context_line":"#   https://pagure.io/pagure/issue/4401"},{"line_number":73,"context_line":"# - Pagure does not send an event when a branch is deleted"},{"line_number":74,"context_line":"#   https://pagure.io/pagure/issue/4399 (merged so need to be used)"},{"line_number":75,"context_line":"# - Pagure does not reset the score when a PR code is updated"},{"line_number":76,"context_line":"#   https://pagure.io/pagure/issue/3985"},{"line_number":77,"context_line":"# - CI status flag updated field unit is second, better to have millisecond"},{"line_number":78,"context_line":"#   unit to avoid unpossible sorting to get last status if two status set the"}],"source_content_type":"text/x-python","patch_set":3,"id":"3fa7e38b_6f2d2fa7","side":"PARENT","line":75,"in_reply_to":"3fa7e38b_729e8155","updated":"2019-10-04 08:21:13.000000000","message":"Thanks good catch !","commit_id":"150f99c27669187b1232b200a19e0932b929806f"}]}
