Module: @nginstack/engine/lib/testing/assert

Members


<static> AssertionError :DetailedError

Classe de erro utilizada por esse módulo.

Type:

Methods


<static> deepEqual(value, expected [, message])

Verifica se dois valores são equivalentes, comparando recursivamente os elementos dos arrays e as propriedades próprias enumeráveis dos objetos. Os valores primitivos são comparados com o operador '=='. As datas são comparadas pelo instante que representam, as expressões regulares pelo padrão e pelas flags, os erros pelo nome e pela mensagem e os ArrayBuffer e arrays tipados, como Uint8Array, pelo seu conteúdo. Um objeto nunca é igual a um valor primitivo.

Prefira o método deepStrictEqual, que também compara os tipos dos valores.

Parameters:
Name Type Argument Description
value *

Valor atual a ser comparado.

expected *

Valor esperado na comparação.

message string <optional>

Mensagem a ser mostrada em caso de falha.

Example
const assert = require('@nginstack/engine/lib/testing/assert');

assert.deepEqual({ a: [1, 2] }, { a: ['1', 2] }); // não gera erro

<static> deepStrictEqual(value, expected [, message])

Verifica se dois valores são equivalentes, comparando recursivamente os elementos dos arrays e as propriedades próprias enumeráveis dos objetos. Os valores primitivos são comparados com o operador '===', exceto NaN, que é considerado igual a NaN. As datas são comparadas pelo instante que representam, as expressões regulares pelo padrão e pelas flags, os erros pelo nome e pela mensagem e os ArrayBuffer e arrays tipados, como Uint8Array, pelo seu conteúdo. Também é verificado se os objetos têm o mesmo protótipo, exceto no runtime Ije, que não permite obtê-lo.

Parameters:
Name Type Argument Description
value *

Valor atual a ser comparado.

expected *

Valor esperado na comparação.

message string <optional>

Mensagem a ser mostrada em caso de falha.

Example
const assert = require('@nginstack/engine/lib/testing/assert');

assert.deepStrictEqual({ a: [1, 2] }, { a: [1, 2] }); // não gera erro
assert.deepStrictEqual({ a: [1, 2] }, { a: ['1', 2] }); // gera um AssertionError

<static> equal(value, expected [, message])

Compara dois valores, verificando se são iguais. Não é verificado tipo, ou seja, equivalente ao '=='.

Parameters:
Name Type Argument Description
value *

Valor atual a ser comparado.

expected *

Valor esperado na comparação.

message string <optional>

Mensagem a ser mostrada em caso de sucesso.


<static> fail( [message])

Força a geração de um erro de assertividade com a mensagem informada.

Parameters:
Name Type Argument Description
message string <optional>

Mensagem da falha identificada.


<static> notEqual(value, expected [, message])

Compara dois valores, verificando se não são iguais. Não é verificado tipo, ou seja, equivalente ao '!='.

Parameters:
Name Type Argument Description
value *

Valor atual a ser comparado.

expected *

Valor esperado na comparação.

message string <optional>

Mensagem a ser mostrada em caso de sucesso.


<static> notStrictEqual(value, expected [, message])

Compara dois valores, verificando se são estritamente diferentes. Nesse caso o tipo é comparado, pois irá definir se são realmente diferentes, sendo equivalente a '!=='.

Parameters:
Name Type Argument Description
value *

Valor atual a ser comparado.

expected *

Valor esperado na comparação.

message string <optional>

Mensagem a ser mostrada em caso de sucesso.


<static> ok(value [, message])

Verifica se o valor informado é verdadeiro.

O módulo assert também pode ser chamado diretamente como uma função, sendo equivalente a assert.ok. No entanto, essa forma de uso não é recomendada devido às limitações do JSDoc que impedem a documentação correta dessa forma alternativa, afetando a experiência de uso em ferramentas que dependem dessa documentação, como o TypeScript e o VS Code.

Parameters:
Name Type Argument Description
value *

Valor a ser verificado se é verdadeiro.

message string <optional>

Mensagem a ser mostrada em caso de sucesso.

Example
const assert = require('@nginstack/engine/lib/testing/assert');

assert.ok(expectedTruthyValue, failureMessage);
assert(expectedTruthyValue, failureMessage);

<static> strictEqual(value, expected [, message])

Compara dois valores, verificando se são estritamente iguais. Nesse caso o tipo é comparado, pois irá definir se são realmente iguais, sendo equivalente a '==='.

Parameters:
Name Type Argument Description
value *

Valor atual a ser comparado.

expected *

Valor esperado na comparação.

message string <optional>

Mensagem a ser mostrada em caso de sucesso.


<static> throwsExceptions(func [, message])

Verifica se a função lançou algum erro.

Parameters:
Name Type Argument Description
func function

Função que será testada.

message string <optional>

Mensagem a ser mostrada em caso de falha.