Sobes.tech
Middle

Sınır değerlerini sayısal aralık yerine alfabetik aralıkta nasıl kontrol edebilirsiniz?

sobes.tech yapay zeka

AI'dan gelen yanıt

Bir alfabetik aralıkta sınır değerlerin kontrolü, izin verilen ilk ve son karakterin yanı sıra, varsa, izin verilen aralık öncesi ve sonrası karakterlerin test edilmesini içerir.

Örneğin, küçük harfli Kiril harflerini kabul eden bir alan için:

  • Alt sınır:
    • 'а' (izin verilen ilk karakter)
    • 'а' karakterinden önceki karakter (uygulanabilir ve kullanılan kodlamada mevcutsa)
  • Üst sınır:
    • 'я' (izin verilen son karakter)
    • 'я' karakterinden sonraki karakter (uygulanabilir ve kullanılan kodlamada mevcutsa)

Ayrıca, şu durumlar da kontrol edilebilir:

  • Boş dize: ""
  • Tek karakterli dize: 'б' (aralık içinde herhangi bir karakter)
  • Aralık dışında karakterler içeren dize:
    • Latin: 'a', 'z'
    • Rakamlar: '1', '9'
    • Özel karakterler: '$', '#'
    • Büyük Kiril: 'А', 'Я'
  • Aralık içinde ve dışında karakterler içeren dize: "абвA1"

Test, bu değerlerin giriş alanına gönderilmesini ve sistemin beklenen davranışını doğrulamayı içerir: izin verilen değerlerin kabul edilmesi ve izin verilmeyenlerin reddedilmesi (veya doğru şekilde işlenmesi).

Python kod örneği:

# Küçük harfli Kiril dizisini doğrulama fonksiyonu
def validate_cyrillic_lowercase(text):
    import re
    return bool(re.fullmatch('[а-я]+', text))

# Sınır değerleri için test vakaları
test_cases = {
    "Alt sınır (ilk karakter)": ('а', True),
    "Alt sınır (aralık öncesi, geçersiz)": ('`', False), # 'а' öncesi karakter örneği
    "Üst sınır (son karakter)": ('я', True),
    "Üst sınır (aralık sonrası, geçersiz)": ('{', False), # 'я' sonrası karakter örneği
    "Aralık içinde": ('абв', True),
    "Boş dize": ('', False),
    "Latin": ('abc', False),
    "Rakamlar": ('123', False),
    "Özel karakterler": ('@#$', False),
    "Büyük Kiril": ('АБВ', False),
    "Karışık dize": ('абвA1', False)
}

# Testleri çalıştır
for tanim, (deger, beklenen) in test_cases.items():
    sonuc = validate_cyrillic_lowercase(deger)
    assert sonuc == beklenen, f"Test: {tanim}, Değer: '{deger}', Beklenen: {beklenen}, Alınan: {sonuc}"
    print(f"'{tanim}' testi başarıyla geçti.")