public void PozivMetodeDižiAlarmObavještavaPredbilježeneSlušateljeODogađaju() { Assert.IsTrue(typeof(GeneratorAlarma).GetEvent("Alarm") != null); GeneratorAlarma generatorAlarma = new GeneratorAlarma(); Slušatelj slušatelj = new Slušatelj(); EventInfo eInfo = generatorAlarma.GetType().GetEvent("Alarm"); Assert.IsNotNull(eInfo); if (eInfo == null) { return; } Type handlerType = eInfo.EventHandlerType; Delegate del = Delegate.CreateDelegate(handlerType, slušatelj, "ObradaDogađaja", false); eInfo.AddEventHandler(generatorAlarma, del); Assert.IsFalse(slušatelj.DogađajSeDogodio); generatorAlarma.DižiAlarm("mjesto", 3, "potres"); Assert.IsTrue(slušatelj.DogađajSeDogodio); }
public void PozivMetodeDižiAlarmProsljeđujePredbilježenimSlušateljimaVrijemeAlarma() { Assert.IsTrue(typeof(GeneratorAlarma).GetEvent("Alarm") != null); GeneratorAlarma generatorAlarma = new GeneratorAlarma(); Slušatelj slušatelj = new Slušatelj(); EventInfo eInfo = generatorAlarma.GetType().GetEvent("Alarm"); Assert.IsNotNull(eInfo); if (eInfo == null) { return; } Type handlerType = eInfo.EventHandlerType; Delegate del = Delegate.CreateDelegate(handlerType, slušatelj, "ObradaDogađaja", false); eInfo.AddEventHandler(generatorAlarma, del); DateTime trenutakPrije = DateTime.Now; generatorAlarma.DižiAlarm("mjesto", 3, "potres"); Assert.IsTrue(slušatelj.Vrijeme >= trenutakPrije && slušatelj.Vrijeme <= DateTime.Now); }
public void PozivMetodeDižiAlarmProsljeđujePredbilježenimSlušateljimaRazinuAlarma() { Assert.IsTrue(typeof(GeneratorAlarma).GetEvent("Alarm") != null); GeneratorAlarma generatorAlarma = new GeneratorAlarma(); Slušatelj slušatelj = new Slušatelj(); EventInfo eInfo = generatorAlarma.GetType().GetEvent("Alarm"); Assert.IsNotNull(eInfo); if (eInfo == null) { return; } Type handlerType = eInfo.EventHandlerType; Delegate del = Delegate.CreateDelegate(handlerType, slušatelj, "ObradaDogađaja", false); eInfo.AddEventHandler(generatorAlarma, del); generatorAlarma.DižiAlarm("mjesto", 3, "potres"); Assert.AreEqual(3, slušatelj.Razina); }