public void TestUpdateGeschaeftspartnerFailWegenOptimisticConcurrencyException() { EMailType testMail = new EMailType("*****@*****.**"); GeschaeftspartnerDTO gpDTOOriginal = new GeschaeftspartnerDTO() { Vorname = "Maria", Nachname = "Mustermann", Email = testMail }; gpK_AC.CreateGeschaeftspartner(ref gpDTOOriginal); Assert.IsTrue(gpDTOOriginal.GpNr > 0, "Id of Geschaeftspartner must not be 0."); Assert.IsTrue(gpDTOOriginal.Email == testMail, "EMail must be a valid EMail"); AutoResetEvent syncEvent1 = new AutoResetEvent(false); AutoResetEvent syncEvent2 = new AutoResetEvent(false); Task task1 = Task.Factory.StartNew(() => { GeschaeftspartnerDTO gpDTOTask = gpK_AC.FindGeschaeftspartner(gpDTOOriginal.GpNr); gpDTOTask.Nachname = "Musterfrau"; gpK_AC.UpdateGeschaeftspartner(ref gpDTOTask); syncEvent1.WaitOne(); syncEvent2.Set(); }); GeschaeftspartnerDTO gpDTO = gpK_AC.FindGeschaeftspartner(gpDTOOriginal.GpNr); gpDTO.Vorname = "Maria Janine"; syncEvent1.Set(); syncEvent2.WaitOne(); gpK_AC.UpdateGeschaeftspartner(ref gpDTO); task1.Wait(); }
public void TestFindGeschaeftspartnerByIdSuccess() { EMailType testMail = new EMailType("*****@*****.**"); GeschaeftspartnerDTO gpDTO1 = new GeschaeftspartnerDTO() { Vorname = "Heinz", Nachname = "Schmidt", Email = testMail }; gpK_AC.CreateGeschaeftspartner(ref gpDTO1); GeschaeftspartnerDTO gpDTO2 = gpK_AC.FindGeschaeftspartner(gpDTO1.GpNr); Assert.IsTrue(gpDTO1.GpNr == gpDTO2.GpNr, "Geschaeftspartner must be the same."); Assert.IsTrue(gpDTO1.Email == testMail, "EMail must be a valid EMail"); }
public void TestCreateGeschaeftspartnerSuccess() { AdresseDTO adresse = new AdresseDTO() { Strasse = "Hamburger Straße", Hausnummer = "1a", PLZ = "2000", Wohnort = "Hamburg", Land = "Deutschland" }; EMailType testMail = new EMailType("*****@*****.**"); GeschaeftspartnerDTO gpDTO = new GeschaeftspartnerDTO() { Vorname = "Max", Nachname = "Mustermann", Email = testMail, Adressen = new List<AdresseDTO>() }; gpDTO.Adressen.Add(adresse); Assert.IsTrue(gpDTO.GpNr == 0, "Id of Geschaeftspartner must be null."); gpK_AC.CreateGeschaeftspartner(ref gpDTO); Assert.IsTrue(gpDTO.Email == testMail, "EMail must be a valid EMail"); Assert.IsTrue(gpDTO.GpNr > 0, "Id of Geschaeftspartner must not be 0."); Assert.IsTrue(gpDTO.Version > 0, "Version of Geschaeftspartner must not be 0."); }
public void CreateGeschaeftspartner(ref GeschaeftspartnerDTO gpDTO) { Check.Argument(gpDTO != null, "gpDTO != null"); Check.Argument(gpDTO.GpNr == 0, "gpDTO.Id == 0"); Check.OperationCondition(!transactionService.IsTransactionActive, "Keine aktive Transaktion erlaubt."); Geschaeftspartner gp = gpDTO.ToEntity(); transactionService.ExecuteTransactional( () => { this.gp_REPO.Save(gp); }); gpDTO = this.FindGeschaeftspartner(gp.GpNr); }
private void Btn_Save_Click(object sender, RoutedEventArgs e) { GeschaeftspartnerDTO gpDTO = new GeschaeftspartnerDTO() { Adressen = new List<AdresseDTO>(), Email = new EMailType(Tb_email.Text.Trim()), Vorname = Tb_firstName.Text.Trim(), Nachname = Tb_lastName.Text.Trim(), }; geschaeftspartnerServices.CreateGeschaeftspartner(ref gpDTO); MessageBox.Show("Neuen Geschäftspartner gespeichert.", this.Name, MessageBoxButton.OK, MessageBoxImage.Information); Close(); }
public void TestUpdateGeschaeftspartnerSuccess() { EMailType testMail = new EMailType("*****@*****.**"); GeschaeftspartnerDTO gpDTO = new GeschaeftspartnerDTO() { Vorname = "Max", Nachname = "Mustermann", Email = testMail }; gpK_AC.CreateGeschaeftspartner(ref gpDTO); gpDTO.Vorname = "Maria"; gpK_AC.UpdateGeschaeftspartner(ref gpDTO); gpDTO = gpK_AC.FindGeschaeftspartner(gpDTO.GpNr); Assert.IsTrue(gpDTO != null, "Geschaeftspartner nicht gefunden."); Assert.IsTrue(gpDTO.Vorname == "Maria", "Geschaeftspartner nicht geändert."); Assert.IsTrue(gpDTO.Nachname == "Mustermann", "Geschaeftspartner nicht geändert."); Assert.IsTrue(gpDTO.Email == testMail, "EMail must be a valid EMail"); }
public void UpdateGeschaeftspartner(ref GeschaeftspartnerDTO gpDTO) { Check.Argument(gpDTO != null, "gpDTO != null"); Check.Argument(gpDTO.GpNr > 0, "gpDTO.Id > 0"); Check.OperationCondition(!transactionService.IsTransactionActive, "Keine aktive Transaktion erlaubt."); int gpNr = gpDTO.GpNr; transactionService.ExecuteTransactional(() => { if (this.gp_REPO.FindByGpNr(gpNr) == null) { throw new GeschaeftspartnerNichtGefundenException(gpNr); } }); Geschaeftspartner gp = gpDTO.ToEntity(); transactionService.ExecuteTransactional(() => { this.gp_REPO.Save(gp); }); gpDTO = this.FindGeschaeftspartner(gp.GpNr); }
public void TestErstellePDFSuccess() { Adresse kundenadresse = new Adresse() { Strasse = "ABC-Strasse", Hausnummer = "123", Land = "Nimmerland", PLZ = "4567", Wohnort = "hinterm Baum" }; IList<AdresseDTO> adressen = new List<AdresseDTO>(); adressen.Add(kundenadresse.ToDTO()); GeschaeftspartnerDTO gpDTO = new GeschaeftspartnerDTO() { Adressen = adressen, Email = new EMailType("*****@*****.**"), Vorname = "Hans", Nachname = "Peter", }; geschaeftspartnerServices.CreateGeschaeftspartner(ref gpDTO); KundenrechnungDTO krDTO = new KundenrechnungDTO() { RechnungBezahlt = false, Rechnungsadresse = 1, Rechnungsbetrag = new WaehrungsType(987654321), }; IList<TransportplanSchrittDTO> tpSchritte = new List<TransportplanSchrittDTO>(); pDFErzeungServicesFuerBuchhaltung.ErstelleKundenrechnungPDF(ref krDTO, tpSchritte); }
public void TestErstelleSendungsanfrageUndOrdneRechungenZuSuccess() { Adresse kundenadresse = new Adresse() { Strasse = "ABC-Strasse", Hausnummer = "123", Land = "Nimmerland", PLZ = "4567", Wohnort = "hinterm Baum" }; IList<AdresseDTO> adressen = new List<AdresseDTO>(); adressen.Add(kundenadresse.ToDTO()); GeschaeftspartnerDTO gpDTO = new GeschaeftspartnerDTO() { Adressen = adressen, Email = new EMailType("*****@*****.**"), Vorname = "Hans", Nachname = "Peter", }; geschaeftspartnerServices.CreateGeschaeftspartner(ref gpDTO); SendungsanfrageDTO saDTO = new SendungsanfrageDTO(); SendungspositionDTO sp1 = new SendungspositionDTO(); saDTO.Sendungspositionen.Add(sp1); saDTO.AbholzeitfensterStart = DateTime.Parse("01.09.2013"); saDTO.AbholzeitfensterEnde = DateTime.Parse("10.09.2013"); saDTO.AngebotGültigBis = DateTime.Now.AddHours(1); saDTO.StartLokation = hamburgLokation.LokNr; saDTO.ZielLokation = shanghaiLokation.LokNr; saDTO.Auftraggeber = 1; auftragsServices.CreateSendungsanfrage(ref saDTO); auftragsServices.PlaneSendungsanfrage(saDTO.SaNr); List<TransportplanDTO> pläne = transportplanungsServices.FindTransportplaeneZuSendungsanfrage(saDTO.SaNr); Assert.IsTrue(pläne.Count >= 1); TransportplanDTO planÜberBhv = pläne.Find((plan) => { return plan.TransportplanSchritte.ToList().Find((tps) => { TransportAktivitaetDTO ta = tps as TransportAktivitaetDTO; if (ta != null) { return ta.FuerTransportAufTransportbeziehung == hh_bhv.TbNr; } else { return false; } }) != null; }); Assert.IsTrue(planÜberBhv != null); Assert.IsTrue(planÜberBhv.TransportplanSchritte.Count == 2); pläne = transportplanungsServices.FindTransportplaeneZuSendungsanfrage(saDTO.SaNr); Assert.IsTrue(pläne.Count == 1); Assert.IsTrue(pläne[0].TpNr == planÜberBhv.TpNr); foreach (TransportplanDTO tpDTO in pläne) { Sendungsanfrage sa = auftragsServices.FindSendungsanfrage(tpDTO.SaNr).ToEntity(); auftragsServices.NimmAngebotAn(sa.SaNr); sendungServices.ErstelleSendung(tpDTO.TpNr, saDTO.SaNr); } FrachtabrechnungDTO fab1DTO = new FrachtabrechnungDTO { Frachtauftrag = 1, IstBestaetigt = true }; buchhaltungServices.PayFrachtabrechnung(ref fab1DTO); FrachtabrechnungDTO fab2DTO = new FrachtabrechnungDTO { Frachtauftrag = 2, IstBestaetigt = true }; buchhaltungServices.PayFrachtabrechnung(ref fab2DTO); buchhaltungServiceFuerSendung.ErstelleKundenrechnung(1, 1); var tokenSource = new CancellationTokenSource(); var token = tokenSource.Token; var t = Task.Factory.StartNew( () => { bankAdapter.EmpfangeZahlungseingaengenAusQueue(); token.ThrowIfCancellationRequested(); }, token); Thread.Sleep(10000); bankAdapter.EmpfangeZahlungseingaenge(false); Thread.Sleep(5000); tokenSource.Cancel(); }