summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Core.UnitTests/ContentViewUnitTest.cs
diff options
context:
space:
mode:
authorwplong11 <wplong11@naver.com>2017-03-20 21:06:20 +0900
committerRui Marinho <me@ruimarinho.net>2017-03-20 12:06:20 +0000
commitf98e1525c15ca77ec9840c2b5c8020b1b320b141 (patch)
tree46bbe9afc82c275da3828f486dcf63821f7e2a0a /Xamarin.Forms.Core.UnitTests/ContentViewUnitTest.cs
parentce068193286c5fcebe3fe01fd5edfbbac88e4058 (diff)
downloadxamarin-forms-f98e1525c15ca77ec9840c2b5c8020b1b320b141.tar.gz
xamarin-forms-f98e1525c15ca77ec9840c2b5c8020b1b320b141.tar.bz2
xamarin-forms-f98e1525c15ca77ec9840c2b5c8020b1b320b141.zip
[Core] Fix internal children clear logic (#820)
* Fix InternalChildren clear logic * Improve InternalChildren clear logic * Add test code to verify InternalChildren clear logic * Add missing test cases * Improve time complexity of clear logic * Fix the test case where InvalidOperationException occurs. * Correct the name casing of the test case * Modify a wrong test code
Diffstat (limited to 'Xamarin.Forms.Core.UnitTests/ContentViewUnitTest.cs')
-rw-r--r--Xamarin.Forms.Core.UnitTests/ContentViewUnitTest.cs17
1 files changed, 16 insertions, 1 deletions
diff --git a/Xamarin.Forms.Core.UnitTests/ContentViewUnitTest.cs b/Xamarin.Forms.Core.UnitTests/ContentViewUnitTest.cs
index 73bb531b..5d7dd651 100644
--- a/Xamarin.Forms.Core.UnitTests/ContentViewUnitTest.cs
+++ b/Xamarin.Forms.Core.UnitTests/ContentViewUnitTest.cs
@@ -388,6 +388,21 @@ namespace Xamarin.Forms.Core.UnitTests
Assert.AreEqual ("Foo", child.BindingContext);
}
- }
+ [Test]
+ public void ContentView_should_have_the_InternalChildren_correctly_when_Content_changed()
+ {
+ var sut = new ContentView();
+ IList<Element> internalChildren = ((IControlTemplated)sut).InternalChildren;
+ internalChildren.Add(new VisualElement());
+ internalChildren.Add(new VisualElement());
+ internalChildren.Add(new VisualElement());
+
+ var expected = new View();
+ sut.Content = expected;
+
+ Assert.AreEqual(1, internalChildren.Count);
+ Assert.AreSame(expected, internalChildren[0]);
+ }
+ }
}