expecter le ayuda a escribir afirmaciones. Nunca más va a olvidar lo que se espera y lo que es real!
Expectativas básicas son fáciles:
& Nbsp; >>> from esperar expecter importación
& Nbsp; >>> esperar ("algunos" + "cosa") == 'algo'
& Nbsp; esperar ("algo")
& Nbsp; >>> esperar (1)> 100
& Nbsp; El rastreo (most recent call last):
& Nbsp; ...
& Nbsp; AssertionError: Se esperaba algo más grande que el 100, pero nos dieron 1
Basta con leer las expectativas como una oración. "Esperar (2) == 1 + 1", se lee como "esperar 2 a la igualdad de 1 + 1". Obviamente, la expectativa es de aproximadamente 2, y está siendo comparado con 1 + 1. Sin ambigüedad!
EXCEPCIONES
Las expectativas sobre excepciones utilizan la frase "con". Todo es bueno si se eleva la excepción esperada:
& Nbsp; >>> from __future__ with_statement importación
& nbsp; >>> con expect.raises (KeyError):
& Nbsp; ... {} [123]
Si no se levantó, Expecter Gadget lanzará una AssertionError:
& nbsp; >>> con expect.raises (KeyError):
& Nbsp; ... pase
& Nbsp; El rastreo (most recent call last):
& Nbsp; ...
& Nbsp; AssertionError: Se espera una excepción de tipo KeyError pero conseguimos ninguno
Las excepciones que no coinciden con la esperada no serán tragadas, por lo que su prueba de errores como espera:
& Nbsp; >>> from __future__ with_statement importación
& nbsp; >>> con expect.raises (NameError):
& Nbsp; ... {} [123]
& Nbsp; El rastreo (most recent call last):
& Nbsp; ...
& Nbsp; KeyError: 123
EXPECTATIVAS CUSTOM
Usted puede agregar una expectativa a medida con el método add_expectation. Se le da un predicado que debe devolver true si la expectativa de éxito y falso si falla. Todos los objetos de expectativas crecerán un método con el nombre de su método predicado (así que no use una lambda). Mensajes de excepción apropiadas serán generados cuando falla el predicado:
& Nbsp; >>> expecter importación
& Nbsp; >>> def can_meow (cosa):
& Nbsp; ... cosa retorno == 'Kitty'
& Nbsp; >>> expecter.add_expectation (can_meow)
& Nbsp; >>> esperar ('gatito') can_meow ().
& Nbsp; >>> esperar ('cachorro') can_meow ().
& Nbsp; El rastreo (most recent call last):
& Nbsp; ...
& Nbsp; AssertionError: Se espera que can_meow 'cachorro', pero no puede
Requisitos :
- Python
Comentarios que no se encuentran