Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
CuisUniversity - uso de Assert

Aserciones en CuisUniversity

Verificar si un valor es true/false

Assert isTrue: valor.                         "cuando falla, genera un error 'assertion failed'" 
Assert isTrue: valor description: 'mensaje'.  "cuando falla, genera un error con 'mensaje'"
Assert isFalse: valor.                        "cuando falla, genera un error 'assertion failed'"
Assert isFalse: valor description: 'mensaje'. "cuando falla, genera un error con 'mensaje'"

Verificar igualdad entre dos objetos

Assert that: objeto1 isEqualTo: objeto2.
Assert that: objeto1 isEqualTo: objeto2 description: 'mensaje'.
Assert that: objeto1 isNotEqualTo: objeto2.
Assert that: objeto1 isNotEqualTo: objeto2 description: 'mensaje'.

Al igual que con isTrue: y isFalse: podemos usar una versión con description: para indicar un mensaje de error personalizado, en lugar del mensaje por defecto: Expected objeto1 but was objeto2.

La comparación entre objeto1 y objeto2 se realizará a través del mensaje isEqualTo:, que por defecto tiene la misma implementación que =.

Verificar identidad entre dos objetos

Assert that: objeto1 isIdenticalTo: objeto2.
Assert that: objeto1 isIdenticalTo: objeto2 description: 'mensaje'.
Assert that: objeto1 isNotIdenticalTo: objeto2.
Assert that: objeto1 isNotIdenticalTo: objeto2 description: 'mensaje'.

Al igual que con isTrue: y isFalse: podemos usar una versión con description: para indicar un mensaje de error personalizado, en lugar del mensaje por defecto: Expected objeto1 but was objeto2.

La comparación entre objeto1 y objeto2 se realizará a través del mensaje isIdenticalTo:, que por defecto tiene la misma implementación que ==.

Asertar sobre excepciones

Assert should: [ "código" ] signal: Error withDescription: 'mensaje esperado'.
Assert should: [ "código" ] signal: Error withDescription: 'mensaje esperado' asserting: [ :error | "" ].
Assert shouldNot: [ "código" ] signal: Error.

Provocar una falla deliberadamente

Assert fail.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment