Skip to content
This repository was archived by the owner on Sep 15, 2023. It is now read-only.

Complementar os testes que tem chamada super() #79

Open
1 of 8 tasks
rodrigondec opened this issue Jun 16, 2020 · 2 comments
Open
1 of 8 tasks

Complementar os testes que tem chamada super() #79

rodrigondec opened this issue Jun 16, 2020 · 2 comments
Labels
Importância: Alta ⚠️ Tarefa muito importante Status: Implementável ✔️ Essa tarefa já possui todos os detalhes técnicos necessários para ser feita

Comments

@rodrigondec
Copy link
Member

rodrigondec commented Jun 16, 2020

Resumo

Nossos testes de conjuntos estão testando apenas o conjuto de dados hard-coded.
Porém não testam a chamada do método super corretamente.

Tarefas

  • Buyer
  • BusinessOrIndividual
  • Card
  • Invoice
  • Transaction
  • PaymentMethod
  • Token
  • Seller

Exemplo

Método

    @classmethod
    def get_required_fields(cls):
        fields = super().get_required_fields()
        return fields.union({"expiration_date", "payment_limit_date"})

Teste

    def test_required_fields(self):
        self.assertIsSubSet(
            {"expiration_date", "payment_limit_date"}, Invoice.get_required_fields()
        )

Proposta para o teste

    def test_required_fields(self):
        with patch("caminho.do.import.do.objeto.pai.ObjetoPai.get_required_fields") as mocked_super:
            mocked_super.return_value = set()
            self.assertIsSubSet(
                {"expiration_date", "payment_limit_date"}, Invoice.get_required_fields()
            )
            mocked_super.assert_called_once()
@PedroRegisPOAR
Copy link
Contributor

Chequei o BusinessOrIndividual e seus testes, pelo que entendi/vi não há necessidade de se modificar os testes desse, pois não tem chamadas a super() nos métodos da classe BusinessOrIndividual. @rodrigondec em algum momento me confirme que não é preciso mexer nos testes do BusinessOrIndividual.

@rodrigondec
Copy link
Member Author

Ele não tem o super() mas tem o cls.get...

image

Seria bom mockar esse método e dar um assert de que foi chamado

@rodrigondec rodrigondec added Importância: Alta ⚠️ Tarefa muito importante Status: Implementável ✔️ Essa tarefa já possui todos os detalhes técnicos necessários para ser feita and removed Prioridade: Crítica labels May 18, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
Importância: Alta ⚠️ Tarefa muito importante Status: Implementável ✔️ Essa tarefa já possui todos os detalhes técnicos necessários para ser feita
Projects
None yet
Development

No branches or pull requests

2 participants