Merge pull request #1279 from Tecnativa/13.0-base_vat_optional_vies-fix-test

[13.0][FIX] base_vat_optional_vies: fix tests + [IMP] *: apply copier template and update pre-commit config
This commit is contained in:
Pedro M. Baeza
2021-11-25 17:25:22 +01:00
committed by GitHub
28 changed files with 305 additions and 81 deletions

15
.copier-answers.yml Normal file
View File

@@ -0,0 +1,15 @@
# Do NOT update manually; changes here will be overwritten by Copier
_commit: v1.3.6
_src_path: https://github.com/OCA/oca-addons-repo-template.git
ci: GitHub
dependency_installation_mode: OCA
generate_requirements_txt: true
include_wkhtmltopdf: false
odoo_version: 13.0
rebel_module_groups: []
repo_description: Account financial Tools for Odoo/OpenERP
repo_name: Account Financial Tools
repo_slug: account-financial-tools
travis_apt_packages: []
travis_apt_sources: []

View File

@@ -1,10 +1,17 @@
env:
browser: true
es6: true
# See https://github.com/OCA/odoo-community.org/issues/37#issuecomment-470686449
parserOptions:
ecmaVersion: 2017
overrides:
- files:
- "**/*.esm.js"
parserOptions:
sourceType: module
# Globals available in Odoo that shouldn't produce errorings
globals:
_: readonly
@@ -14,7 +21,7 @@ globals:
moment: readonly
odoo: readonly
openerp: readonly
Promise: readonly
owl: readonly
# Styling is handled by Prettier, so we only need to enable AST rules;
# see https://github.com/OCA/maintainer-quality-tools/pull/618#issuecomment-558576890

View File

@@ -1,5 +1,5 @@
[flake8]
max-line-length = 80
max-line-length = 88
max-complexity = 16
# B = bugbear
# B9 = bugbear opinionated (incl line length)
@@ -8,3 +8,5 @@ select = C,E,F,W,B,B9
# E501: flake8 line length (covered by bugbear B950)
# W503: line break before binary operator (black behaviour)
ignore = E203,E501,W503
per-file-ignores=
__init__.py:F401

20
.github/workflows/pre-commit.yml vendored Normal file
View File

@@ -0,0 +1,20 @@
name: pre-commit
on:
pull_request:
push:
jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
# The pylint-odoo version we use here does not support python 3.10
# https://github.com/OCA/oca-addons-repo-template/issues/80
# We also need to pin to an older version of python for older odoo versions
# where we are not using black > 21. Older black versions won't work with
# Python 3.9.8+, and we can't bump black without reformatting.
python-version: "3.9.7"
- uses: pre-commit/action@v2.0.0

69
.github/workflows/stale.yml vendored Normal file
View File

@@ -0,0 +1,69 @@
name: Mark stale issues and pull requests
on:
schedule:
- cron: "0 12 * * 0"
jobs:
stale:
runs-on: ubuntu-latest
steps:
- name: Stale PRs and issues policy
uses: actions/stale@v4
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
# General settings.
ascending: true
remove-stale-when-updated: true
# Pull Requests settings.
# 120+30 day stale policy for PRs
# * Except PRs marked as "no stale"
days-before-pr-stale: 120
days-before-pr-close: 30
exempt-pr-labels: "no stale"
stale-pr-label: "stale"
stale-pr-message: >
There hasn't been any activity on this pull request in the past 4 months, so
it has been marked as stale and it will be closed automatically if no
further activity occurs in the next 30 days.
If you want this PR to never become stale, please ask a PSC member to apply
the "no stale" label.
# Issues settings.
# 180+30 day stale policy for open issues
# * Except Issues marked as "no stale"
days-before-issue-stale: 180
days-before-issue-close: 30
exempt-issue-labels: "no stale,needs more information"
stale-issue-label: "stale"
stale-issue-message: >
There hasn't been any activity on this issue in the past 6 months, so it has
been marked as stale and it will be closed automatically if no further
activity occurs in the next 30 days.
If you want this issue to never become stale, please ask a PSC member to
apply the "no stale" label.
# 15+30 day stale policy for issues pending more information
# * Issues that are pending more information
# * Except Issues marked as "no stale"
- name: Needs more information stale issues policy
uses: actions/stale@v4
with:
repo-token: ${{ secrets.GITHUB_TOKEN }}
ascending: true
only-labels: "needs more information"
exempt-issue-labels: "no stale"
days-before-stale: 15
days-before-close: 30
days-before-pr-stale: -1
days-before-pr-close: -1
remove-stale-when-updated: true
stale-issue-label: "stale"
stale-issue-message: >
This issue needs more information and there hasn't been any activity
recently, so it has been marked as stale and it will be closed automatically
if no further activity occurs in the next 30 days.
If you think this is a mistake, please ask a PSC member to remove the "needs
more information" label.

