예제 #1
0
        public void ViewBuilding()
        {
            var view     = new TestView1();
            var subviews = new ViewHierarchy(view, new FakeViewHierarchyBuilder());

            Assert.AreEqual(2, view.Subviews.Count, "View marked with View attribute added into parent view");
            Assert.AreEqual(2, subviews.Subviews.Count(), "View hierarchy contains all views marked with View attribute");

            Assert.IsNotNull(view.View1, "Child views created and set");
            Assert.IsNotNull(view.View2, "View wrappers created and set");
            Assert.IsNotNull(view.View2.PlatformView, "Platform views created in view wrappers");
        }
예제 #2
0
        public void Decorating()
        {
            var view     = new TestView2();
            var subviews = new ViewHierarchy(view, new FakeViewHierarchyBuilder());

            CollectionAssert.AreEqual(new [] { "Applied", "Applied" }, new [] { view.View1.Info["Style1"], view.View1.Info["Style2"] },
                                      "Multiple styles applied");

            Assert.IsFalse(view.View2.PlatformView.Info.ContainsKey("Style1"),
                           "Style1 not applied to view wrapper due to type mismatch");
            Assert.AreEqual("Applied", view.View2.PlatformView.Info["Style3"],
                            "Stype3 applied to view wrapper");
        }