יום חמישי, 15 בדצמבר 2022

טיפ זריז - יצירת מחרוזות ארוכות בטסטים [פייתון]

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


זה יכול להיות לא נוח לעין ומבלבל לכתוב מחרוזת באורך של 128 תווים (שאמורים לבדוק שהיא עוברת) לצד מחרוזת של 129 שאמורה להכשל. 

כמובן שיש לנו דרכים פשוטות יחסית לייצר מחרוזת כזאת עם לולאה. אפשר למשל אפילו להשתמש ב list comprehension יחד עם join לייצר פקודה בשורה אחת למטרה זו:




אבל פייתון נותננת לנו דרך אפילו יותר אלגנטית וקצרה, שימוש ב *




השיטה הזאת עובדת לא רק על מחרוזת, למשל אפשר להשתמש באופנים שונים על  רשימות: 


בדוגמה השניה כאן  (פקודה 28 בצילום) פשוט הכפלנו את המחרוזת a כמו שעשינו לפני כן, אבל בהרצה 27 (דוגמה ראשונה בצילום המסך)  פשוט יצרנו 10 איברים. 


אלגנטי לא? 

אין תגובות:

הוסף רשומת תגובה