From fe44b6f4f4b43e9b437b70c5ceb09de1e3462672 Mon Sep 17 00:00:00 2001 From: Tiago Amaral Date: Fri, 18 Oct 2024 07:49:54 -0300 Subject: [PATCH] [IMP] add tests. --- l10n_br_crm_cnpj_search/README.rst | 31 ++++++----- .../models/l10n_br_base_party_mixin.py | 2 +- l10n_br_crm_cnpj_search/pyproject.toml | 3 + l10n_br_crm_cnpj_search/readme/CONFIGURE.md | 5 ++ l10n_br_crm_cnpj_search/readme/CONFIGURE.rst | 1 - .../readme/CONTRIBUTORS.md | 2 + .../readme/CONTRIBUTORS.rst | 3 - .../{DESCRIPTION.rst => DESCRIPTION.md} | 3 +- .../readme/{INSTALL.rst => INSTALL.md} | 0 l10n_br_crm_cnpj_search/readme/USAGE.md | 6 ++ l10n_br_crm_cnpj_search/readme/USAGE.rst | 6 -- .../static/description/index.html | 16 ++++-- l10n_br_crm_cnpj_search/tests/__init__.py | 2 + .../tests/test_receitaws.py | 55 +++++++++++++++++++ l10n_br_crm_cnpj_search/tests/test_serpro.py | 9 +++ 15 files changed, 114 insertions(+), 30 deletions(-) create mode 100644 l10n_br_crm_cnpj_search/pyproject.toml create mode 100644 l10n_br_crm_cnpj_search/readme/CONFIGURE.md delete mode 100644 l10n_br_crm_cnpj_search/readme/CONFIGURE.rst create mode 100644 l10n_br_crm_cnpj_search/readme/CONTRIBUTORS.md delete mode 100644 l10n_br_crm_cnpj_search/readme/CONTRIBUTORS.rst rename l10n_br_crm_cnpj_search/readme/{DESCRIPTION.rst => DESCRIPTION.md} (60%) rename l10n_br_crm_cnpj_search/readme/{INSTALL.rst => INSTALL.md} (100%) create mode 100644 l10n_br_crm_cnpj_search/readme/USAGE.md delete mode 100644 l10n_br_crm_cnpj_search/readme/USAGE.rst create mode 100644 l10n_br_crm_cnpj_search/tests/__init__.py create mode 100644 l10n_br_crm_cnpj_search/tests/test_receitaws.py create mode 100644 l10n_br_crm_cnpj_search/tests/test_serpro.py diff --git a/l10n_br_crm_cnpj_search/README.rst b/l10n_br_crm_cnpj_search/README.rst index 6c4bb557a82c..bc04c5ca651a 100644 --- a/l10n_br_crm_cnpj_search/README.rst +++ b/l10n_br_crm_cnpj_search/README.rst @@ -28,7 +28,8 @@ Brazilian Localization CRM CNPJ Search |badge1| |badge2| |badge3| |badge4| |badge5| -Módulo que adiciona um botão para preencher automaticamente os campos de um lead a partir do seu CNPJ. +Módulo que adiciona um botão para preencher automaticamente os campos de +um lead a partir do seu CNPJ. **Table of contents** @@ -43,17 +44,21 @@ Este módulo depende do módulo l10n_br_cnpj_search e l10n_br_crm. Configuration ============= -Esta busca de informações a partir do cnpj é realizada com base no provedor configurado na aba de configurações, vale ressaltar que o provedor receitaws permite a realização de três consultas por minuto, enquanto que o SERPRO é pago e permite consultas ilimitadas em seus planos. +Esta busca de informações a partir do cnpj é realizada com base no +provedor configurado na aba de configurações, vale ressaltar que o +provedor receitaws permite a realização de três consultas por minuto, +enquanto que o SERPRO é pago e permite consultas ilimitadas em seus +planos. Usage ===== -#. Acesse Configurações -#. Escolha um provedor para a busca -#. Habilite o Lead nas configurações do CRM -#. Acesse CRM > Lead > Criar -#. Preencha o nome do Lead, insira no campo de CNPJ o CNPJ que deseja buscar e clique na lupa ao lado do campo para buscar - +1. Acesse Configurações +2. Escolha um provedor para a busca +3. Habilite o Lead nas configurações do CRM +4. Acesse CRM > Lead > Criar +5. Preencha o nome do Lead, insira no campo de CNPJ o CNPJ que deseja + buscar e clique na lupa ao lado do campo para buscar Bug Tracker =========== @@ -69,19 +74,19 @@ Credits ======= Authors -~~~~~~~ +------- * KMEE Contributors -~~~~~~~~~~~~ +------------ -* `KMEE `_: +- `KMEE `__: - * Bruno Corredato Botti + - Bruno Corredato Botti Maintainers -~~~~~~~~~~~ +----------- This module is maintained by the OCA. diff --git a/l10n_br_crm_cnpj_search/models/l10n_br_base_party_mixin.py b/l10n_br_crm_cnpj_search/models/l10n_br_base_party_mixin.py index 141c0f071ab9..e3ecb358ff48 100644 --- a/l10n_br_crm_cnpj_search/models/l10n_br_base_party_mixin.py +++ b/l10n_br_crm_cnpj_search/models/l10n_br_base_party_mixin.py @@ -5,7 +5,7 @@ class PartyMixin(models.AbstractModel): _inherit = "l10n_br_base.party.mixin" def action_open_cnpj_search_wizard(self): - res = super(PartyMixin, self).action_open_cnpj_search_wizard() + res = super().action_open_cnpj_search_wizard() if self._name == "crm.lead": default_lead_id = self.id else: diff --git a/l10n_br_crm_cnpj_search/pyproject.toml b/l10n_br_crm_cnpj_search/pyproject.toml new file mode 100644 index 000000000000..4231d0cccb3d --- /dev/null +++ b/l10n_br_crm_cnpj_search/pyproject.toml @@ -0,0 +1,3 @@ +[build-system] +requires = ["whool"] +build-backend = "whool.buildapi" diff --git a/l10n_br_crm_cnpj_search/readme/CONFIGURE.md b/l10n_br_crm_cnpj_search/readme/CONFIGURE.md new file mode 100644 index 000000000000..a601896bc219 --- /dev/null +++ b/l10n_br_crm_cnpj_search/readme/CONFIGURE.md @@ -0,0 +1,5 @@ +Esta busca de informações a partir do cnpj é realizada com base no +provedor configurado na aba de configurações, vale ressaltar que o +provedor receitaws permite a realização de três consultas por minuto, +enquanto que o SERPRO é pago e permite consultas ilimitadas em seus +planos. diff --git a/l10n_br_crm_cnpj_search/readme/CONFIGURE.rst b/l10n_br_crm_cnpj_search/readme/CONFIGURE.rst deleted file mode 100644 index 8d3da62d9c00..000000000000 --- a/l10n_br_crm_cnpj_search/readme/CONFIGURE.rst +++ /dev/null @@ -1 +0,0 @@ -Esta busca de informações a partir do cnpj é realizada com base no provedor configurado na aba de configurações, vale ressaltar que o provedor receitaws permite a realização de três consultas por minuto, enquanto que o SERPRO é pago e permite consultas ilimitadas em seus planos. diff --git a/l10n_br_crm_cnpj_search/readme/CONTRIBUTORS.md b/l10n_br_crm_cnpj_search/readme/CONTRIBUTORS.md new file mode 100644 index 000000000000..e0b008c7bd57 --- /dev/null +++ b/l10n_br_crm_cnpj_search/readme/CONTRIBUTORS.md @@ -0,0 +1,2 @@ +- [KMEE](https://www.kmee.com.br): + - Bruno Corredato Botti \<\> diff --git a/l10n_br_crm_cnpj_search/readme/CONTRIBUTORS.rst b/l10n_br_crm_cnpj_search/readme/CONTRIBUTORS.rst deleted file mode 100644 index 8358e5ed64d3..000000000000 --- a/l10n_br_crm_cnpj_search/readme/CONTRIBUTORS.rst +++ /dev/null @@ -1,3 +0,0 @@ -* `KMEE `_: - - * Bruno Corredato Botti diff --git a/l10n_br_crm_cnpj_search/readme/DESCRIPTION.rst b/l10n_br_crm_cnpj_search/readme/DESCRIPTION.md similarity index 60% rename from l10n_br_crm_cnpj_search/readme/DESCRIPTION.rst rename to l10n_br_crm_cnpj_search/readme/DESCRIPTION.md index 1984dd6cb6dc..13ad800fe5ba 100644 --- a/l10n_br_crm_cnpj_search/readme/DESCRIPTION.rst +++ b/l10n_br_crm_cnpj_search/readme/DESCRIPTION.md @@ -1 +1,2 @@ -Módulo que adiciona um botão para preencher automaticamente os campos de um lead a partir do seu CNPJ. +Módulo que adiciona um botão para preencher automaticamente os campos de +um lead a partir do seu CNPJ. diff --git a/l10n_br_crm_cnpj_search/readme/INSTALL.rst b/l10n_br_crm_cnpj_search/readme/INSTALL.md similarity index 100% rename from l10n_br_crm_cnpj_search/readme/INSTALL.rst rename to l10n_br_crm_cnpj_search/readme/INSTALL.md diff --git a/l10n_br_crm_cnpj_search/readme/USAGE.md b/l10n_br_crm_cnpj_search/readme/USAGE.md new file mode 100644 index 000000000000..5f47d82fe2be --- /dev/null +++ b/l10n_br_crm_cnpj_search/readme/USAGE.md @@ -0,0 +1,6 @@ +1. Acesse Configurações +2. Escolha um provedor para a busca +3. Habilite o Lead nas configurações do CRM +4. Acesse CRM \> Lead \> Criar +5. Preencha o nome do Lead, insira no campo de CNPJ o CNPJ que deseja + buscar e clique na lupa ao lado do campo para buscar diff --git a/l10n_br_crm_cnpj_search/readme/USAGE.rst b/l10n_br_crm_cnpj_search/readme/USAGE.rst deleted file mode 100644 index 11fc79501477..000000000000 --- a/l10n_br_crm_cnpj_search/readme/USAGE.rst +++ /dev/null @@ -1,6 +0,0 @@ -#. Acesse Configurações -#. Escolha um provedor para a busca -#. Habilite o Lead nas configurações do CRM -#. Acesse CRM > Lead > Criar -#. Preencha o nome do Lead, insira no campo de CNPJ o CNPJ que deseja buscar e clique na lupa ao lado do campo para buscar - diff --git a/l10n_br_crm_cnpj_search/static/description/index.html b/l10n_br_crm_cnpj_search/static/description/index.html index 9b6cb8ee0601..faffbf75fc9b 100644 --- a/l10n_br_crm_cnpj_search/static/description/index.html +++ b/l10n_br_crm_cnpj_search/static/description/index.html @@ -370,7 +370,8 @@

