From f8aebc8c925a1b1d3f5d4b9f1adc53a83844a345 Mon Sep 17 00:00:00 2001 From: lorenasofia Date: Mon, 18 Sep 2023 17:38:32 -0300 Subject: [PATCH 1/2] exerciciocalculadora.py --- exerciciocalculadora.py | 69 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 69 insertions(+) create mode 100644 exerciciocalculadora.py diff --git a/exerciciocalculadora.py b/exerciciocalculadora.py new file mode 100644 index 0000000..fded148 --- /dev/null +++ b/exerciciocalculadora.py @@ -0,0 +1,69 @@ +def soma(a,b): + return a + b + +import unittest + +class TestSoma(unittest.TestCase): + def test_soma_positivos(self): + self.assertAlmostEqual(soma(2,2),4) + + def test_soma_negativos(self): + self.assertAlmostEqual(soma(-2,-2),-4) + + def test_soma_zeros(self): + self.assertAlmostEqual(soma(0,2),2) + + def test_soma_positivos_negativos(self): + self.assertAlmostEqual(soma(-1,1),0) + +if __name__=='__main__': + unittest.main() + +def sub(a,b): + return a - b + +class TestSubtra(unittest.TestCase): + def test_subtra_positivos(self): + self.assertEqual(sub(2,2),0) + + + def test_subtra_negativos(self): + self.assertEqual(sub(-2,-2),0) + + def test_subra_positivos_negativos(self): + self.assertEqual(sub(4,-3),7) + +if __name__=='__main__': + #unittest.main() + + def div(a,b): + return a / b + +class TestDivisao(unittest.TestCase): + def test_divisao_positivos(self): + self.assertEqual(div(8,8),2) + + def test_divisao_negativos(self): + self.assertEqual(div(-2,-1),1) + + def test_divisao_positivos_negativos(self): + self.assertEqual(div(8,-8),-2) + +if __name__=='__main__': + unittest.main() + +def mult(a,b): + return a * b + +class Testmultiplica(unittest.TestCase): + def test_multiplica_positivos(self): + self.assertEqual(mult(5,5),25) + + def test_multiplica_negativos(self): + self.assertEqual(mult(-8,-4),32) + + def test_multiplica_positivos_negativos(self): + self.assertEqual(mult(8,-8),-64) + +if __name__=='__main__': + unittest.main() \ No newline at end of file From 72e65a157426078349494404eff42f0a03f500c4 Mon Sep 17 00:00:00 2001 From: lorenasofia Date: Fri, 22 Sep 2023 16:59:38 -0300 Subject: [PATCH 2/2] exerciciotestes.py --- exerciciotestes.py | 75 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 75 insertions(+) create mode 100644 exerciciotestes.py diff --git a/exerciciotestes.py b/exerciciotestes.py new file mode 100644 index 0000000..45c007c --- /dev/null +++ b/exerciciotestes.py @@ -0,0 +1,75 @@ +def calcular_media(numeros): + if not numeros: + return 0 + elif len(numeros) != 0: + media = round(sum(numeros) / len(numeros), 2) + return media + +import math +import unittest +from exerciciotestes import calcular_media + +#cenários de teste +# 1- lista vazia +# 2- lista com números negativos +# 3- lista com números positivos +# 4- lista com números positivos e negativos +# 5- lista com número zero +# 6- lista com números com resultados em dizimas, impressos com 2 casas decimais +# 7- lista com números decimais +# 8- lista com números com radicais +# 9- lista com números fatorial + +class TestCalcularMedia(unittest.TestCase): + def test_media_lista_vazia(self): + resultado = calcular_media([]) + self.assertEqual(resultado, 0) + + def test_media_lista_numero_negativo(self): + resultado = calcular_media([-2,-3,-3,-4,-3]) + self.assertEqual(resultado, -3) + + def test_media_lista_numero_positivos(self): + resultado = calcular_media([2,3,3,4,3]) + self.assertEqual(resultado, 3) + + def test_media_lista_numero_positivos_negativos(self): + resultado = calcular_media([-2,5,-3,4,6,2]) + self.assertEqual(resultado, 2) + + def test_media_lista_numeros_zero(self): + resultado = calcular_media([0,0,0,0]) + self.assertEqual(resultado, 0) + + def test_media_lista_resultado_dizima(self): + resultado = calcular_media([6,2,2]) + self.assertEqual(resultado, 3.33) + + def test_media_lista_numero_decimal(self): + resultado = calcular_media([6.5,2.9,2.3]) + self.assertEqual(resultado, 3.9) + + def test_media_lista_numeros_com_radicais(self): + nume1 = 25 + nume2 = 16 + nume3 = 9 + raiz1 = math.sqrt(nume1) + raiz2 = math.sqrt(nume2) + raiz3 = math.sqrt(nume3) + resultado = calcular_media([raiz1, raiz2, raiz3]) + self.assertEqual(resultado, 4) + + def test_media_lista_numeros_fatorial(self): + nume1 = 3 + nume2 = 4 + nume3 = 2 + nume4 = 4 + fatorial1 = math.factorial(nume1) + fatorial2 = math.factorial(nume2) + fatorial3 = math.factorial(nume3) + fatorial4 = math.factorial(nume4) + resultado = calcular_media([fatorial1, fatorial2, fatorial3, fatorial4]) + self.assertEqual(resultado, 14) + +if __name__ == '__main__': + unittest.main() \ No newline at end of file