Vitest birim testleri
Tablo odaklı Vitest testleri üretir.

Prompt Metni
Aşağıdaki saf fonksiyon için Vitest testleri yaz. Normal durumları tablo odaklı test et; boş metin ve geçersiz uzunluk sınırlarını ayrıca kapsa. Uygulama detayını değil çıktıyı test et.
export function truncate(value: string, maxLength: number): string {
if (maxLength < 1) throw new RangeError('maxLength must be positive')
return value.length <= maxLength
? value
: value.slice(0, Math.max(0, maxLength - 1)) + '…'
}Prompt Sonucu
import { describe, expect, it } from 'vitest'
import { truncate } from './truncate'
describe('truncate', () => {
it.each([
{ value: 'AI', maxLength: 5, expected: 'AI' },
{ value: 'Yapay zeka', maxLength: 6, expected: 'Yapay…' },
{ value: 'abc', maxLength: 3, expected: 'abc' },
{ value: 'abc', maxLength: 1, expected: '…' },
])(
'$value metnini $maxLength karaktere sınırlar',
({ value, maxLength, expected }) => {
expect(truncate(value, maxLength)).toBe(expected)
}
)
it('boş metni değiştirmez', () => {
expect(truncate('', 4)).toBe('')
})
it.each([0, -1, -10])(
'geçersiz sınır için RangeError üretir: %s',
(maxLength) => {
expect(() => truncate('test', maxLength)).toThrow(RangeError)
}
)
})
Benzer Promptlar

Kod
Zod ile ortam değişkenleri
Eksik gizli anahtarı açılışta yakalayan Zod ortam şeması.

Kod
Next.js dinamik metadata
Promise params ile başlık, açıklama ve mutlak Open Graph adresi.

Kod
Webhook HMAC doğrulaması
timingSafeEqual kullanan webhook imza kontrolü.

Kod
React iyimser beğeni
Beğeni sayısını sunucu yanıtından önce güncelleyen useOptimistic örneği.