public void RegisterTransportplanungServiceFürAuftrag(ITransportplanungServicesFürAuftrag transportplanungsService) { Contract.Requires(transportplanungsService != null); Contract.Requires(this.transportPlanungservice == null); this.transportPlanungservice = transportplanungsService; }
/// <summary> /// Initializiere Schnittstellen der Komponenten /// </summary> private static void Init() { PersistenceServicesFactory.CreateSimpleMySQLPersistenceService(out persistenceService, out transactionService); var timeServicesMock = new Mock<ITimeServices>(); //// Wir müssen einen fixen Zeitpunkt simulieren, ansonsten sind bei der Ausführung/Planung evtl. die Verträge oder Angebote abgelaufen timeServicesMock.Setup(ts => ts.Now).Returns(DateTime.Parse("31.08.2013 12:00")); auftragServices = new AuftragKomponenteFacade(persistenceService, transactionService, timeServicesMock.Object); unterbeauftragungServicesFuerBuchhaltung = new UnterbeauftragungKomponenteFacade(persistenceService, transactionService, frachtfuehrerServicesFuerUnterbeauftragung); bankServicesFuerBuchhaltung = new BankAdapterFacade(); geschaeftspartnerServices = new GeschaeftspartnerKomponenteFacade(persistenceService, transactionService); IPDFErzeugungsServicesFuerBuchhaltung pDFErzeugungsServicesFuerBuchhaltung = new PDFErzeugungKomponenteFacade(geschaeftspartnerServices as IGeschaeftspartnerServicesFuerPDFErzeugung); frachtfuehrerServicesFuerUnterbeauftragung = new FrachtfuehrerAdapterFacade(ref buchhaltungsServices); unterbeauftragungServices = new UnterbeauftragungKomponenteFacade(persistenceService, transactionService, frachtfuehrerServicesFuerUnterbeauftragung); buchhaltungsServices = new BuchhaltungKomponenteFacade( persistenceService, transactionService, unterbeauftragungServicesFuerBuchhaltung, bankServicesFuerBuchhaltung, transportplanungServicesFuerAuftrag as ITransportplanServicesFuerBuchhaltung, auftragServices as IAuftragServicesFuerBuchhaltung, geschaeftspartnerServices, pDFErzeugungsServicesFuerBuchhaltung); auftragServicesFürTransportplanung = new AuftragKomponenteFacade(persistenceService, transactionService, timeServicesMock.Object); transportnetzServicesFuerTransportplanung = new TransportnetzKomponenteFacade(); unterbeauftragungServicesFürTransportplanung = new UnterbeauftragungKomponenteFacade(persistenceService, transactionService, frachtfuehrerServicesFuerUnterbeauftragung); transportplanungServicesFuerAuftrag = new TransportplanungKomponenteFacade( persistenceService, transactionService, auftragServicesFürTransportplanung, unterbeauftragungServicesFürTransportplanung, transportnetzServicesFuerTransportplanung, timeServicesMock.Object); auftragServicesFürTransportplanung = new AuftragKomponenteFacade(persistenceService, transactionService, timeServicesMock.Object); transportnetzServices = new TransportnetzKomponenteFacade(); transportnetzServicesFürTransportplanung = new TransportnetzKomponenteFacade(); transportplanungServices = new TransportplanungKomponenteFacade(persistenceService, transactionService, auftragServicesFürTransportplanung, unterbeauftragungServicesFürTransportplanung, transportnetzServicesFuerTransportplanung, timeServicesMock.Object); }
public void RegisterTransportplanungServiceFürAuftrag(ITransportplanungServicesFürAuftrag transportplanungsService) { Check.Argument(transportplanungsService != null, "transportplanungsService != null"); this.aufK_BL.RegisterTransportplanungServiceFürAuftrag(transportplanungsService); transportplanungsServiceInitialized = true; }
public static void InitializeTests(TestContext testContext) { log4net.Config.XmlConfigurator.Configure(); PersistenceServicesFactory.CreateSimpleMySQLPersistenceService(out persistenceService, out transactionService); auftragsServicesFürTransportplanungMock = new Mock<IAuftragServicesFürTransportplanung>(); var transportnetzServicesFürTransportplanungMock = new Mock<ITransportnetzServicesFürTransportplanung>(); hamburgLokation = new Lokation("Hamburg", TimeSpan.Parse("10"), 10); hamburgLokation.LokNr = 1; bremerhavenLokation = new Lokation("Bremerhaven", TimeSpan.Parse("15"), 15); bremerhavenLokation.LokNr = 2; rotterdamLokation = new Lokation("Rotterdam", TimeSpan.Parse("20"), 20); rotterdamLokation.LokNr = 3; shanghaiLokation = new Lokation("Shanghai", TimeSpan.Parse("10"), 10); shanghaiLokation.LokNr = 4; hh_bhv = new Transportbeziehung(hamburgLokation, bremerhavenLokation); hh_bhv.TbNr = 1; bhv_sh = new Transportbeziehung(bremerhavenLokation, shanghaiLokation); bhv_sh.TbNr = 2; hh_rtd = new Transportbeziehung(hamburgLokation, rotterdamLokation); hh_rtd.TbNr = 3; rtd_sh = new Transportbeziehung(rotterdamLokation, shanghaiLokation); rtd_sh.TbNr = 4; List<List<Transportbeziehung>> path_hh_bhv = new List<List<Transportbeziehung>>(); path_hh_bhv.Add(new List<Transportbeziehung>() { hh_bhv }); transportnetzServicesFürTransportplanungMock.Setup(tns => tns.GeneriereAllePfadeVonBis(hamburgLokation.LokNr, bremerhavenLokation.LokNr)) .Returns(path_hh_bhv); List<List<Transportbeziehung>> path_hh_sh = new List<List<Transportbeziehung>>(); path_hh_sh.Add(new List<Transportbeziehung>() { hh_bhv, bhv_sh }); path_hh_sh.Add(new List<Transportbeziehung>() { hh_rtd, rtd_sh }); transportnetzServicesFürTransportplanungMock.Setup(tns => tns.GeneriereAllePfadeVonBis(hamburgLokation.LokNr, shanghaiLokation.LokNr)) .Returns(path_hh_sh); var unterbeauftragungsServicesMock = new Mock<IUnterbeauftragungServicesFürTransportplanung>(); // Transportbeauftragung ist im Komponententest unwesentlich unterbeauftragungsServicesMock.Setup(ubs => ubs.BeauftrageTransport(It.IsAny<int>(), It.IsAny<DateTime>(), It.IsAny<DateTime>(), It.IsAny<int>(), It.IsAny<int>(), It.IsAny<int>())) .Returns(1); FrachtfuehrerRahmenvertrag frv_hh_bhv = new FrachtfuehrerRahmenvertrag(); frv_hh_bhv.GueltigkeitAb = DateTime.Parse("01.01.2013"); frv_hh_bhv.GueltigkeitBis = DateTime.Parse("31.12.2013"); frv_hh_bhv.Abfahrtszeiten = new System.Collections.Generic.List<Startzeit>() { new Startzeit() { Wochentag = DayOfWeek.Tuesday, Uhrzeit = 8 }, new Startzeit() { Wochentag = DayOfWeek.Wednesday, Uhrzeit = 8 }, new Startzeit() { Wochentag = DayOfWeek.Friday, Uhrzeit = 8 } }; frv_hh_bhv.KapazitaetTEU = 2; frv_hh_bhv.KostenFix = 1000; frv_hh_bhv.KostenProTEU = 100; frv_hh_bhv.KostenProFEU = 200; frv_hh_bhv.FuerTransportAufTransportbeziehung = hh_bhv.TbNr; frv_hh_bhv.Zeitvorgabe = TimeSpan.Parse("2"); // 2 Tage frv_hh_bhv.FrvNr = 1; FrachtfuehrerRahmenvertrag frv_bhv_sh = new FrachtfuehrerRahmenvertrag(); frv_bhv_sh.GueltigkeitAb = DateTime.Parse("01.01.2013"); frv_bhv_sh.GueltigkeitBis = DateTime.Parse("31.12.2013"); frv_bhv_sh.Abfahrtszeiten = new System.Collections.Generic.List<Startzeit>() { new Startzeit() { Wochentag = DayOfWeek.Monday, Uhrzeit = 8 }, new Startzeit() { Wochentag = DayOfWeek.Thursday, Uhrzeit = 10 }, new Startzeit() { Wochentag = DayOfWeek.Saturday, Uhrzeit = 8 } }; frv_bhv_sh.KapazitaetTEU = 20; frv_bhv_sh.KostenFix = 2000; frv_bhv_sh.KostenProTEU = 200; frv_bhv_sh.KostenProFEU = 400; frv_bhv_sh.FuerTransportAufTransportbeziehung = bhv_sh.TbNr; frv_bhv_sh.Zeitvorgabe = TimeSpan.Parse("5"); // 5 Tage frv_bhv_sh.FrvNr = 2; FrachtfuehrerRahmenvertrag frv_hh_rtd = new FrachtfuehrerRahmenvertrag(); frv_hh_rtd.GueltigkeitAb = DateTime.Parse("01.09.2013"); frv_hh_rtd.GueltigkeitBis = DateTime.Parse("31.12.2013"); frv_hh_rtd.Abfahrtszeiten = new System.Collections.Generic.List<Startzeit>() { new Startzeit() { Wochentag = DayOfWeek.Monday, Uhrzeit = 8 }, new Startzeit() { Wochentag = DayOfWeek.Thursday, Uhrzeit = 10 }, new Startzeit() { Wochentag = DayOfWeek.Saturday, Uhrzeit = 8 } }; frv_hh_rtd.KapazitaetTEU = 20; frv_hh_rtd.KostenFix = 2000; frv_hh_rtd.KostenProTEU = 200; frv_hh_rtd.KostenProFEU = 400; frv_hh_rtd.FuerTransportAufTransportbeziehung = hh_rtd.TbNr; frv_hh_rtd.Zeitvorgabe = TimeSpan.Parse("3"); // 3 Tage frv_hh_rtd.FrvNr = 3; FrachtfuehrerRahmenvertrag frv_rtd_sh = new FrachtfuehrerRahmenvertrag(); frv_rtd_sh.GueltigkeitAb = DateTime.Parse("01.09.2013"); frv_rtd_sh.GueltigkeitBis = DateTime.Parse("31.12.2013"); frv_rtd_sh.Abfahrtszeiten = new System.Collections.Generic.List<Startzeit>() { new Startzeit() { Wochentag = DayOfWeek.Monday, Uhrzeit = 8 }, new Startzeit() { Wochentag = DayOfWeek.Thursday, Uhrzeit = 10 }, new Startzeit() { Wochentag = DayOfWeek.Saturday, Uhrzeit = 8 } }; frv_rtd_sh.KapazitaetTEU = 20; frv_rtd_sh.KostenFix = 3000; frv_rtd_sh.KostenProTEU = 300; frv_rtd_sh.KostenProFEU = 400; frv_rtd_sh.FuerTransportAufTransportbeziehung = rtd_sh.TbNr; frv_rtd_sh.Zeitvorgabe = TimeSpan.Parse("7"); // 7 Tage frv_rtd_sh.FrvNr = 4; unterbeauftragungsServicesMock.Setup(ubs => ubs.FindGültigFür(hh_bhv.TbNr, It.IsAny<DateTime>(), It.IsAny<DateTime>())) .Returns((long _, DateTime zeitspanneVon, DateTime zeitspanneBis) => { if ((zeitspanneVon >= frv_hh_bhv.GueltigkeitAb && zeitspanneVon <= frv_hh_bhv.GueltigkeitBis) || (zeitspanneBis >= frv_hh_bhv.GueltigkeitAb && zeitspanneBis <= frv_hh_bhv.GueltigkeitBis) || (zeitspanneVon <= frv_hh_bhv.GueltigkeitAb && zeitspanneBis >= frv_hh_bhv.GueltigkeitBis)) { List<FrachtfuehrerRahmenvertrag> lfrv = new List<FrachtfuehrerRahmenvertrag>(); lfrv.Add(frv_hh_bhv); return lfrv; } else { return new List<FrachtfuehrerRahmenvertrag>(); } }); unterbeauftragungsServicesMock.Setup(ubs => ubs.FindGültigFür(bhv_sh.TbNr, It.IsAny<DateTime>(), It.IsAny<DateTime>())) .Returns((long _, DateTime zeitspanneVon, DateTime zeitspanneBis) => { if ((zeitspanneVon >= frv_bhv_sh.GueltigkeitAb && zeitspanneVon <= frv_bhv_sh.GueltigkeitBis) || (zeitspanneBis >= frv_bhv_sh.GueltigkeitAb && zeitspanneBis <= frv_bhv_sh.GueltigkeitBis) || (zeitspanneVon <= frv_bhv_sh.GueltigkeitAb && zeitspanneBis >= frv_bhv_sh.GueltigkeitBis)) { List<FrachtfuehrerRahmenvertrag> lfrv = new List<FrachtfuehrerRahmenvertrag>(); lfrv.Add(frv_bhv_sh); return lfrv; } else { return new List<FrachtfuehrerRahmenvertrag>(); } }); unterbeauftragungsServicesMock.Setup(ubs => ubs.FindGültigFür(hh_rtd.TbNr, It.IsAny<DateTime>(), It.IsAny<DateTime>())) .Returns((long _, DateTime zeitspanneVon, DateTime zeitspanneBis) => { if ((zeitspanneVon >= frv_hh_rtd.GueltigkeitAb && zeitspanneVon <= frv_hh_rtd.GueltigkeitBis) || (zeitspanneBis >= frv_hh_rtd.GueltigkeitAb && zeitspanneBis <= frv_hh_rtd.GueltigkeitBis) || (zeitspanneVon <= frv_hh_rtd.GueltigkeitAb && zeitspanneBis >= frv_hh_rtd.GueltigkeitBis)) { List<FrachtfuehrerRahmenvertrag> lfrv = new List<FrachtfuehrerRahmenvertrag>(); lfrv.Add(frv_hh_rtd); return lfrv; } else { return new List<FrachtfuehrerRahmenvertrag>(); } }); unterbeauftragungsServicesMock.Setup(ubs => ubs.FindGültigFür(rtd_sh.TbNr, It.IsAny<DateTime>(), It.IsAny<DateTime>())) .Returns((long _, DateTime zeitspanneVon, DateTime zeitspanneBis) => { if ((zeitspanneVon >= frv_rtd_sh.GueltigkeitAb && zeitspanneVon <= frv_rtd_sh.GueltigkeitBis) || (zeitspanneBis >= frv_rtd_sh.GueltigkeitAb && zeitspanneBis <= frv_rtd_sh.GueltigkeitBis) || (zeitspanneVon <= frv_rtd_sh.GueltigkeitAb && zeitspanneBis >= frv_rtd_sh.GueltigkeitBis)) { List<FrachtfuehrerRahmenvertrag> lfrv = new List<FrachtfuehrerRahmenvertrag>(); lfrv.Add(frv_rtd_sh); return lfrv; } else { return new List<FrachtfuehrerRahmenvertrag>(); } }); var timeServicesMock = new Mock<ITimeServices>(); //// Wir müssen einen fixen Zeitpunkt simulieren, ansonsten sind bei der Ausführung/Planung evtl. die Verträge oder Angebote abgelaufen timeServicesMock.Setup(ts => ts.Now) .Returns(DateTime.Parse("31.08.2013 12:00")); transportplanungsServices = new TransportplanungKomponenteFacade(persistenceService, transactionService, auftragsServicesFürTransportplanungMock.Object, unterbeauftragungsServicesMock.Object as IUnterbeauftragungServicesFürTransportplanung, transportnetzServicesFürTransportplanungMock.Object as ITransportnetzServicesFürTransportplanung, timeServicesMock.Object); transportplanungsServicesFuerSendung = transportplanungsServices as ITransportplanungServicesFuerSendung; transportplanungsServicesFürAuftrag = transportplanungsServices as ITransportplanungServicesFürAuftrag; Assert.IsTrue(transportplanungsServicesFürAuftrag != null); }
public MainWindow() { InitializeComponent(); PersistenceServicesFactory.CreateSimpleMySQLPersistenceService(out persistenceService, out transactionService); var timeServicesMock = new Mock<ITimeServices>(); //// Wir müssen einen fixen Zeitpunkt simulieren, ansonsten sind bei der Ausführung/Planung evtl. die Verträge oder Angebote abgelaufen timeServicesMock.Setup(ts => ts.Now).Returns(DateTime.Parse("31.08.2013 12:00")); auftragService = new AuftragKomponenteFacade(persistenceService, transactionService, timeServicesMock.Object); geschaeftspartnerService = new GeschaeftspartnerKomponenteFacade(persistenceService, transactionService); transportnetzService = new TransportnetzKomponenteFacade(); IAuftragServicesFürTransportplanung auftragsServicesFürTransportplanung = auftragService as IAuftragServicesFürTransportplanung; IBuchhaltungServices buchhaltungServices = new BuchhaltungKomponenteFacade( persistenceService, transactionService, new Mock<IUnterbeauftragungServicesFuerBuchhaltung>().Object, new Mock<IBankServicesFuerBuchhaltung>().Object, new Mock<ITransportplanServicesFuerBuchhaltung>().Object, new Mock<IAuftragServicesFuerBuchhaltung>().Object, geschaeftspartnerService, new Mock<IPDFErzeugungsServicesFuerBuchhaltung>().Object); IFrachtfuehrerServicesFürUnterbeauftragung frachtfuehrerServices = new FrachtfuehrerAdapterFacade(ref buchhaltungServices); IUnterbeauftragungServicesFürTransportplanung unterbeauftragungServicesFürTransportplanung = new UnterbeauftragungKomponenteFacade( persistenceService, transactionService, frachtfuehrerServices); ITransportnetzServicesFürTransportplanung transportnetzServicesFürTransportplanung = new TransportnetzKomponenteFacade(); transportplanungServicesFürAuftrag = new TransportplanungKomponenteFacade( persistenceService, transactionService, auftragsServicesFürTransportplanung, unterbeauftragungServicesFürTransportplanung, transportnetzServicesFürTransportplanung, timeServicesMock.Object); auftragsServicesFürTransportplanung.RegisterTransportplanungServiceFürAuftrag(transportplanungServicesFürAuftrag); transportplanungServices = new TransportplanungKomponenteFacade( persistenceService, transactionService, auftragsServicesFürTransportplanung, unterbeauftragungServicesFürTransportplanung, transportnetzServicesFürTransportplanung, timeServicesMock.Object); transportplanungServicesFuerSendung = new TransportplanungKomponenteFacade( persistenceService, transactionService, auftragsServicesFürTransportplanung, unterbeauftragungServicesFürTransportplanung, transportnetzServicesFürTransportplanung, timeServicesMock.Object); unterbeauftragungsServices = new UnterbeauftragungKomponenteFacade(persistenceService, transactionService, frachtfuehrerServices); ConfigStart(); }