Index: vhUnitTest/EXT/Unishop/PurchaseOrder001/BestandVerwerker/VerwerkBestand/Test.cls.xml =================================================================== diff -u -r52128 -r52705 --- vhUnitTest/EXT/Unishop/PurchaseOrder001/BestandVerwerker/VerwerkBestand/Test.cls.xml (.../Test.cls.xml) (revision 52128) +++ vhUnitTest/EXT/Unishop/PurchaseOrder001/BestandVerwerker/VerwerkBestand/Test.cls.xml (.../Test.cls.xml) (revision 52705) @@ -91,23 +91,41 @@ Set EdiBestelServiceMock = ##class(vhTest.Mock.APPS.EDI.Bestel.BestelService).%New() Do EdiBestelServiceMock.IndienMethodCall("PlaatsBestelling",$$$ElkeWaarde).DanReturn(ResultaatMetError) + Set DummyGebruiker = ##class(vhTest.Dummy.DOM.common.VanHoeckeGebruiker).%New() + #dim DummyKlant As vhTest.Mock.DOM.VKP.VanHoeckeKlant = ##class(vhTest.Utils.DOM.VKP.VanHoeckeKlant).StandaardKlant() + Do DummyKlant.IndienMethodCall("GeefInterneVerantwoordelijke").DanReturn(DummyGebruiker) + Set MailMock = ##class(vhTest.Mock.TECH.Mail.Mail).%New() Do MailMock.VerwachtMethodCall("ZetVerzender",$$$SystemMail("EDI Bestelling")) - Do MailMock.VerwachtMethodCall("ZetOnderwerp","EDI bestelling van 'SFS UNIMARKET' ontvangen, maar er was een probleem, dus de klant krijgt zijn goederen wellicht niet!") - Do MailMock.VerwachtMethodCall("ZetInhoud","Er werd een EDI bestelling van 'SFS UNIMARKET' ontvangen met volgend probleem, dat je aan ICT moet melden, tenzij je dit probleem vanuit BIDI kan oplossen! :"_$$$CRLF_"Bestand:'"_ ..BestandVolledigeNaam _"'. "_$$$CRLF_ResultaatMetError.Exceptie.ToString()) - Do MailMock.VerwachtMethodCall("VoegToeOntvanger","bbe@vanhoecke.be") + Do MailMock.VerwachtMethodCall("ZetOnderwerp","EDI bestelling van '"_DummyKlant.GeefNaam()_"' ontvangen, maar er was een probleem, dus de klant krijgt zijn goederen wellicht niet!") + Do MailMock.IndienMethodCall("ZetInhoud","Er werd een EDI bestelling van '"_DummyKlant.GeefNaam()_"' ontvangen met volgend probleem, dat je aan ICT moet melden, tenzij je dit probleem vanuit BIDI kan oplossen! :"_$$$CRLF_"Bestand:'"_ ..BestandVolledigeNaam _"'. "_$$$CRLF_ResultaatMetError.Exceptie.ToString()) + Do MailMock.VerwachtMethodCall("VoegToeOntvanger",DummyGebruiker.GeefEmailAdres()) Set MailApiMock = ##class(vhTest.Mock.TECH.Mail.MailAPI).%New() Do MailApiMock.VerwachtMethodCall("VerstuurMail",MailMock) Do MailApiMock.VerwachtMethodCall("MaakNieuwMail").DanReturn(MailMock) - #dim DummyOrder As EXT.Unishop.PurchaseOrder001.CreateOrder.Order = ##class(vhTest.Utils.EXT.Unishop.PurchaseOrder001.CreateOrder.Order).TaorboxOrder() - set StubCorrelator = ##class(vhTest.Mock.TECH.XMLCorrelater).%New() - do StubCorrelator.IndienMethodCall("GeefObjectVanBestand",..BestandVolledigeNaam,"EXT.Unishop.PurchaseOrder001.CreateOrder.Order","PurchaseOrder").DanReturn(DummyOrder) + Set VerkoopApiStub = ##class(vhTest.Mock.DOM.VKP.VerkoopAPI).%New() + Do VerkoopApiStub.IndienMethodCall("GeefKlant","SFS_83723").DanReturn(DummyKlant) Set AanvraagStub = ##class(APPS.EDI.Bestel.BestelService.PlaatsBestelling.Aanvraag).%New() + Set AanvraagStub.Header.PersonalityID = ##class(DOM.common.enu.Personality).SFS() + Set AanvraagStub.Header.KlantID = "SFS_83723" - Set Verwerker = ##class(EXT.Unishop.PurchaseOrder001.BestandVerwerker).%New(StubCorrelator,EdiBestelServiceMock,MailApiMock) + Set DummyPersonality = ##class(vhTest.Mock.DOM.common.Personality).%New() + Set CommonApiStub = ##class(vhTest.Mock.DOM.common.CommonAPI).%New() + Do CommonApiStub.IndienMethodCall("GeefPersonality", AanvraagStub.Header.PersonalityID).DanReturn(DummyPersonality) + + #dim DummyKlantId As %String = "SFS_83723" + + Set PersonalityKlantBepalerStub = ##class(vhTest.Mock.DOM.common.impl.PersonalityKlantBepaler).%New() + Do PersonalityKlantBepalerStub.IndienMethodCall("GeefKlantID", DummyPersonality, AanvraagStub.Header.KlantID).DanReturn(DummyKlantId) + + #dim DummyOrder As EXT.Unishop.PurchaseOrder001.CreateOrder.Order = ##class(vhTest.Utils.EXT.Unishop.PurchaseOrder001.CreateOrder.Order).TaorboxOrder() + Set StubCorrelator = ##class(vhTest.Mock.TECH.XMLCorrelater).%New() + do StubCorrelator.IndienMethodCall("GeefObjectVanBestand",..BestandVolledigeNaam,"EXT.Unishop.PurchaseOrder001.CreateOrder.Order","PurchaseOrder").DanReturn(DummyOrder) + + Set Verwerker = ##class(EXT.Unishop.PurchaseOrder001.BestandVerwerker).%New(StubCorrelator, EdiBestelServiceMock, MailApiMock, VerkoopApiStub, PersonalityKlantBepalerStub, CommonApiStub) Do Verwerker.VerwerkBestand(..BestandVolledigeNaam) Do MailApiMock.Verifieer() @@ -121,23 +139,43 @@ Set EdiBestelServiceMock = ##class(vhTest.Mock.APPS.EDI.Bestel.BestelService).%New() Do EdiBestelServiceMock.IndienMethodCall("PlaatsBestelling",$$$ElkeWaarde).DanReturn(Resultaat) + Set DummyGebruiker = ##class(vhTest.Dummy.DOM.common.VanHoeckeGebruiker).%New() + #dim DummyKlant As vhTest.Mock.DOM.VKP.VanHoeckeKlant = ##class(vhTest.Utils.DOM.VKP.VanHoeckeKlant).StandaardKlant() + Do DummyKlant.IndienMethodCall("GeefInterneVerantwoordelijke").DanReturn(DummyGebruiker) + Set MailMock = ##class(vhTest.Mock.TECH.Mail.Mail).%New() Do MailMock.VerwachtMethodCall("ZetVerzender",$$$SystemMail("EDI Bestelling")) - Do MailMock.VerwachtMethodCall("ZetOnderwerp","EDI bestelling van 'SFS UNIMARKET' ontvangen") - Do MailMock.VerwachtMethodCall("ZetInhoud","Er werd een EDI bestelling van 'SFS UNIMARKET' ontvangen en ze werd goed verwerkt") - Do MailMock.VerwachtMethodCall("VoegToeOntvanger","bbe@vanhoecke.be") + Do MailMock.VerwachtMethodCall("ZetOnderwerp","EDI bestelling van '"_DummyKlant.GeefNaam()_"' ontvangen") + Do MailMock.VerwachtMethodCall("ZetInhoud","Er werd een EDI bestelling van '"_DummyKlant.GeefNaam()_"' ontvangen en ze werd goed verwerkt") + Do MailMock.VerwachtMethodCall("VoegToeOntvanger",DummyGebruiker.GeefEmailAdres()) Set MailApiMock = ##class(vhTest.Mock.TECH.Mail.MailAPI).%New() Do MailApiMock.VerwachtMethodCall("VerstuurMail",MailMock) Do MailApiMock.VerwachtMethodCall("MaakNieuwMail").DanReturn(MailMock) - + + Set VerkoopApiStub = ##class(vhTest.Mock.DOM.VKP.VerkoopAPI).%New() + Do VerkoopApiStub.IndienMethodCall("GeefKlant","SFS_83723").DanReturn(DummyKlant) + + Set AanvraagStub = ##class(APPS.EDI.Bestel.BestelService.PlaatsBestelling.Aanvraag).%New() + Set AanvraagStub.Header.PersonalityID = ##class(DOM.common.enu.Personality).SFS() + Set AanvraagStub.Header.KlantID = "SFS_83723" + + Set DummyPersonality = ##class(vhTest.Mock.DOM.common.Personality).%New() + Set CommonApiStub = ##class(vhTest.Mock.DOM.common.CommonAPI).%New() + Do CommonApiStub.IndienMethodCall("GeefPersonality", AanvraagStub.Header.PersonalityID).DanReturn(DummyPersonality) + + #dim DummyKlantId As %String = "SFS_83723" + + Set PersonalityKlantBepalerStub = ##class(vhTest.Mock.DOM.common.impl.PersonalityKlantBepaler).%New() + Do PersonalityKlantBepalerStub.IndienMethodCall("GeefKlantID", DummyPersonality, AanvraagStub.Header.KlantID).DanReturn(DummyKlantId) + #dim DummyOrder As EXT.Unishop.PurchaseOrder001.CreateOrder.Order = ##class(vhTest.Utils.EXT.Unishop.PurchaseOrder001.CreateOrder.Order).TaorboxOrder() set StubCorrelator = ##class(vhTest.Mock.TECH.XMLCorrelater).%New() do StubCorrelator.IndienMethodCall("GeefObjectVanBestand",..BestandVolledigeNaam,"EXT.Unishop.PurchaseOrder001.CreateOrder.Order","PurchaseOrder").DanReturn(DummyOrder) Set AanvraagStub = ##class(APPS.EDI.Bestel.BestelService.PlaatsBestelling.Aanvraag).%New() - Set Verwerker = ##class(EXT.Unishop.PurchaseOrder001.BestandVerwerker).%New(StubCorrelator,EdiBestelServiceMock,MailApiMock) + Set Verwerker = ##class(EXT.Unishop.PurchaseOrder001.BestandVerwerker).%New(StubCorrelator, EdiBestelServiceMock, MailApiMock, VerkoopApiStub, PersonalityKlantBepalerStub, CommonApiStub) Do Verwerker.VerwerkBestand(..BestandVolledigeNaam) Do MailApiMock.Verifieer() Index: EXT/Unishop/PurchaseOrder001/BestandVerwerker.cls.xml =================================================================== diff -u -r52126 -r52705 --- EXT/Unishop/PurchaseOrder001/BestandVerwerker.cls.xml (.../BestandVerwerker.cls.xml) (revision 52126) +++ EXT/Unishop/PurchaseOrder001/BestandVerwerker.cls.xml (.../BestandVerwerker.cls.xml) (revision 52705) @@ -38,8 +38,18 @@ 1 + +DOM.common.CommonAPI +1 + + + +DOM.VKP.VerkoopAPI +1 + + -XmlCorrelater:TECH.XMLCorrelater,BestelService:APPS.EDI.Bestel.BestelService,MailApi:TECH.Mail.impl.MailAPI +XmlCorrelater:TECH.XMLCorrelater,BestelService:APPS.EDI.Bestel.BestelService,MailApi:TECH.Mail.impl.MailAPI,VerkoopApi:DOM.VKP.VerkoopAPI,KlantBepaler:DOM.common.PersonalityKlantBepaler,CommonApi:DOM.common.CommonAPI 1 1 %Status @@ -49,7 +59,10 @@ Set ..BestelService = $$$Inject(BestelService,##class(APPS.EDI.Bestel.impl.BestelService).%New()) Set ..AanvraagHeaderBepaler = ##class(APPS.EDI.Bestel.impl.BestelService.PlaatsBestelling.AanvraagHeaderBepaler).%New() Set ..MailApi = $$$Inject(MailApi,##class(TECH.Context).Instance().GeefMailAPI()) - Set ..KlantBepaler = ##class(DOM.common.impl.PersonalityKlantBepaler).%New() + Set ..KlantBepaler = $$$Inject(KlantBepaler, ##class(DOM.common.impl.PersonalityKlantBepaler).%New()) + Set ..CommonApi = $$$Inject(CommonApi, ##class(DOM.DomeinContext).Instance().GeefCommonAPI()) + Set ..VerkoopApi = $$$Inject(VerkoopApi, ##class(DOM.DomeinContext).Instance().GeefVerkoopAPI()) + Quit $$$OK ]]> @@ -99,8 +112,8 @@ VerwerkteOrderInfo:%ArrayOfDataTypes,ProbleemTekst:TECH.String="" 1 Deze klasse werd automatisch gegenereerd en onderhouden - lokale aanpassingen zijn niet nodig. -Een hercompilatie van de basis interface - met een correct werkende studiohook ( v2.20 ++ ) - zorgt ervoor dat deze klasse aangepast wordt -Inheritance van meerdere TECH.Interface interfaces resulteert nog niet in een mockklasse met overeenkomstige inheritance-structuur. +Een hercompilatie van de basis interface - met een correct werkende studiohook ( v2.20 ++ ) - zorgt ervoor dat deze klasse aangepast wordt 1 EXT.Unishop.PurchaseOrder001.OrderConverter,Tools.Mock.MockClassBase right