From 78d90a4cf11dc8e9b0721c6c7a3af794f1e8c1f2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alvaro=20Andr=C3=A9s=20Rodr=C3=ADguez=20Scelza?= Date: Sun, 2 Jun 2019 02:51:12 -0300 Subject: [PATCH] added manual testing files --- .../loaderon_hooks/test_samples/runner.py | 179 ++++++++++++++++++ .../test_samples/testing_class.py | 51 +++++ .../test_samples/testing_view.xml | 9 + 3 files changed, 239 insertions(+) create mode 100644 pre_commit_hooks/loaderon_hooks/test_samples/runner.py create mode 100644 pre_commit_hooks/loaderon_hooks/test_samples/testing_class.py create mode 100644 pre_commit_hooks/loaderon_hooks/test_samples/testing_view.xml diff --git a/pre_commit_hooks/loaderon_hooks/test_samples/runner.py b/pre_commit_hooks/loaderon_hooks/test_samples/runner.py new file mode 100644 index 0000000..8b3a7eb --- /dev/null +++ b/pre_commit_hooks/loaderon_hooks/test_samples/runner.py @@ -0,0 +1,179 @@ +# -*- coding: utf-8 -*- +import sys + +from pre_commit_logic.general_hooks.check_branch_name import BranchNameChecker +from pre_commit_logic.general_hooks.check_class_docstring import ClassDocstringChecker +from pre_commit_logic.general_hooks.check_line import LinesChecker +from pre_commit_logic.general_hooks.check_location import LocationChecker +from pre_commit_logic.general_hooks.check_using_pylint import PylintChecker +from pre_commit_logic.general_hooks.check_xml_encoding import XMLEncodingChecker +from pre_commit_logic.odoo_specific_hooks.check_model_name import ModelNameAttributeChecker + + +def run_model_name_checker(): + sys.argv.append('') + return ModelNameAttributeChecker(sys.argv).run() + + +def run_branch_name_checker(): + sys.argv.append('--regex') + sys.argv.append('') + return BranchNameChecker(sys.argv).run() + + +def run_docstring_checker(): + sys.argv.append('') + return ClassDocstringChecker(sys.argv).run() + + +def run_line_checker(): + # Multiple checks, one regexp per type of line to check. + sys.argv.append('--line-to-check') + sys.argv.append(r'^(\t| )*') + + return LinesChecker(sys.argv).run() + + +def run_location_checker(): + # Each line is a directory that allows certain types of files. + sys.argv.append('--directories') + sys.argv.append(r'^[^\/]+$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/controllers$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/data$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/i18n$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/models$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/report$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/security$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/static\/img$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/static\/lib\/external_lib$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/static\/src\/js$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/static\/src\/css$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/static\/src\/less$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/static\/src\/xml$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/static\/tests$') + sys.argv.append('--directories') + sys.argv.append(r'.*[^\/static]\/tests$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/views$') + sys.argv.append('--directories') + sys.argv.append(r'.*\/wizard$') + + # Each line specifies what types of files can be located inside the directory. + sys.argv.append('--files') + sys.argv.append(r'__init__.py$ __openerp__.py$') + sys.argv.append('--files') + sys.argv.append(r'__init__.py$ .*\.py$ main.py$') + sys.argv.append('--files') + sys.argv.append(r'.*_data\.xml$ .*_demo\.xml$') + sys.argv.append('--files') + sys.argv.append(r'.*\.po$') + sys.argv.append('--files') + sys.argv.append(r'__init__.py$ .*\.py$') + sys.argv.append('--files') + sys.argv.append(r'__init__.py$ .*\.py$ .*_views\.xml$ .*_reports\.xml$ .*_templates\.xml$') + sys.argv.append('--files') + sys.argv.append(r'ir.model.access.csv$ .*_security\.xml$') + sys.argv.append('--files') + sys.argv.append(r'.*\.png$ .*\.jpg$') + sys.argv.append('--files') + sys.argv.append(r'.*\$') + sys.argv.append('--files') + sys.argv.append(r'.*\.js$') + sys.argv.append('--files') + sys.argv.append(r'.*\.css$') + sys.argv.append('--files') + sys.argv.append(r'.*\.less$') + sys.argv.append('--files') + sys.argv.append(r'.*\.xml$') + sys.argv.append('--files') + sys.argv.append(r'.*\.tour\.js$') + sys.argv.append('--files') + sys.argv.append(r'__init__.py$ test_.*\.py') + sys.argv.append('--files') + sys.argv.append(r'.*_templates\.xml$ .*_views\.xml$') + sys.argv.append('--files') + sys.argv.append(r'.*\.py$ .*_views\.xml$') + + sys.argv.append('') + + return LocationChecker(sys.argv).run() + + +def run_pylint_checker(): + # What files should we exclude from pylint checker + sys.argv.append('--exclude') + sys.argv.append(r'.*(\/)*__openerp__.py$') + + sys.argv.append('') + + return PylintChecker(sys.argv).run() + + +def run_xml_encoding(): + # Encoding to be checked + sys.argv.append('--encoding') + sys.argv.append(r'') + + sys.argv.append('') + + return XMLEncodingChecker(sys.argv).run() + + +def main(): + functions = [run_model_name_checker, + run_branch_name_checker, + run_docstring_checker, + run_line_checker, + run_location_checker, + # run_pylint_checker, #comment or remove a function no to be tested + run_xml_encoding] + for function in functions: + sys.argv = [] + print('') + print('----------------------------------') + print('Test: ' + function.__name__) + print('') + function() + + +if __name__ == '__main__': + exit(main()) diff --git a/pre_commit_hooks/loaderon_hooks/test_samples/testing_class.py b/pre_commit_hooks/loaderon_hooks/test_samples/testing_class.py new file mode 100644 index 0000000..20a8c61 --- /dev/null +++ b/pre_commit_hooks/loaderon_hooks/test_samples/testing_class.py @@ -0,0 +1,51 @@ +# -*- coding: utf-8 -*- + + +class TestingClass(object): # SHOULD FAIL + pass + + +class TestingClass2(object): # SHOULD PASS + """""" + + +class TestingClass3(object): # SHOULD PASS + """ + Hola mundo + """ + + +class TestingClass4(object): # SHOULD FAIL + "" + + +class TestingClass5(object): # SHOULD FAIL + def foo(self): + pass + + +class TestingClass6(object): # SHOULD FAIL + def foo(self): + pass + + """Hola mundo""" + + +class TestingClass7(object): # SHOULD FAIL + + """Hola mundo""" + + +class TestingClass8(object): # SHOULD PASS + """Hola mundo""" + + +class TestingClass9(object): # SHOULD FAIL + class TestingClass10(object): + """Hola mundo""" + + +class TestingClass11(object): # SHOULD PASS + """Hola mundo""" + class TestingClass12(object): + """Hola mundo""" diff --git a/pre_commit_hooks/loaderon_hooks/test_samples/testing_view.xml b/pre_commit_hooks/loaderon_hooks/test_samples/testing_view.xml new file mode 100644 index 0000000..3b054a5 --- /dev/null +++ b/pre_commit_hooks/loaderon_hooks/test_samples/testing_view.xml @@ -0,0 +1,9 @@ + + + + + some.model.form.inherit + some.model + + +