summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Xaml.UnitTests/ViewExtensionsTest.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Xamarin.Forms.Xaml.UnitTests/ViewExtensionsTest.cs')
-rw-r--r--Xamarin.Forms.Xaml.UnitTests/ViewExtensionsTest.cs59
1 files changed, 59 insertions, 0 deletions
diff --git a/Xamarin.Forms.Xaml.UnitTests/ViewExtensionsTest.cs b/Xamarin.Forms.Xaml.UnitTests/ViewExtensionsTest.cs
new file mode 100644
index 00000000..57c6e353
--- /dev/null
+++ b/Xamarin.Forms.Xaml.UnitTests/ViewExtensionsTest.cs
@@ -0,0 +1,59 @@
+using NUnit.Framework;
+using System;
+
+using Xamarin.Forms.Core.UnitTests;
+
+namespace Xamarin.Forms.Xaml.UnitTests
+{
+ [TestFixture]
+ public class ViewExtensionsTest : BaseTestFixture
+ {
+ [Test]
+ public void TestGetResource ()
+ {
+ var resource = new object ();
+ var view = new View {
+ Resources = new ResourceDictionary {
+ { "foo", resource }
+ },
+ };
+ var found = view.Resources ["foo"];
+ Assert.AreSame (resource, found);
+ }
+
+ [Test]
+ public void TestResourceNotFound ()
+ {
+ var view = new View ();
+ var resource = view.Resources!= null ? view.Resources ["foo"] : null;
+ Assert.Null (resource);
+ }
+
+ [Test]
+ public void TestGetResourceInParents ()
+ {
+ var resource = new object ();
+ var nestedView = new View ();
+ var stack = new StackLayout {
+ Children = {
+ new StackLayout {
+ Children = {
+ new StackLayout {
+ Children = {
+ nestedView
+ }
+ }
+ }
+ }
+ }
+ };
+ stack.Resources = new ResourceDictionary {
+ { "foo", resource }
+ };
+
+ var found = stack.Resources ["foo"];
+ Assert.AreSame (resource, found);
+ }
+ }
+}
+