public void Setup() { _bankaSecen = new Mock <IBankaSecen>(); _veritabaniVekili = new Mock <IGuvenliPosVeritabaniVekili>(); _banka = new Mock <IBanka>(); _bankaSecen.Setup(x => x.BankaSec(It.IsAny <SiparisBilgi>())).Returns(_banka.Object); _guvenliPos = new GuvenliPos(_bankaSecen.Object, _veritabaniVekili.Object); _siparisBilgi = new SiparisBilgi { Kart = new KrediKarti { KartNo = "0123456789123456", AdSoyad = "Caner Demirci", GuvenlikKodu = "000", SonKullanmaYil = 2022, SonKullanmaAy = 1 }, Tutar = 200, TaksitAdedi = 4 }; _banka3DOnayUrl = "https://ziraaat.com"; _bankaCekimIstegiSonucu = new BankaCekimIstegiSonucu { Basarili = true, BankaSistemi3DOnayUrl = _banka3DOnayUrl }; _banka.Setup(x => x.CekimIstegiGonder(_siparisBilgi)).Returns(_bankaCekimIstegiSonucu); }
public void SiparisBilgisindeKartNumarasiEksikse_HataDonerBankaSecilmez() { SiparisBilgi gecersizBilgi = new SiparisBilgi { Kart = new KrediKarti { KartNo = "", AdSoyad = "Caner Demirci", GuvenlikKodu = "000", SonKullanmaYil = 2022, SonKullanmaAy = 1 }, Tutar = 200, TaksitAdedi = 4 }; BankaCekimIstegiSonucu bankaCekimIstegiSonucu = _guvenliPos.CekimIstegiGonder(gecersizBilgi); Assert.IsTrue(!bankaCekimIstegiSonucu.Basarili); _bankaSecen.Verify(x => x.BankaSec(It.IsAny <SiparisBilgi>()), Times.Never); }
public BankaCekimIstegiSonucu CekimIstegiGonder(SiparisBilgi siparisBilgi) { SiparisKontrolSonuc siparisKontrolSonuc = siparisBilgileriGecerliMi(siparisBilgi); if (!siparisKontrolSonuc.Basarili) { return new BankaCekimIstegiSonucu() { Basarili = false } } ; IBanka banka = _bankaSecen.BankaSec(siparisBilgi); string guid = ""; long islemKayitId = _veritabaniVekili.BankayaIstekOncesiIslemKaydet(siparisBilgi, guid); try { var cekimIstegiSonuc = banka?.CekimIstegiGonder(siparisBilgi); if (cekimIstegiSonuc != null) { _veritabaniVekili.BankadanGelenCevapIleIslemKaydiniGuncelle(islemKayitId, cekimIstegiSonuc); return(cekimIstegiSonuc); } return(null); } catch (Exception ex) { _veritabaniVekili.BankaHatasiniLogla(islemKayitId, ex); return(new BankaCekimIstegiSonucu() { Basarili = false, Mesaj = "Banka çekimi sırasında hata oluştu - " + ex.Message }); } }
private SiparisKontrolSonuc siparisBilgileriGecerliMi(SiparisBilgi siparisBilgi) { if (siparisBilgi.Kart == null) { return new SiparisKontrolSonuc() { Basarili = false, Mesaj = "Kart bilgileri bulunamadi." } } ; if (siparisBilgi.Kart.KartNo.Length != 15 && siparisBilgi.Kart.KartNo.Length != 16) { return new SiparisKontrolSonuc() { Basarili = false, Mesaj = "Kredi kartı numarası 15 veya 16 hane olmalı" } } ; if (siparisBilgi.Kart.GuvenlikKodu.Length != 3) { return new SiparisKontrolSonuc() { Basarili = false, Mesaj = "Kart güvenlik numarası 3 hane olmalı" } } ; return(new SiparisKontrolSonuc() { Basarili = true }); } } }