Example #1
0
            public void Dispose()
            {
                var observer = Interlocked.Exchange(ref _observer, null);

                if (observer != null)
                {
                    _subject.UnsubscribeCore(observer);
                    _subject = null;
                }
            }
        public void Should_read_a_reference_type_property()
        {
            var property = new ReadOnlyProperty(typeof(Subject).GetProperty("Inner"));

            var innerSubject = new InnerSubject();
            var subject = new Subject {Inner = innerSubject};

            object value = property.Get(subject);

            Assert.AreEqual(innerSubject, value);
        }
        private static InnerSubject <int> GetSubject(Uri id, MiniService svc)
        {
            var sch = new MiniScheduler();
            var ctx = CreateOperatorContext(id, svc, sch);

            var subject = new InnerSubject <int>();

            subject.SetContext(ctx);
            subject.Start();

            return(subject);
        }
Example #4
0
 public override int GetHashCode()
 {
     return InnerSubject.GetHashCode();
 }
Example #5
0
 public override bool Equals(object obj)
 {
     return InnerSubject.Equals(obj);
 }
Example #6
0
 public override string ToString()
 {
     return InnerSubject.ToString();
 }
Example #7
0
 public Observer(InnerSubject <T> subject) => _subject = subject;
Example #8
0
 public Subscription(InnerSubject <T> subject, IObserver <T> observer)
 {
     _subject  = subject;
     _observer = observer;
 }