במסמך הזה מוסבר איך משתמשים בבדיקות חיבור.
דוגמאות לערכים
כשמגדירים בדיקות חיבור לקלטים ולפלטים, בדרך כלל צריך להתייחס לבדיקות כמייצגות סוגים.
הבדיקות של הקלט צריכות לכלול כל 'סוג' שהן מקבלות, והבדיקות של הפלט צריכות לכלול בדיוק את מה שהן 'מחזירות'.
אישור של סוג אחד
במקרה הבסיסי ביותר שבו רוצים ליצור בלוק ש"מקבל" או "מחזיר" نوع אחד, צריך לכלול את הסוג הזה בבדיקת החיבור של החיבור.
אישור של כמה סוגים
כדי ליצור בלוק שמקבל כמה סוגים, צריך לכלול כל סוג שמקבלים בבדיקת החיבור של הקלט.
לפי הסכמה, אם אפשר לפעמים לקבל פלט במספר מצבים (למשל, אם מאפשרים להשתמש במספרים לפעמים כמחרוזות), הפלט צריך להיות מגביל יותר והקלט צריך להיות פחות מגביל. כך אפשר לוודא שהפלט לא יתחבר למקומות שבהם אין תמיכה בו.
אישור כל סוג
כדי ליצור בלוק ש"מקבל" כל סוג, צריך להגדיר את בדיקת החיבור של הקלט ל-null
.
סוגי משנה של ערכים שמוחזרים
כדי ליצור בלוק ש"מחזיר" תת-סוג, צריך לכלול גם את הסוג וגם את הסוג העל בבדיקת החיבור של הפלט.
במקרה של תת-סוגים, מותר לכלול כמה בדיקות בבדיקת פלט, כי הבלוק תמיד "מחזיר" את שני הסוגים.
החזרת סוגים עם פרמטרים
כדי ליצור בלוק ש"מחזיר" סוג עם פרמטרים, צריך לכלול גם את הגרסה עם הפרמטרים וגם את הגרסה ללא הפרמטרים בבדיקת החיבור של הפלט.
בהתאם לרמת הסטריקטיביות של שפת החסימה, כדאי לכלול גם את השינויים של הסוג.
בדומה לסוגי משנה, במקרה הזה מותר לכלול כמה בדיקות בבדיקת הפלט, כי הבלוק תמיד "מחזיר" את שני הסוגים.
דוגמאות ל-stack או ל-statement
יש כמה דרכים נפוצות שבהן מפתחים מגדירים בדיקות לחיבורים הקודמים והבאים. בדרך כלל, אפשר להתייחס לתנאים האלה כאל הגבלה על סדר הבלוק.
החיבורים הבאים צריכים לכלול את הבלוק שצריך לבוא אחרי הבלוק הנוכחי, והחיבורים הקודמים צריכים לכלול את מה שהבלוק הנוכחי 'הוא'.
שמירה על הסדר בין הבלוקים
כדי ליצור קבוצה של בלוקים שמתחברים בסדר מוגדר, צריך לציין אילו בלוקים צריכים להופיע אחרי הבלוק הנוכחי בבדיקת החיבור הבאה, ואת 'הזהות' של הבלוק הנוכחי בבדיקת החיבור הקודמת.
לאפשר הרבה בלוקים באמצע
כדי ליצור קבוצה של בלוקים מסודרים שמאפשרים הרבה בלוקים באמצע, צריך לכלול לפחות רשומה אחת מבדיקת החיבור הקודמת של הבלוק האמצעי בבדיקת החיבור הבאה של הבלוק האמצעי. כך אפשר להוסיף עוד עותקים של הבלוק אחריו.
אין לאפשר בלוקים באמצע
כדי ליצור קבוצה של בלוקים מסודרים שבהם הבלוקים האמצעיים הם אופציונליים, צריך לכלול לפחות רשומה אחת מבדיקה קודמת של החיבור בבלוק האמצעי ומבדיקה קודמת של החיבור בבלוק האחרון, בבדיקה הבאה של החיבור בבלוק הראשון. כך אפשר להוסיף אחרי הבלוק הראשון בלוק באמצע או בלוק אחרון.
סטאקים מסוג 'או-או'
כדי ליצור בלוק שאפשר להוסיף אחריו רק בלוקים מקבוצה אחת, או בלוקים מקבוצה אחרת (ולא את שניהם), צריך לבצע שני דברים:
צריך לכלול לפחות רשומה אחת מכל אחת מהבדיקות הקודמות של הקבוצות בבדיקת החיבור הבאה של הבלוק הראשון.
צריך להגדיר את בדיקות החיבור הבאות של הקבוצות כך שיכללו רק ערכים שנמצאים בבדיקות החיבור הקודמות שלהן (כדי שרק בלוקים מאותה קבוצה יוכלו לעקוב אחריהן).