ArgsTests.CLI.Observability.ObservabilityTests.SubscribeUnmanagedToEventWithUnsubscribe C# (CSharp) Method

SubscribeUnmanagedToEventWithUnsubscribe() private method

private SubscribeUnmanagedToEventWithUnsubscribe ( ) : void
return void
        public void SubscribeUnmanagedToEventWithUnsubscribe()
        {
            var observable = new SomeObservable();

            var triggerCount = 0;

            Action handler = () => { triggerCount++; };
            observable.SomeEvent.SubscribeUnmanaged(handler);

            Assert.AreEqual(0, triggerCount);
            observable.SomeEvent.Fire();
            Assert.AreEqual(1, triggerCount);

            observable.SomeEvent.Unsubscribe(handler);
            observable.SomeEvent.Fire();
            Assert.AreEqual(1, triggerCount);
        }