text: '''
  Como testar Bhaskara:
  
  x² = 0                      (1 raiz)
  (x-3)(x-2) = x² -5x + 6 = 0 (2 raízes)
  10x² + 10x + 10 = 0         (0 raízes reais)
  10x² + 20x + 10 = 0         (1 raiz = -1)
  
  Fixtures
   - uma 'fixture' é um valor fixo para um conjunto de testes;
   - é usado muitas vezes para guardar um objeto que requer um pouco mais
  de trabalho para ser criado;
   - para definir uma fixture, primeiro importamos o 'pytest' e depois
  implementamos uma função que cria o objeto e a marcamos com @pytest.fixture
  '''
  import pytest
  import Bhaskara_testavel
  
  class TestBhaskara:
  
      @pytest.fixture
      def b(self):
          return Bhaskara_testavel.Bhaskara()  # nome do módulo e depois o nome da classe
  
      @pytest.mark.parametrize("entrada, esperado", [
          ((1, 0, 0), (1, 0)),
          ((1, -5, 6), (2, 3, 2)),
          ((10, 10, 10), 0),
          ((10, 20, 10), (1, -1))
      ])
  
      def testa_uma_raiz(self, b, entrada, esperado):
          entrada_a, entrada_b, entrada_c = entrada
          assert b.calcula_raizes(entrada_a, entrada_b, entrada_c) == esperado