fix: identify favorite institution actions accessibly

This commit is contained in:
2026-09-06 15:16:11 +03:00
parent bdc9f9dfbf
commit ffec9bb54e
2 changed files with 9 additions and 0 deletions
+8
View File
@@ -1191,3 +1191,11 @@ Taslak türü seçicisine erişilebilir ad eklendi. Üretim derlemesi geçti. Ö
- Çalışma kitabı üretildikten sonra belge listesi ve gerekiyorsa portföy yeniden okunuyor. Oturum/form/montaj kontrolünden sonra son belge verisi ekrana aktarılıyor ve ortak belge uygunluk denetimi tekrar yapılıyor. Hata halinde indirme çağrısına geçilmiyor; belge eksikleri ekranda da güncelleniyor. - Çalışma kitabı üretildikten sonra belge listesi ve gerekiyorsa portföy yeniden okunuyor. Oturum/form/montaj kontrolünden sonra son belge verisi ekrana aktarılıyor ve ortak belge uygunluk denetimi tekrar yapılıyor. Hata halinde indirme çağrısına geçilmiyor; belge eksikleri ekranda da güncelleniyor.
- QA düzeneğinde sentetik zorunlu firma belgesine bağlı hazır dosya kullanıldı. İlk GET başarılı bırakıldı, Excel oluşturulduktan sonraki ikinci GET görünür test kontrolüyle bekletildi. Ayrı senaryolarda belge boyutu/sürümü değiştirildi ve belge kaydı kaldırıldı. Her ikisinde ikinci GET sayacı 2/bekleyen 1 olarak doğrulandı; yanıt bırakılınca ilgili hata mesajı oluştu ve Excel düğmesi kapandı. 251,00 TL toplam korundu. Dokuz kontrol geçti: `rapor/qa-excel-final-document-check.json`. - QA düzeneğinde sentetik zorunlu firma belgesine bağlı hazır dosya kullanıldı. İlk GET başarılı bırakıldı, Excel oluşturulduktan sonraki ikinci GET görünür test kontrolüyle bekletildi. Ayrı senaryolarda belge boyutu/sürümü değiştirildi ve belge kaydı kaldırıldı. Her ikisinde ikinci GET sayacı 2/bekleyen 1 olarak doğrulandı; yanıt bırakılınca ilgili hata mesajı oluştu ve Excel düğmesi kapandı. 251,00 TL toplam korundu. Dokuz kontrol geçti: `rapor/qa-excel-final-document-check.json`.
- Bu test sentetik belge metadatası kullanır; gerçek firma dosyası silinmedi, dosya indirme dizini izlenmedi. Kanıt uygulamanın son kontrol/hata dalı ve güncellenen hazır durumudur. 275 test ve build başarılı. Genel planın gerçek beş dosya ve dış servis kabul maddeleri açık. - Bu test sentetik belge metadatası kullanır; gerçek firma dosyası silinmedi, dosya indirme dizini izlenmedi. Kanıt uygulamanın son kontrol/hata dalı ve güncellenen hazır durumudur. 275 test ve build başarılı. Genel planın gerçek beş dosya ve dış servis kabul maddeleri açık.
### 2026-09-06 — Favori kurumlarda iki sekme kabulü
- Gerçek AppContext ve geçici sunucu deposuyla iki sekme aynı boş listeyi yükledi. İlk sekme Giresun kurumunu ekledikten sonra eski ikinci sekmenin Kayseri eklemesi sürüm çakışmasıyla reddedildi; yenileme sonrası Giresun korundu ve Kayseri eklenebildi. Eski ilk sekmeden Giresun kaldırma da çakışmayla reddedildi; yeni kurum sessizce ezilmedi.
- Güncel iki favorinin filtresi yalnız Giresun/Kayseri ihalelerini gösterdi. Güncel sürümden Giresun kaldırılınca filtre tek Kayseri sonucuna düştü; diğer sekmenin yenilenmesinden sonra da aynı kayıt görüldü. Çakışma mesajı kullanıcıya değişikliklerini koruyup yenilemesi gerektiğini belirtiyor. Dokuz kontrol geçti: `rapor/qa-favorite-two-tabs.json`.
- Kartlardaki kurum yıldızları aynı erişilebilir ada sahipti. Ekran okuyucu ve klavye kullanıcılarının eylemin hangi kuruma ait olduğunu ayırt edebilmesi için erişilebilir ada kurum unvanı eklendi; ekle/çıkar ve basılı durum bilgisi korunuyor. Derleme başarılı. Bu etiket değişimi için davranışı tekrar eden birim testi eklenmedi; önceki 275 test sonucu geçerli, tüm paket yeniden çalıştırılmadı.
- Bu kabul iki sekmede favori ekleme/kaldırma ve filtre kalıcılığını kapsar. Bildirim gönderimi, ayrı firma rolleri veya bütün ekran okuyucu/klavye akışının kabulü değildir. Genel plan açık.
+1
View File
@@ -82,6 +82,7 @@ export const TenderCard = ({ tender }) => {
onClick={(e) => { e.stopPropagation(); toggleFavoriteKurum(tender.kurum); }} onClick={(e) => { e.stopPropagation(); toggleFavoriteKurum(tender.kurum); }}
disabled={favoriteSaving || !tender.kurum?.trim()} disabled={favoriteSaving || !tender.kurum?.trim()}
aria-busy={favoriteSaving} aria-pressed={Boolean(isFavKurum)} aria-busy={favoriteSaving} aria-pressed={Boolean(isFavKurum)}
aria-label={`${tender.kurum} — ${isFavKurum ? 'Favori kurumdan çıkar' : 'Kurumu favorilere ekle'}`}
title={isFavKurum ? 'Favori kurumdan çıkar' : 'Kurumu favorilere ekle'} title={isFavKurum ? 'Favori kurumdan çıkar' : 'Kurumu favorilere ekle'}
className="shrink-0 p-0.5" className="shrink-0 p-0.5"
> >