Ejemplo n.º 1
0
        public void WhenAnyWithDependencyObjectTest()
        {
            var inputs  = new[] { "Foo", "Bar", "Baz" };
            var fixture = new DepObjFixture();

            fixture.WhenAnyValue(x => x.TestString).ToObservableChangeSet().Bind(out var outputs).Subscribe();
            inputs.ForEach(x => fixture.TestString = x);

            Assert.Null(outputs.First());
            Assert.Equal(4, outputs.Count);
            Assert.True(inputs.Zip(outputs.Skip(1), (expected, actual) => expected == actual).All(x => x));
        }
        public void WhenAnyWithDependencyObjectTest()
        {
            var inputs = new[] {"Foo", "Bar", "Baz"};
            var fixture = new DepObjFixture();

            var outputs = fixture.WhenAnyValue(x => x.TestString).CreateCollection();
            inputs.ForEach(x => fixture.TestString = x);

            Assert.Null(outputs.First());
            Assert.Equal(4, outputs.Count);
            Assert.True(inputs.Zip(outputs.Skip(1), (expected, actual) => expected == actual).All(x => x));
        }
        public void WhenAnyWithDependencyObjectTest()
        {
            var inputs  = new[] { "Foo", "Bar", "Baz" };
            var fixture = new DepObjFixture();

            var outputs = fixture.WhenAnyValue(x => x.TestString).CreateCollection(scheduler: ImmediateScheduler.Instance);

            inputs.ForEach(x => fixture.TestString = x);

            Assert.Null(outputs.First());
            Assert.Equal(4, outputs.Count);
            Assert.True(inputs.Zip(outputs.Skip(1), (expected, actual) => expected == actual).All(x => x));
        }
        public void DependencyObjectObservableForPropertySmokeTest()
        {
            var fixture = new DepObjFixture();
            var binder = new DependencyObjectObservableForProperty();
            Assert.NotEqual(0, binder.GetAffinityForObject(typeof (DepObjFixture), "TestString"));
            Assert.Equal(0, binder.GetAffinityForObject(typeof (DepObjFixture), "DoesntExist"));

            var results = new List<IObservedChange<object, object>>();
            var disp1 = binder.GetNotificationForProperty(fixture, "TestString").Subscribe(results.Add);
            var disp2 = binder.GetNotificationForProperty(fixture, "TestString").Subscribe(results.Add);

            fixture.TestString = "Foo";
            fixture.TestString = "Bar";

            Assert.Equal(4, results.Count);

            disp1.Dispose();
            disp2.Dispose();
        }
Ejemplo n.º 5
0
        public void DependencyObjectObservableForPropertySmokeTest()
        {
            var fixture = new DepObjFixture();
            var binder  = new DependencyObjectObservableForProperty();

            Assert.NotEqual(0, binder.GetAffinityForObject(typeof(DepObjFixture)));

            var results = new List <IObservedChange <object, object> >();
            var disp1   = binder.GetNotificationForProperty(fixture, "TestString").Subscribe(results.Add);
            var disp2   = binder.GetNotificationForProperty(fixture, "TestString").Subscribe(results.Add);

            fixture.TestString = "Foo";
            fixture.TestString = "Bar";

            Assert.Equal(4, results.Count);

            disp1.Dispose();
            disp2.Dispose();
        }
        public void ObservableFromDPSmokeTest()
        {
            (new TestScheduler()).With(sched => {
                var input = new[] {"Foo", "Bar", "Baz"};
                var fixture = new DepObjFixture();
                var output = fixture.ObservableFromDP(x => x.TestString).CreateCollection();

                foreach (var v in input) {
                    fixture.TestString = v;
                }

                sched.Start();
                input.AssertAreEqual(output.Select(x => x.Value));
                foreach (var v in output) {
                    Assert.Equal(fixture, v.Sender);
                    Assert.Equal("TestString", v.PropertyName);
                }

                return Unit.Default;
            });
        }
Ejemplo n.º 7
0
        public void DependencyObjectObservableForPropertySmokeTest()
        {
            var fixture = new DepObjFixture();
            var binder  = new DependencyObjectObservableForProperty();

            Assert.NotEqual(0, binder.GetAffinityForObject(typeof(DepObjFixture), "TestString"));
            Assert.Equal(0, binder.GetAffinityForObject(typeof(DepObjFixture), "DoesntExist"));

            var results = new List <IObservedChange <object, object> >();
            Expression <Func <DepObjFixture, object> > expression = x => x.TestString;
            var propertyName = expression.Body.GetMemberInfo().Name;
            var disp1        = binder.GetNotificationForProperty(fixture, expression.Body, propertyName).Subscribe(results.Add);
            var disp2        = binder.GetNotificationForProperty(fixture, expression.Body, propertyName).Subscribe(results.Add);

            fixture.TestString = "Foo";
            fixture.TestString = "Bar";

            Assert.Equal(4, results.Count);

            disp1.Dispose();
            disp2.Dispose();
        }
        public void ObservableFromDPSmokeTest()
        {
            (new TestScheduler()).With(sched => {
                var input   = new[] { "Foo", "Bar", "Baz" };
                var fixture = new DepObjFixture();
                var output  = fixture.ObservableFromDP(x => x.TestString).CreateCollection();

                foreach (var v in input)
                {
                    fixture.TestString = v;
                }

                sched.Start();
                input.AssertAreEqual(output.Select(x => x.Value));
                foreach (var v in output)
                {
                    Assert.Equal(fixture, v.Sender);
                    Assert.Equal("TestString", v.PropertyName);
                }

                return(Unit.Default);
            });
        }