Do ##class(vhUnitTest.Manager).RunTest("/debug/display=all","APPS.PM.TestKenmMWFPlugin") 1 vhUnitTest.TestCase %String 32988 %String UTKenmerkGroep 2 x 2 combinaties") /* +----------+----------+----------+ | Kenmerk1 | Kenmerk2 | Kenmerk3 | +----------+----------+----------+ | | | Waarde1 | +----------+----------+----------+ */ Do ##class(Prod.Kenmerk.DataDefinitie).WijzigOfMaak(..#KenmerkGroep,..#ProductID,"Kenmerk1","",,,,0) Set KenmerkenModifiedEventData = ##class(TECH.Events.KenmerkenModifiedEventData).%New() Set Waarden = ##class(%ListOfDataTypes).%New() Set KenmerkModifiedEventData = ##class(TECH.Events.KenmerkModifiedEventData).%New(32988,"UTKenmerkGroep","Kenmerk1",Waarden) Do KenmerkenModifiedEventData.Wijzigingen.Insert(KenmerkModifiedEventData) Do ##class(Prod.Kenmerk.DataDefinitie).WijzigOfMaak(..#KenmerkGroep,..#ProductID,"Kenmerk2","",,,,0) Set Waarden = ##class(%ListOfDataTypes).%New() Set KenmerkModifiedEventData = ##class(TECH.Events.KenmerkModifiedEventData).%New(32988,"UTKenmerkGroep","Kenmerk2",Waarden) Do KenmerkenModifiedEventData.Wijzigingen.Insert(KenmerkModifiedEventData) Do ##class(Prod.Kenmerk.DataDefinitie).WijzigOfMaak(..#KenmerkGroep,..#ProductID,"Kenmerk3","Waarde1",,,,0) Set Waarden = ##class(%ListOfDataTypes).%New() Do Waarden.Insert("Waarde1") Set KenmerkModifiedEventData = ##class(TECH.Events.KenmerkModifiedEventData).%New(32988,"UTKenmerkGroep","Kenmerk3",Waarden) Do KenmerkenModifiedEventData.Wijzigingen.Insert(KenmerkModifiedEventData) Do ##class(vhUnitTest.APPS.PM.KenmMWFPluginMock).%New(KenmerkenModifiedEventData) Do ..GeefAantalUniekeWaarden(.Kenmerk1,.Kenmerk2,.Kenmerk3,.AantalRijen) Do $$$AssertEquals(Kenmerk1,0,"Er zijn geen waarden voor kenmerk1") Do $$$AssertEquals(Kenmerk2,0,"Er zijn geen waarden voor kenmerk2") Do $$$AssertEquals(Kenmerk3,1,"Er is 1 waarde voor kenmerk3") Do $$$AssertEquals(AantalRijen,1,"Er is 1 rij") /* +----------+----------+----------+ | Kenmerk1 | Kenmerk2 | Kenmerk3 | +----------+----------+----------+ | | | | +----------+----------+----------+ */ Do ##class(Prod.Kenmerk.DataDefinitie).WijzigOfMaak(..#KenmerkGroep,..#ProductID,"Kenmerk1","",,,,0) Set KenmerkenModifiedEventData = ##class(TECH.Events.KenmerkenModifiedEventData).%New() Set Waarden = ##class(%ListOfDataTypes).%New() Set KenmerkModifiedEventData = ##class(TECH.Events.KenmerkModifiedEventData).%New(32988,"UTKenmerkGroep","Kenmerk1",Waarden) Do KenmerkenModifiedEventData.Wijzigingen.Insert(KenmerkModifiedEventData) Do ##class(Prod.Kenmerk.DataDefinitie).WijzigOfMaak(..#KenmerkGroep,..#ProductID,"Kenmerk2","",,,,0) Set Waarden = ##class(%ListOfDataTypes).%New() Set KenmerkModifiedEventData = ##class(TECH.Events.KenmerkModifiedEventData).%New(32988,"UTKenmerkGroep","Kenmerk2",Waarden) Do KenmerkenModifiedEventData.Wijzigingen.Insert(KenmerkModifiedEventData) Do ##class(Prod.Kenmerk.DataDefinitie).WijzigOfMaak(..#KenmerkGroep,..#ProductID,"Kenmerk3","",,,,0) Set Waarden = ##class(%ListOfDataTypes).%New() Set KenmerkModifiedEventData = ##class(TECH.Events.KenmerkModifiedEventData).%New(32988,"UTKenmerkGroep","Kenmerk3",Waarden) Do KenmerkenModifiedEventData.Wijzigingen.Insert(KenmerkModifiedEventData) Do ##class(vhUnitTest.APPS.PM.KenmMWFPluginMock).%New(KenmerkenModifiedEventData) Do ..GeefAantalUniekeWaarden(.Kenmerk1,.Kenmerk2,.Kenmerk3,.AantalRijen) Do $$$AssertEquals(Kenmerk1,0,"Er zijn geen waarden") Do $$$AssertEquals(Kenmerk2,0,"Er zijn geen waarden") Do $$$AssertEquals(Kenmerk3,0,"Er zijn geen waarden") Do $$$AssertEquals(AantalRijen,0,"Er zijn geen rijen meer") Do ##class(vhUnitTest.APPS.PM.HalffabUT).%KillExtent() ]]> 0) Do $$$AssertTrue(Halffab2.%Id()>0) Set KenmerkSetVerwijderdEventData = ##class(DOM.PM.event.KenmerkenSetVerwijderdEventData).%New(1000.1,..#KenmerkGroep) Set KenmerkSetVerwijderdEvent = ##class(DOM.PM.event.KenmerkenSetVerwijderdEvent).%New(KenmerkSetVerwijderdEventData) Do ##class(vhUnitTest.APPS.PM.KenmMWFPluginMock).KenmerkenSetVerwijderdEventListener(KenmerkSetVerwijderdEvent) Do $$$AssertFalse(Halffab.%ExistsId(Halffab.%Id())) Do $$$AssertTrue(Halffab2.%ExistsId(Halffab2.%Id()),"1000.2 moet blijven") Do Halffab2.Delete() ]]>