Skip to content

Commit

Permalink
[IMP] test_lint: add a test to detect git conflict markers
Browse files Browse the repository at this point in the history
Since the deployement of the forward-port bot, chances to merge code
with conflict markers has greatly increased.

With this commit, a new test is added to grep for those markers in most
common code files.

closes #39813

Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
  • Loading branch information
d-fence committed Nov 7, 2019
1 parent 75b1d41 commit 80f22f9
Show file tree
Hide file tree
Showing 2 changed files with 39 additions and 0 deletions.
1 change: 1 addition & 0 deletions odoo/addons/test_lint/tests/__init__.py
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
from . import test_pylint
from . import test_ecmascript
from . import test_markers
38 changes: 38 additions & 0 deletions odoo/addons/test_lint/tests/test_markers.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,38 @@
# -*- coding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.

import logging
import os
import odoo
from odoo.tests.common import TransactionCase
from odoo.modules.module import ad_paths

_logger = logging.getLogger(__name__)
MARKERS = [b'<' * 7, b'>' * 7]
EXTENSIONS = ('.py', '.js', '.xml', '.less', '.sass')


class TestConflictMarkers(TransactionCase):

def check_file(self, fullpath_name):

with open(fullpath_name, 'rb') as f:
content = f.read()
self.assertFalse(any([m in content for m in MARKERS]), 'Conflict markers found in %s' % fullpath_name)

def test_conflict_markers(self):
""" Test that there are no conflict markers left in Odoo files """

counter = 0

odoo_path = os.path.dirname(odoo.__file__)
paths = ad_paths + [odoo_path]
paths.remove(os.path.join(odoo_path, 'addons')) # avoid checking odoo/addons twice

for p in paths:
for dp, _, file_names in os.walk(p):
for fn in file_names:
if fn.endswith(EXTENSIONS):
self.check_file(os.path.join(dp, fn))
counter += 1
_logger.info('%s files tested', counter)

0 comments on commit 80f22f9

Please sign in to comment.