52
.github/workflows/test.yml vendored Normal file
View File

@@ -0,0 +1,52 @@
name: test Odoo addons
on:
pull_request:
branches:
- "13.0*"
push:
branches:
- "13.0*"
jobs:
test:
runs-on: ubuntu-latest
container: ${{ matrix.container }}
strategy:
fail-fast: false
matrix:
include:
- container: ghcr.io/oca/oca-ci/py3.6-odoo13.0:latest
makepot: "true"
- container: ghcr.io/oca/oca-ci/py3.6-ocb13.0:latest
services:
postgres:
image: postgres:9.6
env:
POSTGRES_USER: odoo
POSTGRES_PASSWORD: odoo
POSTGRES_DB: odoo
ports:
- 5432:5432
steps:
- uses: actions/checkout@v2
with:
persist-credentials: false
- name: Install addons and dependencies
run: oca_install_addons
- name: Check licenses
run: manifestoo -d . check-licenses
- name: Check development status
run: manifestoo -d . check-dev-status --default-dev-status=Beta
- name: Initialize test db
run: oca_init_test_database
- name: Run tests
run: oca_run_tests
- uses: codecov/codecov-action@v1
- name: Update .pot files
run:
oca_export_and_push_pot https://x-access-token:${{ secrets.GIT_PUSH_TOKEN
}}@github.com/${{ github.repository }}
if:
${{ matrix.makepot == 'true' && github.event_name == 'push' &&
github.repository_owner == 'OCA' }}

19
.gitignore vendored
View File

@@ -1,6 +1,8 @@
# Byte-compiled / optimized / DLL files
__pycache__/
*.py[cod]
/.venv
/.pytest_cache
# C extensions
*.so
@@ -41,6 +43,19 @@ coverage.xml
# Pycharm
.idea
# Eclipse
.settings
# Visual Studio cache/options directory
.vs/
.vscode
# OSX Files
.DS_Store
# Django stuff:
*.log
# Mr Developer
.mr.developer.cfg
.project
@@ -56,5 +71,5 @@ docs/_build/
*~
*.swp
# Vscode
.vscode
# OCA rules
!static/lib/

View File

@@ -10,3 +10,4 @@ known_odoo=odoo
known_odoo_addons=odoo.addons
sections=FUTURE,STDLIB,THIRDPARTY,ODOO,ODOO_ADDONS,FIRSTPARTY,LOCALFOLDER
default_section=THIRDPARTY
ensure_newline_before_comments = True

View File

