diff options
author | Eric Maupin <ermaup@microsoft.com> | 2017-12-08 21:30:43 +0300 |
---|---|---|
committer | Eric Maupin <ermaup@microsoft.com> | 2017-12-08 21:30:43 +0300 |
commit | 08cd44b72836c0e5c695f6d8efd5522c65eb4bdf (patch) | |
tree | 2cf435a648719679594b37fecb78e385c2335703 /Xamarin.PropertyEditing.Tests/PanelViewModelTests.cs | |
parent | 07c0441adcaa5390f7802caffd8ca164b5fc6c0f (diff) |
[Win] Expand on filter
Diffstat (limited to 'Xamarin.PropertyEditing.Tests/PanelViewModelTests.cs')
-rw-r--r-- | Xamarin.PropertyEditing.Tests/PanelViewModelTests.cs | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Xamarin.PropertyEditing.Tests/PanelViewModelTests.cs b/Xamarin.PropertyEditing.Tests/PanelViewModelTests.cs index 89116c6..82440cd 100644 --- a/Xamarin.PropertyEditing.Tests/PanelViewModelTests.cs +++ b/Xamarin.PropertyEditing.Tests/PanelViewModelTests.cs @@ -422,6 +422,40 @@ namespace Xamarin.PropertyEditing.Tests } [Test] + public async Task PropertyListIsFiltered () + { + var provider = new ReflectionEditorProvider (); + var obj = new TestClassSub (); + var editor = await provider.GetObjectEditorAsync (obj); + Assume.That (editor.Properties.Count, Is.EqualTo (2)); + + var vm = new PanelViewModel (provider, TargetPlatform.Default); + Assume.That (vm.ArrangeMode, Is.EqualTo (PropertyArrangeMode.Name)); + vm.SelectedObjects.Add (obj); + + Assume.That (vm.ArrangedEditors, Is.Not.Empty); + Assume.That (vm.ArrangedEditors[0].Count, Is.EqualTo (2)); + + Assume.That (vm.IsFiltering, Is.False); + bool changed = false; + vm.PropertyChanged += (sender, args) => { + if (args.PropertyName == nameof(PanelViewModel.IsFiltering)) { + changed = true; + } + }; + + vm.FilterText = "sub"; + Assume.That (vm.ArrangedEditors[0].Count, Is.EqualTo (1)); + Assert.That (vm.IsFiltering, Is.True); + Assert.That (changed, Is.True); + changed = false; + + vm.FilterText = null; + Assert.That (vm.IsFiltering, Is.False); + Assert.That (changed, Is.True); + } + + [Test] [Description ("When filtered Text is cleared then list is restored back to its original.")] public async Task PropertyListFilteredTextClearedRestoresList () { |