Index: vhUnitTest/DOM/PM/TestSamengesteldProduct.cls.xml =================================================================== diff -u -r1354 -r1480 --- vhUnitTest/DOM/PM/TestSamengesteldProduct.cls.xml (.../TestSamengesteldProduct.cls.xml) (revision 1354) +++ vhUnitTest/DOM/PM/TestSamengesteldProduct.cls.xml (.../TestSamengesteldProduct.cls.xml) (revision 1480) @@ -139,6 +139,38 @@ Do $$$AssertEquals(NieuwKindBouwsteen.GeefID(),"KIND.001","Het label werd goed gegenereerd") Do NieuwKindBouwsteen.Delete() + + + // Nieuwe bouwsteen toevoegen. Saven. Verwijderen en opnieuw toevoegen en daarna saven. PRLINK moet hierna zeker nog in orde zijn. + + Set Product = ##class(DOM.PM.impl.DataM.SamengesteldProduct).%New(999) + + Set KindProduct = ProductAPI.GeefProduct(..KindPRNr) + Set NieuwKindBouwsteen = Product.VoegToeKindBouwsteen(KindProduct,2) + Do Product.Save() + Do Product.VerwijderBouwsteen(NieuwKindBouwsteen) + Set NieuwKindBouwsteen = Product.VoegToeKindBouwsteen(KindProduct,2) + Do Product.Save() + + Do $$$AssertTrue($$$ISOK(Status),"Het product is correct opgeslagen") + Do $$$AssertTrue($D(^PRBS("BS",999,"KIND.003")),"De data is opgeslagen in PRBS") + Do $$$AssertTrue($D(^PRLINK("D",999,..KindPRNr)),"De index op bouwsteen aantal werd opgebouwd") + Do $$$AssertTrue($D(^PRLINK("IKM",..KindPRNr,999)),"De index van kind op moeder werd opgebouwd") + Do $$$AssertEquals(^PRBS("IP",..KindPRNr,999,"KIND.003"),"K","De index op bouwsteentype werd opgebouwd") + Do $$$AssertFalse(NieuwKindBouwsteen.IsModified(),"De bouwsteen werd opgeslagen en de modified vlag is op false gezet") + + Set IsVerwijderd = Product.VerwijderBouwsteen(NieuwKindBouwsteen) + + Do $$$AssertTrue(IsVerwijderd,"De bouwsteen is verwijderd") + + Do Product.Save() + + Do $$$AssertTrue($$$ISOK(Status),"Het product is correct verwijderd") + Do $$$AssertFalse($D(^PRBS("BS",999,"KIND.003")),"De data in PRBS werd verwijderd") + Do $$$AssertFalse($D(^PRLINK("D",999,..KindPRNr)),"De index op bouwsteen aantal werd verwijderd") + Do $$$AssertFalse($D(^PRLINK("IKM",..KindPRNr,999)),"De index van kind op moeder werd verwijderd") + Do $$$AssertFalse($D(^PRBS("IP",..KindPRNr,999,"KIND.003")),"De index op bouwsteentype werd verwijderd") + Do $$$AssertFalse(NieuwKindBouwsteen.IsModified(),"De bouwsteen werd verwijderd en de modified vlag is op true gezet") ]]>