@@ -1,7 +1,11 @@
exclude: |
(?x)
# NOT INSTALLABLE ADDONS
# END NOT INSTALLABLE ADDONS
# Files and folders generated by bots, to avoid loops
^setup/|/static/description/index\.html$|
# We don't want to mess with tool-generated files
.svg$|/tests/([^/]+/)?cassettes/|^.copier-answers.yml$|
# Maybe reactivate this when all README files include prettier ignore tags?
^README\.md$|
# Library files can have extraneous formatting (even minimized)
@@ -14,25 +18,47 @@ default_language_version:
python: python3
node: "14.13.0"
repos:
- repo: local
hooks:
# These files are most likely copier diff rejection junks; if found,
# review them manually, fix the problem (if needed) and remove them
- id: forbidden-files
name: forbidden files
entry: found forbidden files; remove them
language: fail
files: "\\.rej$"
- repo: https://github.com/oca/maintainer-tools
rev: ab1d7f6
hooks:
# update the NOT INSTALLABLE ADDONS section above
- id: oca-update-pre-commit-excluded-addons
- id: oca-fix-manifest-website
args: ["https://github.com/OCA/account-financial-tools"]
- repo: https://github.com/myint/autoflake
rev: v1.4
hooks:
- id: autoflake
args:
- --expand-star-imports
- --ignore-init-module-imports
- --in-place
- --remove-all-unused-imports
- --remove-duplicate-keys
- --remove-unused-variables
- repo: https://github.com/psf/black
rev: 19.10b0
hooks:
- id: black
- repo: https://github.com/prettier/pre-commit
rev: "v1.19.1"
- repo: https://github.com/pre-commit/mirrors-prettier
rev: v1.19.1
hooks:
- id: prettier
# TODO Avoid awebdeveloper/pre-commit-prettier if possible
# HACK https://github.com/prettier/prettier/issues/7407
- repo: https://github.com/awebdeveloper/pre-commit-prettier
rev: v0.0.1
hooks:
- id: prettier
name: prettier xml plugin
name: prettier (with plugin-xml)
entry: prettier --write --list-different
additional_dependencies:
- "prettier@1.19.1"
- "@prettier/plugin-xml@0.7.2"
files: \.xml$
files: \.(css|htm|html|js|json|jsx|less|md|scss|toml|ts|xml|yaml|yml)$
- repo: https://github.com/pre-commit/mirrors-eslint
rev: v6.8.0
hooks:
@@ -63,34 +89,11 @@ repos:
- id: check-xml
- id: mixed-line-ending
args: ["--fix=lf"]
- repo: https://gitlab.com/pycqa/flake8
rev: 3.7.9
hooks:
- id: flake8
name: flake8 except __init__.py
exclude: /__init__\.py$
additional_dependencies: ["flake8-bugbear==19.8.0"]
- id: flake8
name: flake8 only __init__.py
args: ["--extend-ignore=F401"] # ignore unused imports in __init__.py
files: /__init__\.py$
additional_dependencies: ["flake8-bugbear==19.8.0"]
- repo: https://github.com/pre-commit/mirrors-pylint
rev: v2.5.3
hooks:
- id: pylint
name: pylint with optional checks
args: ["--rcfile=.pylintrc", "--exit-zero"]
verbose: true
additional_dependencies: ["pylint-odoo==3.5.0"]
- id: pylint
name: pylint with mandatory checks
args: ["--rcfile=.pylintrc-mandatory"]
additional_dependencies: ["pylint-odoo==3.5.0"]
- repo: https://github.com/asottile/pyupgrade
rev: v1.26.2
hooks:
- id: pyupgrade
args: ["--keep-percent-format"]
- repo: https://github.com/pre-commit/mirrors-isort
rev: v4.3.21
hooks:
@@ -101,3 +104,25 @@ repos:
rev: 2.5.2
hooks:
- id: setuptools-odoo-make-default
- repo: https://gitlab.com/pycqa/flake8
rev: 3.7.9
hooks:
- id: flake8
name: flake8
additional_dependencies: ["flake8-bugbear==19.8.0"]
- repo: https://github.com/pre-commit/mirrors-pylint
rev: v2.5.3
hooks:
- id: pylint
name: pylint with optional checks
args:
- --rcfile=.pylintrc
- --exit-zero
verbose: true
additional_dependencies: &pylint_deps
- pylint-odoo==3.5.0
- id: pylint
name: pylint with mandatory checks
args:
- --rcfile=.pylintrc-mandatory
additional_dependencies: *pylint_deps

