Fish Shell:
Escrevendo testes
Como:
Fish não possui uma estrutura de teste integrada como alguns outros ambientes de programação. No entanto, você pode escrever scripts de teste simples que usam asserções para verificar o comportamento de suas funções. Além disso, você pode aproveitar ferramentas de terceiros como fishtape
para um conjunto de testes mais abrangente.
Exemplo 1: Script de Teste Básico
Vamos começar com uma função básica em Fish que calcula a soma de dois números:
function add --description 'Adiciona dois números'
set -l sum (math $argv[1] + $argv[2])
echo $sum
end
Você pode escrever um script de teste básico para essa função assim:
function test_add
set -l result (add 3 4)
if test $result -eq 7
echo "test_add aprovado"
else
echo "test_add reprovado"
end
end
test_add
Executar este script produziria:
test_add aprovado
Exemplo 2: Usando Fishtape
Para uma solução de teste mais robusta, você pode usar fishtape
, um executor de teste que produz TAP para Fish.
Primeiro, instale fishtape
, se ainda não o fez:
fisher install jorgebucaran/fishtape
Em seguida, crie um arquivo de teste para a sua função add
, por exemplo, add_test.fish
:
test "Adicionar 3 e 4 resulta em 7"
set result (add 3 4)
echo "$result" | fishtape
end
Para executar o teste, use o seguinte comando:
fishtape add_test.fish
A saída de exemplo pode parecer com:
TAP version 13
# Adicionar 3 e 4 resulta em 7
ok 1 - test_add aprovado
Isso indica que o teste passou com sucesso. fishtape
permite que você estruture testes mais detalhados e fornece uma saída informativa, facilitando a depuração e cobertura de teste abrangente para seus scripts Fish.