diff --git a/partner_contact_age_range/README.rst b/partner_contact_age_range/README.rst index 2844ce2de..12639eaa6 100644 --- a/partner_contact_age_range/README.rst +++ b/partner_contact_age_range/README.rst @@ -14,13 +14,13 @@ Contact's Age Range :target: http://www.gnu.org/licenses/agpl-3.0-standalone.html :alt: License: AGPL-3 .. |badge3| image:: https://img.shields.io/badge/github-OCA%2Fpartner--contact-lightgray.png?logo=github - :target: https://github.com/OCA/partner-contact/tree/13.0/partner_contact_age_range + :target: https://github.com/OCA/partner-contact/tree/14.0/partner_contact_age_range :alt: OCA/partner-contact .. |badge4| image:: https://img.shields.io/badge/weblate-Translate%20me-F47D42.png - :target: https://translation.odoo-community.org/projects/partner-contact-13-0/partner-contact-13-0-partner_contact_age_range + :target: https://translation.odoo-community.org/projects/partner-contact-14-0/partner-contact-14-0-partner_contact_age_range :alt: Translate me on Weblate .. |badge5| image:: https://img.shields.io/badge/runbot-Try%20me-875A7B.png - :target: https://runbot.odoo-community.org/runbot/134/13.0 + :target: https://runbot.odoo-community.org/runbot/134/14.0 :alt: Try me on Runbot |badge1| |badge2| |badge3| |badge4| |badge5| @@ -31,7 +31,7 @@ The age range is computed based on the partner's age. The cron job will auto compute age range. -.. image:: https://raw.githubusercontent.com/OCA/partner-contact/13.0/partner_contact_age_range/static/description/age_range.png +.. image:: https://raw.githubusercontent.com/OCA/partner-contact/14.0/partner_contact_age_range/static/description/age_range.png **Table of contents** @@ -45,7 +45,7 @@ Go to Contact / Configuration / Age Ranges Configure your Age Ranges -.. image:: https://raw.githubusercontent.com/OCA/partner-contact/13.0/partner_contact_age_range/static/description/configure_age_range.png +.. image:: https://raw.githubusercontent.com/OCA/partner-contact/14.0/partner_contact_age_range/static/description/configure_age_range.png Contacts will automatically compute age range based on age. @@ -55,7 +55,7 @@ Bug Tracker Bugs are tracked on `GitHub Issues `_. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -`feedback `_. +`feedback `_. Do not contact contributors directly about support or help with technical issues. @@ -71,6 +71,7 @@ Contributors ~~~~~~~~~~~~ * Druidoo () +* Tharathip Chaweewongphan Maintainers ~~~~~~~~~~~ @@ -85,6 +86,6 @@ OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use. -This module is part of the `OCA/partner-contact `_ project on GitHub. +This module is part of the `OCA/partner-contact `_ project on GitHub. You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute. diff --git a/partner_contact_age_range/__manifest__.py b/partner_contact_age_range/__manifest__.py index c8b3c2cc7..e19153824 100644 --- a/partner_contact_age_range/__manifest__.py +++ b/partner_contact_age_range/__manifest__.py @@ -3,13 +3,13 @@ { "name": "Contact's Age Range", - "version": "13.0.1.0.0", + "version": "14.0.1.0.0", "license": "AGPL-3", "author": "Druidoo, Odoo Community Association (OCA)", "website": "https://github.com/OCA/partner-contact", "category": "Customer Relationship Management", "summary": "Age Range for Contact's", - "depends": ["partner_contact_birthdate"], + "depends": ["contacts", "partner_contact_birthdate"], "data": [ "security/ir.model.access.csv", "data/age_range_cron.xml", diff --git a/partner_contact_age_range/readme/CONTRIBUTORS.rst b/partner_contact_age_range/readme/CONTRIBUTORS.rst index a550e6fcd..6d9a535cc 100644 --- a/partner_contact_age_range/readme/CONTRIBUTORS.rst +++ b/partner_contact_age_range/readme/CONTRIBUTORS.rst @@ -1 +1,2 @@ * Druidoo () +* Tharathip Chaweewongphan diff --git a/partner_contact_age_range/static/description/index.html b/partner_contact_age_range/static/description/index.html index ff182ed89..d26d04d91 100644 --- a/partner_contact_age_range/static/description/index.html +++ b/partner_contact_age_range/static/description/index.html @@ -367,11 +367,11 @@ ul.auto-toc { !! This file is generated by oca-gen-addon-readme !! !! changes will be overwritten. !! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! --> -

Beta License: AGPL-3 OCA/partner-contact Translate me on Weblate Try me on Runbot