View File

@@ -5,4 +5,4 @@ printWidth: 88
proseWrap: always
semi: true
trailingComma: "es5"
xmlWhitespaceSensitivity: "ignore"
xmlWhitespaceSensitivity: "strict"

View File

@@ -46,8 +46,6 @@ enable=anomalous-backslash-in-string,
method-inverse,
method-required-super,
method-search,
missing-import-error,
missing-manifest-dependency,
openerp-exception-warning,
pointless-statement,
pointless-string-statement,
@@ -73,6 +71,7 @@ enable=anomalous-backslash-in-string,
deprecated-module,
file-not-used,
invalid-commit,
missing-manifest-dependency,
missing-newline-extrafiles,
missing-readme,
no-utf8-coding-comment,
@@ -82,6 +81,7 @@ enable=anomalous-backslash-in-string,
too-complex,
unnecessary-utf8-coding-comment
[REPORTS]
msg-template={path}:{line}: [{msg_id}({symbol}), {obj}] {msg}
output-format=colorized

View File

@@ -39,8 +39,6 @@ enable=anomalous-backslash-in-string,
method-inverse,
method-required-super,
method-search,
missing-import-error,
missing-manifest-dependency,
openerp-exception-warning,
pointless-statement,
pointless-string-statement,

View File

@@ -14,24 +14,16 @@ addons:
- expect-dev # provides unbuffer utility
stages:
- linting
- test
jobs:
include:
- stage: linting
name: "pre-commit"
before_install:
install: pip install pre-commit
script: pre-commit run --all --show-diff-on-failure --verbose --color always
after_success:
- stage: test
env:
- TESTS="1" ODOO_REPO="odoo/odoo" MAKEPOT="1"
- TESTS=1 ODOO_REPO="odoo/odoo" MAKEPOT="1"
- stage: test
env:
- TESTS="1" ODOO_REPO="OCA/OCB"
- TESTS=1 ODOO_REPO="OCA/OCB"
env:
global:
- VERSION="13.0" TESTS="0" LINT_CHECK="0" MAKEPOT="0"

12
LICENSE
View File

@@ -1,7 +1,7 @@
GNU AFFERO GENERAL PUBLIC LICENSE
GNU AFFERO GENERAL PUBLIC LICENSE
Version 3, 19 November 2007
Copyright (C) 2007 Free Software Foundation, Inc. <http://fsf.org/>
Copyright (C) 2007 Free Software Foundation, Inc. <https://fsf.org/>
Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.
@@ -633,8 +633,8 @@ the "copyright" line and a pointer to where the full notice is found.
Copyright (C) <year> <name of author>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published
by the Free Software Foundation, either version 3 of the License, or
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
@@ -643,7 +643,7 @@ the "copyright" line and a pointer to where the full notice is found.
GNU Affero General Public License for more details.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
along with this program. If not, see <https://www.gnu.org/licenses/>.
Also add information on how to contact you by electronic and paper mail.
@@ -658,4 +658,4 @@ specific requirements.
You should also get your employer (if you work as a programmer) or school,
if any, to sign a "copyright disclaimer" for the program, if necessary.
For more information on this, and how to apply and follow the GNU AGPL, see
<http://www.gnu.org/licenses/>.
<https://www.gnu.org/licenses/>.

View File