Brazilian Localization CRM CNPJ Search

!! source digest: sha256:5ced8ced231656b9a794810c90ec2cd72291b38b3b1ac493a810f0a24dde8221 !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! -->

Beta License: AGPL-3 OCA/l10n-brazil Translate me on Weblate Try me on Runboat

-

Módulo que adiciona um botão para preencher automaticamente os campos de um lead a partir do seu CNPJ.

+

Módulo que adiciona um botão para preencher automaticamente os campos de +um lead a partir do seu CNPJ.

Table of contents

Configuration

-

Esta busca de informações a partir do cnpj é realizada com base no provedor configurado na aba de configurações, vale ressaltar que o provedor receitaws permite a realização de três consultas por minuto, enquanto que o SERPRO é pago e permite consultas ilimitadas em seus planos.

+

Esta busca de informações a partir do cnpj é realizada com base no +provedor configurado na aba de configurações, vale ressaltar que o +provedor receitaws permite a realização de três consultas por minuto, +enquanto que o SERPRO é pago e permite consultas ilimitadas em seus +planos.

Usage

    -
  1. Acesse Configurações
  2. +
  3. Acesse Configurações
  4. Escolha um provedor para a busca
  5. Habilite o Lead nas configurações do CRM
  6. -
  7. Acesse CRM > Lead > Criar
  8. -
  9. Preencha o nome do Lead, insira no campo de CNPJ o CNPJ que deseja buscar e clique na lupa ao lado do campo para buscar
  10. +
  11. Acesse CRM > Lead > Criar
  12. +
  13. Preencha o nome do Lead, insira no campo de CNPJ o CNPJ que deseja +buscar e clique na lupa ao lado do campo para buscar
