Fish Shell:
כתיבת בדיקות

איך לעשות:

ל-Fish אין מסגרת בדיקות מובנית כמו בסביבות תכנות אחרות. עם זאת, אתה יכול לכתוב סקריפטי בדיקה פשוטים שמשתמשים בהבטחות כדי לבדוק את התנהגות הפונקציות שלך. בנוסף, אתה יכול לנצל כלים צד שלישי כמו fishtape לערכת בדיקות יותר מקיפה.

דוגמה 1: סקריפט בדיקה בסיסי

בואו נתחיל עם פונקציה בסיסית ב-Fish שמחשבת את הסכום של שני מספרים:

function add --description 'הוסף שני מספרים'
    set -l sum (math $argv[1] + $argv[2])
    echo $sum
end

אתה יכול לכתוב סקריפט בדיקה בסיסי עבור פונקציה זו כך:

function test_add
    set -l result (add 3 4)
    if test $result -eq 7
        echo "test_add עבר"
    else
        echo "test_add נכשל"
    end
end

test_add

הרצת סקריפט זה תפיק:

test_add עבר

דוגמה 2: שימוש ב-Fishtape

לפתרון בדיקה חזק יותר, ניתן להשתמש ב-fishtape, מריץ בדיקות המפיק TAP עבור Fish.

ראשית, התקן את fishtape אם טרם עשית זאת:

fisher install jorgebucaran/fishtape

לאחר מכן, צור קובץ בדיקה עבור הפונקציה add שלך, למשל, add_test.fish:

test "הוספת 3 ו-4 מניבה 7"
    set result (add 3 4)
    echo "$result" | fishtape
end

כדי להריץ את הבדיקה, השתמש בפקודה הבאה:

fishtape add_test.fish

פלט לדוגמה עשוי להיראות כך:

TAP version 13
# הוספת 3 ו-4 מניבה 7
ok 1 - test_add עבר

זה מודיע לך שהבדיקה עברה בהצלחה. fishtape מאפשר לך למבנות בדיקות מפורטות יותר ומספק פלט מודיעין, מה שמקל על ניפוי באגים ומספק כיסוי בדיקות מקיף עבור סקריפטי ה-Fish שלך.