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

SubscribeUnmanagedToEventOfStringWithUnsubscribe() private method

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

            var triggerCount = 0;

            Action<string> handler = (s) => { triggerCount++; };
            observable.SomeEventWithAString.SubscribeUnmanaged(handler);

            Assert.AreEqual(0, triggerCount);
            observable.SomeEventWithAString.Fire("Foo");
            Assert.AreEqual(1, triggerCount);

            observable.SomeEventWithAString.Unsubscribe(handler);
            observable.SomeEventWithAString.Fire("Foo");
            Assert.AreEqual(1, triggerCount);
        }