From 4ab364b1c5cbca4a59183b02df5f62b81fe7887c Mon Sep 17 00:00:00 2001 From: Rivo Lalaina Date: Tue, 10 Dec 2024 08:56:26 +0300 Subject: [PATCH] [IMP][16.0] pre-commit : add black hook --- github_event/__manifest__.py | 30 ++++++++--------- github_event/models/github_event.py | 10 +++--- github_event/tests/common.py | 9 +++--- github_event/tests/test_github_event.py | 9 +++--- github_pull_request/__manifest__.py | 32 +++++++++---------- github_pull_request/models/common.py | 12 +++---- github_pull_request/models/github_event.py | 32 +++++++++---------- .../models/github_pull_request.py | 28 ++++++++-------- .../tests/test_github_event.py | 27 ++++++++-------- .../tests/test_github_pull_request.py | 5 ++- 10 files changed, 95 insertions(+), 99 deletions(-) diff --git a/github_event/__manifest__.py b/github_event/__manifest__.py index 22ca3d9..181c2da 100644 --- a/github_event/__manifest__.py +++ b/github_event/__manifest__.py @@ -2,21 +2,21 @@ # License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). { - 'name': 'Github Events', - 'version': "16.0.1.0.0", - 'author': 'Numigi', - 'maintainer': 'Numigi', - 'website': 'https://bit.ly/numigi-com', - 'license': 'LGPL-3', - 'category': 'Connector', - 'summary': 'Define what is a github event as an odoo object', - 'depends': [ - 'base_sparse_field', + "name": "Github Events", + "version": "16.0.1.0.0", + "author": "Numigi", + "maintainer": "Numigi", + "website": "https://bit.ly/numigi-com", + "license": "LGPL-3", + "category": "Connector", + "summary": "Define what is a github event as an odoo object", + "depends": [ + "base_sparse_field", ], - 'data': [ - 'security/ir.model.access.csv', - 'views/github_event.xml', - 'views/menu.xml', + "data": [ + "security/ir.model.access.csv", + "views/github_event.xml", + "views/menu.xml", ], - 'installable': True, + "installable": True, } diff --git a/github_event/models/github_event.py b/github_event/models/github_event.py index db24556..727482e 100644 --- a/github_event/models/github_event.py +++ b/github_event/models/github_event.py @@ -11,13 +11,13 @@ class GithubEvent(models.Model): _name = "github.event" _description = "Github Event" - _order = 'id desc' + _order = "id desc" action = fields.Char() payload = fields.Text() - payload_serialized = Serialized(compute='_compute_payload_serialized') + payload_serialized = Serialized(compute="_compute_payload_serialized") - @api.depends('payload') + @api.depends("payload") def _compute_payload_serialized(self): events_with_payloads = self.filtered(lambda e: e.payload) for event in events_with_payloads: @@ -30,7 +30,7 @@ def _get_value_from_payload(self, path): :return: the value contained at the given path. """ section = self.payload_serialized - keys = path.split('.') + keys = path.split(".") for key in keys[:-1]: if not isinstance(section, dict) or key not in section: @@ -50,4 +50,4 @@ def process(self): This method is intended to be inherited by other modules to add extra behavior when processing a github event. """ - self.action = self._get_value_from_payload('action') + self.action = self._get_value_from_payload("action") diff --git a/github_event/tests/common.py b/github_event/tests/common.py index e70933e..2355178 100644 --- a/github_event/tests/common.py +++ b/github_event/tests/common.py @@ -6,15 +6,14 @@ class GithubEventCase(common.SavepointCase): - @classmethod def setUpClass(cls): super().setUpClass() - cls.event_1 = cls.env['github.event'].create({}) - cls.event_2 = cls.env['github.event'].create({}) + cls.event_1 = cls.env["github.event"].create({}) + cls.event_2 = cls.env["github.event"].create({}) def _read_payload(self, filename): test_folder = os.path.dirname(os.path.realpath(__file__)) - payload_file_path = os.path.join(test_folder, 'data', filename) - with open(payload_file_path, 'r') as file: + payload_file_path = os.path.join(test_folder, "data", filename) + with open(payload_file_path, "r") as file: return file.read() diff --git a/github_event/tests/test_github_event.py b/github_event/tests/test_github_event.py index 4ce6176..ec2c37b 100644 --- a/github_event/tests/test_github_event.py +++ b/github_event/tests/test_github_event.py @@ -7,12 +7,11 @@ @ddt class TestGithubEvent(GithubEventCase): - @data( - ('pull_request_1_merged.json', 'closed'), - ('pull_request_2_closed.json', 'closed'), - ('pull_request_2_reopened.json', 'reopened'), - ('check_run_completed.json', 'completed'), + ("pull_request_1_merged.json", "closed"), + ("pull_request_2_closed.json", "closed"), + ("pull_request_2_reopened.json", "reopened"), + ("check_run_completed.json", "completed"), ) @unpack def test_action(self, filename, expected_action): diff --git a/github_pull_request/__manifest__.py b/github_pull_request/__manifest__.py index a9f1c1b..1e5ff99 100644 --- a/github_pull_request/__manifest__.py +++ b/github_pull_request/__manifest__.py @@ -2,22 +2,22 @@ # License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). { - 'name': 'Github Pull Request', - 'version': "16.0.1.0.0", - 'author': 'Numigi', - 'maintainer': 'Numigi', - 'website': 'https://bit.ly/numigi-com', - 'license': 'LGPL-3', - 'category': 'Connector', - 'summary': 'Define what is a github Pull Request as an odoo object.', - 'depends': [ - 'github_event', + "name": "Github Pull Request", + "version": "16.0.1.0.0", + "author": "Numigi", + "maintainer": "Numigi", + "website": "https://bit.ly/numigi-com", + "license": "LGPL-3", + "category": "Connector", + "summary": "Define what is a github Pull Request as an odoo object.", + "depends": [ + "github_event", ], - 'data': [ - 'security/ir.model.access.csv', - 'views/github_event.xml', - 'views/github_pull_request.xml', - 'views/menu.xml', + "data": [ + "security/ir.model.access.csv", + "views/github_event.xml", + "views/github_pull_request.xml", + "views/menu.xml", ], - 'installable': True, + "installable": True, } diff --git a/github_pull_request/models/common.py b/github_pull_request/models/common.py index 99c1bb1..485bfb7 100644 --- a/github_pull_request/models/common.py +++ b/github_pull_request/models/common.py @@ -1,13 +1,13 @@ # Copyright 2023 - today Numigi (tm) and all its contributors (https://bit.ly/numigiens) # License LGPL-3.0 or later (http://www.gnu.org/licenses/lgpl). -OPEN = 'open' -MERGED = 'merged' -CLOSED = 'closed' +OPEN = "open" +MERGED = "merged" +CLOSED = "closed" PULL_REQUEST_STATES = [ - (OPEN, 'Open'), - (MERGED, 'Merged'), - (CLOSED, 'Closed'), + (OPEN, "Open"), + (MERGED, "Merged"), + (CLOSED, "Closed"), ] diff --git a/github_pull_request/models/github_event.py b/github_pull_request/models/github_event.py index 6e8b678..37d64f2 100644 --- a/github_pull_request/models/github_event.py +++ b/github_pull_request/models/github_event.py @@ -9,12 +9,12 @@ class GithubEvent(models.Model): - _inherit = 'github.event' + _inherit = "github.event" pull_request_id = fields.Many2one( - 'github.pull_request', - 'Pull Request', - ondelete='restrict', + "github.pull_request", + "Pull Request", + ondelete="restrict", index=True, copy=False, ) @@ -25,28 +25,28 @@ class GithubEvent(models.Model): ) def _find_existing_pull_request(self, url): - return self.env['github.pull_request'].search( + return self.env["github.pull_request"].search( [ - ('source', '=', url), + ("source", "=", url), ] ) def _make_pull_request(self, url): - return self.env['github.pull_request'].create({'source': url}) + return self.env["github.pull_request"].create({"source": url}) def _get_pull_request(self): - url = self._get_value_from_payload('pull_request.html_url') + url = self._get_value_from_payload("pull_request.html_url") existing_pull_request = self._find_existing_pull_request(url) return existing_pull_request or self._make_pull_request(url) def _get_pull_request_state(self): - is_merged = self._get_value_from_payload('pull_request.merged_at') + is_merged = self._get_value_from_payload("pull_request.merged_at") return ( - MERGED if is_merged else self._get_value_from_payload('pull_request.state') + MERGED if is_merged else self._get_value_from_payload("pull_request.state") ) def _get_pull_request_updated_at(self): - datetime_string = self._get_value_from_payload('pull_request.updated_at') + datetime_string = self._get_value_from_payload("pull_request.updated_at") datetime_obj = dateutil.parser.parse(datetime_string) naive_datetime_string = datetime_obj.strftime(DEFAULT_SERVER_DATETIME_FORMAT) return naive_datetime_string @@ -58,17 +58,17 @@ def _update_from_pull_request_fields(self): """Update the event's data related to pull requests from its payload.""" self.write( { - 'pull_request_id': self._get_pull_request().id, - 'pull_request_state': self._get_pull_request_state(), - 'pull_request_updated_at': self._get_pull_request_updated_at(), - 'pull_request_title': self._get_pull_request_title(), + "pull_request_id": self._get_pull_request().id, + "pull_request_state": self._get_pull_request_state(), + "pull_request_updated_at": self._get_pull_request_updated_at(), + "pull_request_title": self._get_pull_request_title(), } ) def process(self): super().process() - is_pull_request_event = 'pull_request' in self.payload_serialized + is_pull_request_event = "pull_request" in self.payload_serialized if is_pull_request_event: self._update_from_pull_request_fields() diff --git a/github_pull_request/models/github_pull_request.py b/github_pull_request/models/github_pull_request.py index 7bc2dec..56e8d33 100644 --- a/github_pull_request/models/github_pull_request.py +++ b/github_pull_request/models/github_pull_request.py @@ -7,18 +7,18 @@ regex_github_source = re.compile( - r'https:\/\/(?P[\w\.]+)/' - r'(?P\w+)/' - r'(?P[\w\-_]+)/' - r'pull/' - r'(?P\d+)' + r"https:\/\/(?P[\w\.]+)/" + r"(?P\w+)/" + r"(?P[\w\-_]+)/" + r"pull/" + r"(?P\d+)" ) class GithubPullRequest(models.Model): _name = "github.pull_request" _description = "Github Pull Request" - _rec_name = 'title' + _rec_name = "title" title = fields.Char() source = fields.Char(required=True) @@ -27,7 +27,7 @@ class GithubPullRequest(models.Model): default=OPEN, ) developer_id = fields.Many2one( - 'res.partner', 'Developer', ondelete='restrict', index=True + "res.partner", "Developer", ondelete="restrict", index=True ) host = fields.Char(readonly=True) organization = fields.Char(readonly=True) @@ -35,16 +35,16 @@ class GithubPullRequest(models.Model): pull_request_number = fields.Integer(readony=True) _sql_constraints = [ - ('source', 'UNIQUE (source)', 'A Pull Request already exists for this source'), + ("source", "UNIQUE (source)", "A Pull Request already exists for this source"), ] @api.model def create(self, vals): - updated_vals = update_according_to_source(vals['source'], vals) + updated_vals = update_according_to_source(vals["source"], vals) return super().create(updated_vals) def write(self, vals): - updated_vals = update_according_to_source(vals.get('source', ''), vals) + updated_vals = update_according_to_source(vals.get("source", ""), vals) super().write(updated_vals) @@ -57,13 +57,13 @@ def update_according_to_source(source: str, vals: dict) -> dict: class GithubPullRequestWithEvents(models.Model): - _inherit = 'github.pull_request' + _inherit = "github.pull_request" latest_update = fields.Datetime() event_ids = fields.One2many( - 'github.event', - 'pull_request_id', - 'Events', + "github.event", + "pull_request_id", + "Events", ) def is_latest_event(self, event): diff --git a/github_pull_request/tests/test_github_event.py b/github_pull_request/tests/test_github_event.py index 4e0f120..c0f2aa5 100644 --- a/github_pull_request/tests/test_github_event.py +++ b/github_pull_request/tests/test_github_event.py @@ -7,27 +7,26 @@ @ddt class TestGithubEvent(GithubEventCase): - def test_if_not_pull_request_event__no_pull_request_created(self): - self.event_1.payload = self._read_payload('check_run_completed.json') + self.event_1.payload = self._read_payload("check_run_completed.json") self.event_1.process() assert not self.event_1.pull_request_id def test_if_not_existing_pull_request__new_pull_request_created(self): - self.event_1.payload = self._read_payload('pull_request_2_reopened.json') + self.event_1.payload = self._read_payload("pull_request_2_reopened.json") self.event_1.process() assert self.event_1.pull_request_id def test_if_existing_pull_request__event_attached_to_same_pull_request(self): - self.event_1.payload = self._read_payload('pull_request_2_closed.json') - self.event_2.payload = self._read_payload('pull_request_2_reopened.json') + self.event_1.payload = self._read_payload("pull_request_2_closed.json") + self.event_2.payload = self._read_payload("pull_request_2_reopened.json") self.event_1.process() self.event_2.process() assert self.event_1.pull_request_id assert self.event_1.pull_request_id == self.event_2.pull_request_id def test_event_can_be_processed_twice(self): - self.event_1.payload = self._read_payload('pull_request_2_closed.json') + self.event_1.payload = self._read_payload("pull_request_2_closed.json") self.event_1.process() initial_pull_request = self.event_1.pull_request_id @@ -36,9 +35,9 @@ def test_event_can_be_processed_twice(self): assert self.event_1.pull_request_id == initial_pull_request @data( - ('pull_request_1_merged.json', 'merged'), - ('pull_request_2_closed.json', 'closed'), - ('pull_request_2_reopened.json', 'open'), + ("pull_request_1_merged.json", "merged"), + ("pull_request_2_closed.json", "closed"), + ("pull_request_2_reopened.json", "open"), ) @unpack def test_status(self, filename, expected_state): @@ -47,8 +46,8 @@ def test_status(self, filename, expected_state): assert self.event_1.pull_request_id.state == expected_state @data( - ('pull_request_2_closed.json', 'pull_request_2_reopened.json'), - ('pull_request_2_reopened.json', 'pull_request_2_closed.json'), + ("pull_request_2_closed.json", "pull_request_2_reopened.json"), + ("pull_request_2_reopened.json", "pull_request_2_closed.json"), ) @unpack def test_if_not_last_event__pull_request_not_updated( @@ -69,11 +68,11 @@ def test_if_not_last_event__pull_request_not_updated( self.event_1.process() self.event_2.process() assert self.event_1.pull_request_id == self.event_2.pull_request_id - assert self.event_1.pull_request_id.state == 'open' + assert self.event_1.pull_request_id.state == "open" @data( - ('pull_request_1_merged.json', 'Add module account_show_full_features'), - ('pull_request_2_closed.json', 'Add better logging'), + ("pull_request_1_merged.json", "Add module account_show_full_features"), + ("pull_request_2_closed.json", "Add better logging"), ) @unpack def test_title(self, filename, expected_title): diff --git a/github_pull_request/tests/test_github_pull_request.py b/github_pull_request/tests/test_github_pull_request.py index 5adc447..7ae6a2c 100644 --- a/github_pull_request/tests/test_github_pull_request.py +++ b/github_pull_request/tests/test_github_pull_request.py @@ -51,7 +51,6 @@ @ddt class TestPullRequest(common.SavepointCase): - @classmethod def setUpClass(cls): super().setUpClass() @@ -61,14 +60,14 @@ def setUpClass(cls): @data(*test_data) @unpack def test_whenPrIsCreatedFromURL_thenFieldsAreFilled(self, url, field, expected): - pr = self.github_pull_request_pool.create({'source': url}) + pr = self.github_pull_request_pool.create({"source": url}) assert pr[field] == expected @data(*test_data) @unpack def test_whenPrIsUpdatedFromURL_thenFieldsAreUpdated(self, url, field, expected): pr = self.github_pull_request_pool.create( - {'source': "https://github.com/Numigi/odoo-public/pull/666"} + {"source": "https://github.com/Numigi/odoo-public/pull/666"} # fake url, does not matter ) pr.source = url