@@ -1,10 +1,13 @@
![Licence](https://img.shields.io/badge/licence-AGPL--3-blue.svg)
[![Runbot Status](https://runbot.odoo-community.org/runbot/badge/flat/92/13.0.svg)](https://runbot.odoo-community.org/runbot/repo/github-com-oca-account-financial-tools-92)
[![Build Status](https://travis-ci.org/OCA/account-financial-tools.svg?branch=13.0)](https://travis-ci.org/OCA/account-financial-tools)
[![Coverage Status](https://coveralls.io/repos/OCA/account-financial-tools/badge.svg?branch=13.0)](https://coveralls.io/r/OCA/account-financial-tools?branch=13.0)
[![Build Status](https://travis-ci.com/OCA/account-financial-tools.svg?branch=13.0)](https://travis-ci.com/OCA/account-financial-tools)
[![codecov](https://codecov.io/gh/OCA/account-financial-tools/branch/13.0/graph/badge.svg)](https://codecov.io/gh/OCA/account-financial-tools)
[![Translation Status](https://translation.odoo-community.org/widgets/account-financial-tools-13-0/-/svg-badge.svg)](https://translation.odoo-community.org/engage/account-financial-tools-13-0/?utm_source=widget)
<!-- /!\ do not modify above this line -->
# Account Financial Tools
Account financial Tools for Odoo/OpenERP
========================================
This project aims to make the accounting usage system easy and painless.
It provides addons to:
@@ -18,10 +21,28 @@ It provides addons to:
And much more.
Contributing
------------
Do you want to contribute? Please read our [contributing guidelines](https://github.com/OCA/maintainer-tools/blob/master/CONTRIBUTING.md).
<!-- /!\ do not modify below this line -->
Translation Status
------------------
[![Transifex Status](https://www.transifex.com/projects/p/OCA-account-financial-tools-13-0/chart/image_png)](https://www.transifex.com/projects/p/OCA-account-financial-tools-13-0)
<!-- prettier-ignore-start -->
[//]: # (addons)
This part will be replaced when running the oca-gen-addons-table script from OCA/maintainer-tools.
[//]: # (end addons)
<!-- prettier-ignore-end -->
## Licenses
This repository is licensed under [AGPL-3.0](LICENSE).
However, each module can have a totally different license, as long as they adhere to OCA
policy. Consult each module's `__manifest__.py` file, which contains a `license` key
that explains its license.
----
OCA, or the [Odoo Community Association](http://odoo-community.org/), is a nonprofit
organization whose mission is to support the collaborative development of Odoo features
and promote its widespread use.

View File

@@ -1,6 +1,7 @@
{
"name": "Tax Cash Basis Group Base Lines",
"version": "13.0.0.0.1",
"website": "https://github.com/OCA/account-financial-tools",
"summary": "Compacting the creation of Journal Lines for CABA base lines.",
"sequence": 5,
"category": "Accounting",

View File

@@ -9,7 +9,7 @@
"summary": "Wizard to update a company's account chart from a template",
"version": "13.0.2.0.0",
"author": "Tecnativa, BCIM, Okia, Odoo Community Association (OCA)",
"website": "http://github.com/OCA/account-financial-tools",
"website": "https://github.com/OCA/account-financial-tools",
"depends": ["account"],
"category": "Accounting",
"license": "AGPL-3",

View File

@@ -1,6 +1,6 @@
# Copyright 2016 Camptocamp SA
# Copyright 2018 Lorenzo Battistini <https://github.com/eLBati>
# License LGPL-3.0 or later (https://www.gnu.org/licenses/lgpl).
# License AGPL-3.0 or later (https://www.gnu.org/licenses/lgpl).
{
"name": "Account Fiscal Year",
"summary": "Create a menu for Account Fiscal Year",
@@ -11,7 +11,7 @@
"author": "Agile Business Group, Camptocamp SA, "
"Odoo Community Association (OCA)",
"maintainers": ["eLBati"],
"license": "LGPL-3",
"license": "AGPL-3",
"application": False,
"installable": True,
"depends": ["account", "date_range"],

View File

@@ -5,7 +5,7 @@
"name": "Account Invoice Constraint Chronology",
"version": "13.0.1.0.1",
"author": "Odoo Community Association (OCA), ACSONE SA/NV, CorporateHub",
"website": "https://github.com/OCA/account-financial-tools/",
"website": "https://github.com/OCA/account-financial-tools",
"license": "AGPL-3",
"category": "Accounting",
"depends": ["account"],

View File

@@ -4,7 +4,7 @@
"name": "Account Loan management",
"version": "13.0.1.1.0",
"author": "Creu Blanca,Odoo Community Association (OCA)",
"website": "http://github.com/OCA/account-financial-tools",
"website": "https://github.com/OCA/account-financial-tools",
"license": "AGPL-3",
"category": "Accounting",
"depends": ["account"],

View File

@@ -7,7 +7,7 @@
"summary": "Introduces the purchase order line to the journal items",
"version": "13.0.1.1.2",
"author": "ForgeFlow, Odoo Community Association (OCA)",
"website": "https://www.github.com/OCA/account-financial-tools",
"website": "https://github.com/OCA/account-financial-tools",
"category": "Generic",
"depends": ["purchase_stock"],
"license": "AGPL-3",

View File

@@ -6,7 +6,7 @@
"summary": "Introduces the purchase order line to the journal items",
"version": "13.0.1.0.3",
"author": "ForgeFlow S.L., " "Odoo Community Association (OCA)",
"website": "http://www.github.com/OCA/account-financial-tools",
"website": "https://github.com/OCA/account-financial-tools",
"category": "Generic",
"depends": [
"account_move_line_stock_info",

View File

@@ -3,6 +3,7 @@
{
"name": "Account Move Line Amount Currency",
"version": "13.0.1.0.0",
"website": "https://github.com/OCA/account-financial-tools",
"author": "ForgeFlow, Odoo Community Association (OCA)",
"category": "Accounts",
"license": "LGPL-3",

View File

@@ -9,7 +9,7 @@
"category": "Accounting & Finance",
"author": "Tecnativa, " "Odoo Community Association (OCA)",
"license": "AGPL-3",
"website": "https://github.com/OCA/account-financial-tools/",
"website": "https://github.com/OCA/account-financial-tools",
"depends": ["account"],
"data": ["wizards/account_move_make_netting_view.xml"],
"installable": True,

View File

@@ -9,7 +9,7 @@
"author": "Onestein,Odoo Community Association (OCA)",
"maintainers": ["astirpe"],
"license": "AGPL-3",
"website": "https://github.com/OCA/account-financial-tools/",
"website": "https://github.com/OCA/account-financial-tools",
"category": "Accounting & Finance",
"depends": ["account"],
"data": [

View File

@@ -115,7 +115,6 @@ class AccountSpreadInvoiceLineLinkWizard(models.TransientModel):
def _inverse_spread_journal_account(self):
"""Keep this for making the fields editable"""
pass
@api.depends("company_id", "invoice_type")
def _compute_spread_invoice_type_domain(self):

View File

@@ -12,7 +12,13 @@ class TestResPartner(common.TransactionCase):
super(TestResPartner, self).setUp()
self.company = self.env.user.company_id
self.company.vat_check_vies = True
self.partner = self.env["res.partner"].create({"name": "Test partner"})
self.partner = self.env["res.partner"].create(
{
"name": "Test partner",
"country_id": self.env.ref("base.es").id,
"company_type": "company",
}
)
self.vatnumber_path = "odoo.addons.base_vat.models.res_partner.vatnumber"
def test_validate_vat_vies(self):

View File

@@ -6,7 +6,7 @@
"summary": "Modify when and how anglo saxon journal items are created",
"version": "13.0.1.0.0",
"author": "ForgeFlow, Odoo Community Association (OCA)",
"website": "http://www.github.com/OCA/account-financial-tools",
"website": "https://github.com/OCA/account-financial-tools",
"category": "Generic",
"depends": ["stock_account"],
"post_load": "post_load_hook",