diff --git a/l10n_br_crm_cnpj_search/tests/__init__.py b/l10n_br_crm_cnpj_search/tests/__init__.py new file mode 100644 index 000000000000..418f5980e8e3 --- /dev/null +++ b/l10n_br_crm_cnpj_search/tests/__init__.py @@ -0,0 +1,2 @@ +from . import test_receitaws +from . import test_serpro diff --git a/l10n_br_crm_cnpj_search/tests/test_receitaws.py b/l10n_br_crm_cnpj_search/tests/test_receitaws.py new file mode 100644 index 000000000000..ad43dd6b1b00 --- /dev/null +++ b/l10n_br_crm_cnpj_search/tests/test_receitaws.py @@ -0,0 +1,55 @@ +# Copyright 2024 KMEE +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo.tests import TransactionCase + + +class TestCRMReceitaws(TransactionCase): + @classmethod + def setUpClass(cls): + super().setUpClass() + cls.crm_lead_model = cls.env["crm.lead"] + cls.res_partner_model = cls.env["res.partner"] + cls.crm_lead_1 = cls.crm_lead_model.create({"name": "Jamanta"}) + + def test_convert_to_oportunity(self): + # self.crm_lead_1._onchange_cnpj_cpf() + self.crm_lead_1.write({"cnpj_cpf": "31.954.065/0001-08"}) + action_wizard = self.crm_lead_1.action_open_cnpj_search_wizard() + wizard_context = action_wizard.get("context") + wizard = ( + self.env["partner.search.wizard"].with_context(**wizard_context).create({}) + ) + wizard.action_update_partner() + self.assertEqual( + self.crm_lead_1.legal_name, + "Atacadao Jamanta Ltda", + ) + self.assertEqual(self.crm_lead_1.name, "Atacadao Jamanta") + self.assertEqual(self.crm_lead_1.street, "Rodovia Br 393") + self.assertEqual(self.crm_lead_1.street2, "Km 72") + self.assertEqual(self.crm_lead_1.street_number, "774") + self.assertEqual(self.crm_lead_1.zip, "25.887-000") + self.assertEqual(self.crm_lead_1.district, "Jamapara") + self.assertEqual(self.crm_lead_1.phone, "(32) 8412-7486") + self.assertEqual(self.crm_lead_1.mobile, False) + self.assertEqual(self.crm_lead_1.state_id.code, "RJ") + self.assertEqual(self.crm_lead_1.equity_capital, 95400.0) + self.assertEqual(self.crm_lead_1.cnae_main_id.code, "4635-4/02") + + cnaes = [ + "4635-4/99", + "4646-0/01", + "4691-5/00", + "4723-7/00", + "4729-6/99", + "4772-5/00", + "4930-2/02", + ] + cnaes = sorted(cnaes) + cnae_secondary_codes = [ + cnae.code for cnae in self.crm_lead_1.cnae_secondary_ids + ] + cnae_secondary_codes = sorted(cnae_secondary_codes) + for i in range(0, len(cnae_secondary_codes)): + self.assertEqual(cnaes[i], cnae_secondary_codes[i]) diff --git a/l10n_br_crm_cnpj_search/tests/test_serpro.py b/l10n_br_crm_cnpj_search/tests/test_serpro.py new file mode 100644 index 000000000000..e9a3a0757890 --- /dev/null +++ b/l10n_br_crm_cnpj_search/tests/test_serpro.py @@ -0,0 +1,9 @@ +# Copyright 2024 KMEE +# License AGPL-3.0 or later (https://www.gnu.org/licenses/agpl). + +from odoo.tests import TransactionCase + + +class TestCRMSerpro(TransactionCase): + def test_crm_serpro_basica(self): + self.assertTrue(True)