Index: WSimpl/Vhisie4/Winkelkar/WinkelkarService/VerwijderLijn.cls.xml =================================================================== diff -u -r45514 -r50443 --- WSimpl/Vhisie4/Winkelkar/WinkelkarService/VerwijderLijn.cls.xml (.../VerwijderLijn.cls.xml) (revision 45514) +++ WSimpl/Vhisie4/Winkelkar/WinkelkarService/VerwijderLijn.cls.xml (.../VerwijderLijn.cls.xml) (revision 50443) @@ -38,6 +38,9 @@ Lock +^Vhisie4.Winkelkar(VerwijderLijnRequest.WinkelkarId, VerwijderLijnRequest.LijnId):0 Else Do ##class(TECH.ExceptionHandler).Throw(##class(TECH.Exceptions.LockedException).%New("Winkelkar '" _VerwijderLijnRequest.WinkelkarId _"' is gelocked door een andere webservice call. Probeer later opnieuw.")) Try { + + Do ..ControleerExterneLijnId(VerwijderLijnRequest.WinkelkarId, VerwijderLijnRequest.LijnId) + #dim WinkelkarID As %String = ..WinkelkarRepository.GeefWinkelkarIDViaID(VerwijderLijnRequest.WinkelkarId) #dim LijnID As %String = ..LijnRepository.GeefLijnIDViaID(VerwijderLijnRequest.LijnId) @@ -54,6 +57,17 @@ Lock -^Vhisie4.Winkelkar(VerwijderLijnRequest.WinkelkarId,VerwijderLijnRequest.LijnId) ]]> + + +ExternId:%String,ExterneLijnId:%String +1 + + Index: vhUnitTest/WSimpl/Vhisie4/Winkelkar/WinkelkarService/VerwijderLijn/Test.cls.xml =================================================================== diff -u -r39986 -r50443 --- vhUnitTest/WSimpl/Vhisie4/Winkelkar/WinkelkarService/VerwijderLijn/Test.cls.xml (.../Test.cls.xml) (revision 39986) +++ vhUnitTest/WSimpl/Vhisie4/Winkelkar/WinkelkarService/VerwijderLijn/Test.cls.xml (.../Test.cls.xml) (revision 50443) @@ -10,6 +10,7 @@ Set WinkelkarLijnRepositoryMock = ##class(vhTest.Mock.WSimpl.Vhisie4.Winkelkar.WinkelkarLijnRepository).%New() Do WinkelkarLijnRepositoryMock.VerwachtMethodCall("GeefLijnIDViaID", "LijnId").DanReturn("DummyID||DummyLijnID") + Do WinkelkarLijnRepositoryMock.VerwachtMethodCall("BestaatViaID", "LijnId").DanReturn($$$True) set WinkelkarServiceMock = ##class(vhTest.Mock.APPS.EC.Winkelkar.WinkelkarService).%New() Do WinkelkarServiceMock.VerwachtMethodCall("VerwijderLijn","DummyID", "DummyID||DummyLijnID").DanDoeNiks() @@ -33,6 +34,7 @@ Do WinkelkarRepositoryMock.IndienMethodCall("GeefWinkelkarIDViaID",VerwijderLijnRequest.WinkelkarId).DanReturn("InterneWinkelkarID") Do WinkelkarLijnRepositoryMock.IndienMethodCall("GeefLijnIDViaID",VerwijderLijnRequest.LijnId).DanReturn("EenAndereInterneWinkelkarID||LijnID") + Do WinkelkarLijnRepositoryMock.IndienMethodCall("BestaatViaID", "LijnId").DanReturn($$$True) #dim Substrings As %ListOfDataTypes = ##class(TECH.ListUtils).CreateListOfDataTypes("Winkelkarlijn met id 'LijnId' behoort niet tot winkelkar met id 'WinkelkarId'") Do ..ZetVerwachteExceptie(##class(Tools.Test.VerwachteExceptie).%New("TECH.Exceptions.InvalidInputException", Substrings)) @@ -47,8 +49,11 @@ Set WinkelkarRepositoryStub = ##class(vhTest.Mock.WSimpl.Vhisie4.Winkelkar.WinkelkarRepository).%New() Set InvalidInputException = ##class(TECH.Exceptions.InvalidInputException).%New("Winkelkar met id 'WinkelkarId' bestaat niet.") Do WinkelkarRepositoryStub.IndienMethodCall("GeefWinkelkarIDViaID", "WinkelkarId").DanException(InvalidInputException) + + Set WinkelkarLijnRepositoryStub = ##class(vhTest.Mock.WSimpl.Vhisie4.Winkelkar.WinkelkarLijnRepository).%New() + Do WinkelkarLijnRepositoryStub.IndienMethodCall("BestaatViaID", "LijnId").DanReturn($$$True) - Set Service = ##class(WSimpl.Vhisie4.Winkelkar.WinkelkarService.VerwijderLijn).%New(,WinkelkarRepositoryStub) + Set Service = ##class(WSimpl.Vhisie4.Winkelkar.WinkelkarService.VerwijderLijn).%New(,WinkelkarRepositoryStub, WinkelkarLijnRepositoryStub) #dim Substrings As %ListOfDataTypes = ##class(TECH.ListUtils).CreateListOfDataTypes("Winkelkar met id 'WinkelkarId' bestaat niet.") Do ..ZetVerwachteExceptie(##class(Tools.Test.VerwachteExceptie).%New("TECH.Exceptions.InvalidInputException", Substrings)) @@ -63,13 +68,12 @@ Do WinkelkarRepositoryStub.IndienMethodCall("GeefWinkelkarIDViaID", "WinkelkarId").DanReturn("DummyWinkelkarID") Set WinkelkarLijnRepositoryStub = ##class(vhTest.Mock.WSimpl.Vhisie4.Winkelkar.WinkelkarLijnRepository).%New() - Set InvalidInputException = ##class(TECH.Exceptions.InvalidInputException).%New("Winkelkarlijn met id 'LijnId' bestaat niet.") - Do WinkelkarLijnRepositoryStub.IndienMethodCall("GeefLijnIDViaID", "LijnId").DanException(InvalidInputException) + Do WinkelkarLijnRepositoryStub.IndienMethodCall("BestaatViaID", "LijnId").DanReturn($$$False) Set Service = ##class(WSimpl.Vhisie4.Winkelkar.WinkelkarService.VerwijderLijn).%New(, WinkelkarRepositoryStub,WinkelkarLijnRepositoryStub) - #dim Substrings As %ListOfDataTypes = ##class(TECH.ListUtils).CreateListOfDataTypes("Winkelkarlijn met id 'LijnId' bestaat niet.") - Do ..ZetVerwachteExceptie(##class(Tools.Test.VerwachteExceptie).%New("TECH.Exceptions.InvalidInputException", Substrings)) + #dim Substrings As %ListOfDataTypes = ##class(TECH.ListUtils).CreateListOfDataTypes("Winkelkarlijn met ExterneId 'LijnId' van Winkelkar met ExterneId 'WinkelkarId', bestaat niet!") + Do ..ZetVerwachteExceptie(##class(Tools.Test.VerwachteExceptie).%New("TECH.Exceptions.DataNotFoundException", Substrings)) Do Service.VerwijderLijn(..GeefVerwijderLijnRequest()) ]]>