JBL + 2011-02-28 Do ##class(vhUnitTest.Manager).RunTest("/debug/display=all","APPS.PM.TestKenmerkenService") 1 vhUnitTest.TestCase,TECH.Error.ErrorAdaptor 0 %String vhUnitTest.DOM.PM.TestData 1 %Status %Status Product met multipleNr's testen Product met kenmerken in meerdere groepen testen. Eén kenmerk bewaren van één product. zelfde waarden is geen save. Set %HeeftModEventOntvangen = 0 Set ModifiedSubscription = ##class(TECH.PubSub.EventSubscription).%New("KenmerkenModifiedEvent",..%ClassName(1),"KenmerkenModEventListener") Do ModifiedSubscription.%Save() Set Waarden = ##class(%ListOfDataTypes).%New() Do Waarden.Insert(NieuweWaarde) Set Kenmerken.GetAt(4).Waarden = Waarden Do KenmerkenService.BewaarProductenKenmerken(ProductenKenmerken) Do $$$AssertFalse(%HeeftModEventOntvangen,"De mod event werd niet opgegooid omdat er geen wijzigingen waren") Do ModifiedSubscription.%DeleteId(ModifiedSubscription.%Id()) Kill %HeeftModEventOntvangen ]]> Testen als er van een product een kenmerk goed wordt ingesteld en één slecht Hierbij moet een rollback gebeuren en data moet ongewijzigd blijven Testen als er van een product een kenmerk goed wordt ingesteld maar ondertussen de InstanceVersion gewijzigd werd. Kenmerk van twee producten wijzigen, maar meerdere producten zitten in de lijst. Kenmerk van twee producten wijzigen, maar meerdere producten zitten in de lijst. Test het verwijderen van een kenmerkenset, waardoor er nog één multiple kenmerken set overschiet. Ineens wordt ook een MultipleToOne uitgevoerd, zodat er één nieuwe kenmerken set bijkomt. Startsituatie : 1003.1 en 1003.2 Actie : verwijder 1003.2 Eindsituatie : 1003 Test het verwijderen van een kenmerkenset, waardoor er nog twee multiple kenmerkensets overschieten. Startsituatie : 1016.1 en 1016.2 en 1016.3 Actie : verwijder 1016.2 Eindsituatie : 1016.1 en 1016.2 1 KenmerkenModifiedEvent:TECH.Events.KenmerkenModifiedEvent 0) { Set %HeeftModEventOntvangen = 1 } ]]> Test het maken van nieuwe KenmerkenSets voor opgegeven PRNrs. Het maken zelf wordt getest in een andere unit test, namelijk : do ##class(vhUnitTest.Manager).RunTest("/display=all","DOM.PM.TestProductKenmerkenSets")