diff options
author | Jonathan Peppers <jonathan.peppers@gmail.com> | 2016-08-30 12:59:32 -0500 |
---|---|---|
committer | Jason Smith <jason.smith@xamarin.com> | 2016-08-30 10:59:32 -0700 |
commit | 0bc22bda64afedbca09416cdccc77ce4ddbe522d (patch) | |
tree | edb80d62df02eb983344c39f3c98d4320a5e4481 /Xamarin.Forms.Core.UnitTests | |
parent | 974705b9a920e71ecaa9f5e0d58cf6d80a1d71cf (diff) | |
download | xamarin-forms-0bc22bda64afedbca09416cdccc77ce4ddbe522d.tar.gz xamarin-forms-0bc22bda64afedbca09416cdccc77ce4ddbe522d.tar.bz2 xamarin-forms-0bc22bda64afedbca09416cdccc77ce4ddbe522d.zip |
Fix for ListView BindingContext for Header/Footer (#312)
* ListView - unit test showing BindingContext issue
Apparently the BC doesn't pass to Header and Footer
* ListView - support for passing BC to header and footer
* ListView - test checking BindingContext is set
Checking that it works to set the BindingContext first and the
Header/Footer after
Diffstat (limited to 'Xamarin.Forms.Core.UnitTests')
-rw-r--r-- | Xamarin.Forms.Core.UnitTests/ListViewTests.cs | 37 |
1 files changed, 37 insertions, 0 deletions
diff --git a/Xamarin.Forms.Core.UnitTests/ListViewTests.cs b/Xamarin.Forms.Core.UnitTests/ListViewTests.cs index d5672f77..b373696a 100644 --- a/Xamarin.Forms.Core.UnitTests/ListViewTests.cs +++ b/Xamarin.Forms.Core.UnitTests/ListViewTests.cs @@ -87,6 +87,43 @@ namespace Xamarin.Forms.Core.UnitTests } [Test] + [Description("Setting BindingContext should trickle down to Header and Footer.")] + public void SettingBindingContextPassesToHeaderAndFooter() + { + var bc = new object(); + var header = new BoxView(); + var footer = new BoxView(); + var listView = new ListView + { + Header = header, + Footer = footer, + BindingContext = bc, + }; + + Assert.That(header.BindingContext, Is.SameAs(bc)); + Assert.That(footer.BindingContext, Is.SameAs(bc)); + } + + [Test] + [Description("Setting Header and Footer should pass BindingContext.")] + public void SettingHeaderFooterPassesBindingContext() + { + var bc = new object(); + var listView = new ListView + { + BindingContext = bc, + }; + + var header = new BoxView(); + var footer = new BoxView(); + listView.Footer = footer; + listView.Header = header; + + Assert.That(header.BindingContext, Is.SameAs(bc)); + Assert.That(footer.BindingContext, Is.SameAs(bc)); + } + + [Test] [Description ("Setting GroupDisplayBinding or GroupHeaderTemplate when the other is set should set the other one to null.")] public void SettingGroupHeaderTemplateSetsDisplayBindingToNull() { |