From 3047ca40242b5b8015536eb5ee0121733875ecd8 Mon Sep 17 00:00:00 2001 From: Vitor Buxbaum Date: Sun, 21 Mar 2021 17:44:48 -0300 Subject: [PATCH 1/2] =?UTF-8?q?1.8=20-=20Explica=C3=A7=C3=A3o=20de=20decis?= =?UTF-8?q?=C3=B5es;=20asserts?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 1_introducao/8_heranca_polimorfismo.py | 25 +++++++++++++++++++------ 1 file changed, 19 insertions(+), 6 deletions(-) diff --git a/1_introducao/8_heranca_polimorfismo.py b/1_introducao/8_heranca_polimorfismo.py index 3d8f797..8b0c77c 100644 --- a/1_introducao/8_heranca_polimorfismo.py +++ b/1_introducao/8_heranca_polimorfismo.py @@ -1,3 +1,13 @@ +""" +Nesta implementação em Java, o método imprime() lança Strings na saída padrão. +Para facilitar a implementação de testes, o comportamento desse método foi +alterado para que apenas retorne as respectivas Strings. + +Nomes de classes foram alterados com fins de alcançar neutralidade de +gênero. +""" + + class PessoaEmpregada: def __init__(self): self._salario = float() @@ -6,7 +16,7 @@ def salario_mensal(self): return self._salario def imprime(self): - print("Pessoa Empregada") + return "Pessoa Empregada" class PessoaSecretaria(PessoaEmpregada): @@ -15,7 +25,7 @@ def __init__(self): self.__velocidade_de_digitacao = int() def imprime(self): - print("Pessoa Secretaria") + return "Pessoa Secretaria" class Gerente(PessoaEmpregada): @@ -27,7 +37,7 @@ def salario_mensal(self): return self._salario + self.__bonus def imprime(self): - print("Gerente") + return "Gerente" # Exemplo de polimorfismo @@ -36,6 +46,9 @@ def imprime(self): pessoa_secretaria = PessoaSecretaria() gerente = Gerente() -pessoa_empregada.imprime() -pessoa_secretaria.imprime() -gerente.imprime() +assert pessoa_empregada.imprime() == "Pessoa Empregada" +assert pessoa_secretaria.imprime() == "Pessoa Secretaria" +assert gerente.imprime() == "Gerente" + +assert isinstance(pessoa_secretaria, PessoaEmpregada) +assert isinstance(gerente, PessoaEmpregada) From eb0787d2e9a4b894fb876d049fe5be11374ce591 Mon Sep 17 00:00:00 2001 From: Vitor Buxbaum Date: Sun, 21 Mar 2021 17:48:43 -0300 Subject: [PATCH 2/2] 1.7 - Assert de tipo --- 1_introducao/7_painel_de_controle.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/1_introducao/7_painel_de_controle.py b/1_introducao/7_painel_de_controle.py index 4932f97..02100bd 100644 --- a/1_introducao/7_painel_de_controle.py +++ b/1_introducao/7_painel_de_controle.py @@ -10,3 +10,7 @@ def ligar_forno(self): def desligar_forno(self): # Código do método pass + + +painel_teste = PainelDeControle() +assert isinstance(painel_teste, PainelDeControle)