+

Beta License: AGPL-3 OCA/partner-contact Translate me on Weblate Try me on Runbot

This module allows to set up age ranges to categorize partners.

The age range is computed based on the partner’s age.

The cron job will auto compute age range.

-https://raw.githubusercontent.com/OCA/partner-contact/13.0/partner_contact_age_range/static/description/age_range.png +https://raw.githubusercontent.com/OCA/partner-contact/14.0/partner_contact_age_range/static/description/age_range.png

Table of contents

    @@ -389,7 +389,7 @@ ul.auto-toc {

    Usage

    Go to Contact / Configuration / Age Ranges

    Configure your Age Ranges

    -https://raw.githubusercontent.com/OCA/partner-contact/13.0/partner_contact_age_range/static/description/configure_age_range.png +https://raw.githubusercontent.com/OCA/partner-contact/14.0/partner_contact_age_range/static/description/configure_age_range.png

    Contacts will automatically compute age range based on age.

@@ -397,7 +397,7 @@ ul.auto-toc {

Bugs are tracked on GitHub Issues. In case of trouble, please check there if your issue has already been reported. If you spotted it first, help us smashing it by providing a detailed and welcomed -feedback.

+feedback.

Do not contact contributors directly about support or help with technical issues.

@@ -412,6 +412,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome

Contributors

@@ -421,7 +422,7 @@ If you spotted it first, help us smashing it by providing a detailed and welcome

OCA, or the Odoo Community Association, is a nonprofit organization whose mission is to support the collaborative development of Odoo features and promote its widespread use.

-

This module is part of the OCA/partner-contact project on GitHub.

+

This module is part of the OCA/partner-contact project on GitHub.

You are welcome to contribute. To learn how please visit https://odoo-community.org/page/Contribute.

diff --git a/partner_contact_age_range/tests/test_res_partner_age_range.py b/partner_contact_age_range/tests/test_res_partner_age_range.py index 0a670e843..0dfdde209 100644 --- a/partner_contact_age_range/tests/test_res_partner_age_range.py +++ b/partner_contact_age_range/tests/test_res_partner_age_range.py @@ -1,16 +1,43 @@ # Copyright 2019-2020: Druidoo () +# Copyright 2020 Ecosoft Co., Ltd (http://ecosoft.co.th/) # License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). +from datetime import datetime + +from dateutil.relativedelta import relativedelta + from odoo.exceptions import ValidationError from odoo.tests.common import TransactionCase class TestRespartnerAgeRange(TransactionCase): - def test_overlap(self): - self.env["res.partner.age.range"].create( + def setUp(self): + super().setUp() + self.range_model = self.env["res.partner.age.range"] + self.partner_model = self.env["res.partner"] + self.baby_range = self.range_model.create( {"name": "baby", "age_from": 0, "age_to": 2} ) + self.partner = self.partner_model.create( + { + "name": "Test", + "birthdate_date": datetime.today() - relativedelta(years=1, days=10), + } + ) + + def test_age_from(self): + age_from = self.range_model._default_age_from() + toddler_range = self.range_model.create( + {"name": "Toddler", "age_from": age_from, "age_to": 4} + ) + self.assertEqual(toddler_range.age_from, self.baby_range.age_to + 1) + + def test_validate_range(self): with self.assertRaises(ValidationError): - self.env["res.partner.age.range"].create( - {"name": "Toddler", "age_from": 1, "age_to": 4} - ) + self.range_model.create({"name": "Child", "age_from": 1, "age_to": 12}) + with self.assertRaises(ValidationError): + self.range_model.create({"name": "Teenager", "age_from": 16, "age_to": 15}) + + def test_cron_update_age_range_id(self): + self.partner_model._cron_update_age_range_id() + self.assertEqual(self.partner.age_range_id, self.baby_range) diff --git a/setup/partner_contact_age_range/odoo/addons/partner_contact_age_range b/setup/partner_contact_age_range/odoo/addons/partner_contact_age_range new file mode 120000 index 000000000..1c70f3146 --- /dev/null +++ b/setup/partner_contact_age_range/odoo/addons/partner_contact_age_range @@ -0,0 +1 @@ +../../../../partner_contact_age_range \ No newline at end of file diff --git a/setup/partner_contact_age_range/setup.py b/setup/partner_contact_age_range/setup.py new file mode 100644 index 000000000..28c57bb64 --- /dev/null +++ b/setup/partner_contact_age_range/setup.py @@ -0,0 +1,6 @@ +import setuptools + +setuptools.setup( + setup_requires=['setuptools-odoo'], + odoo_addon=True, +)