Fish Shell:
Scrivere test
Come fare:
Fish non dispone di un framework di testing integrato come alcuni altri ambienti di programmazione. Tuttavia, puoi scrivere semplici script di test che utilizzano affermazioni per verificare il comportamento delle tue funzioni. Inoltre, puoi sfruttare strumenti di terze parti come fishtape per una suite di testing più completa.
Esempio 1: Script di Test Base
Cominciamo con una funzione base in Fish che calcola la somma di due numeri:
function add --description 'Add two numbers'
set -l sum (math $argv[1] + $argv[2])
echo $sum
endPuoi scrivere uno script di test di base per questa funzione così:
function test_add
set -l result (add 3 4)
if test $result -eq 7
echo "test_add passed"
else
echo "test_add failed"
end
end
test_addEseguendo questo script produrrebbe:
test_add passedEsempio 2: Utilizzo di Fishtape
Per una soluzione di test più robusta, puoi utilizzare fishtape, un test runner per Fish che produce output TAP.
Prima, installa fishtape se non lo hai già fatto:
fisher install jorgebucaran/fishtapeSuccessivamente, crea un file di test per la tua funzione add, ad esempio, add_test.fish:
test "Sommando 3 e 4 si ottiene 7"
set result (add 3 4)
echo "$result" | fishtape
endPer eseguire il test, utilizza il seguente comando:
fishtape add_test.fishUn esempio di output potrebbe essere:
TAP version 13
# Sommando 3 e 4 si ottiene 7
ok 1 - test_add passedQuesto ti informa che il test è stato superato con successo. fishtape permette di strutturare test più dettagliati e fornisce output informativi, facilitando il debugging e garantendo una copertura di test completa per i tuoi script in Fish.