Matchers com expect()
Nesta página
O ponto de entrada de qualquer asserção é expect(valor). A partir daí
encadeia-se um matcher que descreve o que o valor deve satisfazer. Se a
condição falhar, o runner reporta o teste como falho com uma mensagem clara.
Os matchers mais usados cobrem igualdade, tamanho de coleções, pertinência e comparação de strings:
Executa via zolo test. Demonstra to_eq, to_start_with, to_have_len,
to_contain, to_be_empty e a inversão .not.
// Demonstrates the expect() matcher library (T4).
@test
fn matchers_basicos() {
expect(2 + 2).to_eq(4)
expect("data:image/png;base64,AAA").to_start_with("data:image/png;base64,")
expect([10, 20]).to_have_len(2)
expect([10, 20]).to_contain(20)
expect("").to_be_empty()
expect(1).not.to_eq(2)
}
Requer a CLI/host do Zolo — abra no playground ou rode localmente.
A cadeia .not inverte qualquer matcher — expect(1).not.to_eq(2) garante
que dois valores são diferentes.
Desafio
Acrescente um expect("zolo").to_end_with("lo") ao exemplo e rode
zolo test. Em seguida tente .not.to_end_with("lo") e observe a
mensagem de falha.
Veja também