コード例 #1
0
 def teste_deve_avaliar_uma_subtracao(self):
     expr = Expressao("3-2")
     self.assertEquals(expr.resolve_expressao(), 1)
コード例 #2
0
 def teste_deve_tokenizar_expressao_complexa(self):
     expr = Expressao("2 + 5 *(7 * 10 + 5.7 -10)")
     self.assertEquals(
         expr.tokens,
         [2, "+", 5, "*", "(", 7, "*", 10, "+", 5.7, "-", 10, ")"])
コード例 #3
0
 def teste_deve_avaliar_uma_soma(self):
     expr = Expressao("1+1")
     self.assertEquals(expr.resolve_expressao(), 2)
     expr = Expressao("20+22")
     self.assertEquals(expr.resolve_expressao(), 42)
コード例 #4
0
 def teste_deve_avaliar_uma_subtracao(self):
     expr = Expressao("3-2")
     self.assertEquals(expr.resolve_expressao(), 1)
コード例 #5
0
 def teste_deve_tokenizar_operadores_seguidos(self):
     expr = Expressao("1 + (1)")
     self.assertEquals(expr.tokens, [1, "+", "(", 1, ")"])
コード例 #6
0
 def teste_deve_separar_operadores_e_operandos(self):
     expr = Expressao("2 + 3")
     self.assertEquals(expr.operadores, ["+"])
     self.assertEquals(expr.operandos, [2, 3])
コード例 #7
0
 def teste_deve_priorizar_operadores(self):
     expr = Expressao("3 * 5 + 9")
     self.assertEquals(expr.resolve_expressao(), 24)
コード例 #8
0
 def teste_deve_tokenizar_numeros_de_um_digito(self):
     expr = Expressao("4")
     # primeiro token da lista de tokens tem que ser o numero 4
     self.assertEquals(expr.tokens[0], 4)
コード例 #9
0
 def teste_deve_ler_numero_decimal(self):
     expr = Expressao("1.5")
     # primeiro token da lista de tokens tem que ser o decimal 1.5
     self.assertEquals(expr.tokens[0], 1.5)
コード例 #10
0
 def teste_deve_priorizar_operadores(self):
     expr = Expressao("3 * 5 + 9")
     self.assertEquals(expr.resolve_expressao(), 24)    
コード例 #11
0
 def teste_deve_possuir_lista_de_tokens(self):
     expr = Expressao("")
     self.assertTrue(hasattr(expr, "tokens"))
     self.assertTrue(isinstance(expr.tokens, list))
コード例 #12
0
 def teste_deve_somar_varios_operandos(self):
     expr = Expressao("1 + 2 + 3 + 4")
     self.assertEquals(expr.resolve_expressao(), 10)
コード例 #13
0
 def teste_deve_avaliar_uma_divisao(self):
     expr = Expressao("84/2")
     self.assertEquals(expr.resolve_expressao(), 42)
コード例 #14
0
 def teste_deve_avaliar_uma_multiplicacao(self):
     expr = Expressao("21*2")
     self.assertEquals(expr.resolve_expressao(), 42)
コード例 #15
0
 def teste_deve_avaliar_uma_multiplicacao(self):
     expr = Expressao("21*2")
     self.assertEquals(expr.resolve_expressao(), 42)
コード例 #16
0
 def teste_deve_ignorar_espaco(self):
     expr = Expressao(" ")
     self.assertEquals(expr.tokens, [])
コード例 #17
0
 def teste_deve_avaliar_uma_divisao(self):
     expr = Expressao("84/2")
     self.assertEquals(expr.resolve_expressao(), 42)
コード例 #18
0
 def teste_deve_tokenizar_soma(self):
     expr = Expressao(" 1 + 1 ")
     self.assertEquals(len(expr.tokens), 3)
     self.assertTrue("+" in expr.tokens)
コード例 #19
0
 def teste_deve_somar_varios_operandos(self):
     expr = Expressao("1 + 2 + 3 + 4")
     self.assertEquals(expr.resolve_expressao(), 10)
コード例 #20
0
 def teste_deve_tokenizar_subtracao(self):
     expr = Expressao("1-1")
     self.assertEquals(len(expr.tokens), 3)
     self.assertTrue("-" in expr.tokens)
コード例 #21
0
 def teste_deve_instanciar_uma_expressao(self):
     self.assertTrue(isinstance(Expressao(""), Expressao))
コード例 #22
0
 def teste_deve_avaliar_uma_soma(self):
     expr = Expressao("1+1")
     self.assertEquals(expr.resolve_expressao(), 2)
     expr = Expressao("20+22")
     self.assertEquals(expr.resolve_expressao(), 42)