diff options
Diffstat (limited to 'Xamarin.Forms.Xaml.UnitTests/ViewExtensionsTest.cs')
-rw-r--r-- | Xamarin.Forms.Xaml.UnitTests/ViewExtensionsTest.cs | 59 |
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); + } + } +} + |