diff options
author | Jason Smith <jason.smith@xamarin.com> | 2016-03-22 13:02:25 -0700 |
---|---|---|
committer | Jason Smith <jason.smith@xamarin.com> | 2016-03-22 16:13:41 -0700 |
commit | 17fdde66d94155fc62a034fa6658995bef6fd6e5 (patch) | |
tree | b5e5073a2a7b15cdbe826faa5c763e270a505729 /Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla32615.cs | |
download | xamarin-forms-17fdde66d94155fc62a034fa6658995bef6fd6e5.tar.gz xamarin-forms-17fdde66d94155fc62a034fa6658995bef6fd6e5.tar.bz2 xamarin-forms-17fdde66d94155fc62a034fa6658995bef6fd6e5.zip |
Initial import
Diffstat (limited to 'Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla32615.cs')
-rw-r--r-- | Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla32615.cs | 70 |
1 files changed, 70 insertions, 0 deletions
diff --git a/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla32615.cs b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla32615.cs new file mode 100644 index 00000000..405133e0 --- /dev/null +++ b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla32615.cs @@ -0,0 +1,70 @@ +using System; + +using Xamarin.Forms.CustomAttributes; +using System.Threading.Tasks; + +#if UITEST +using Xamarin.UITest; +using NUnit.Framework; +#endif + +namespace Xamarin.Forms.Controls +{ + [Preserve (AllMembers = true)] + [Issue (IssueTracker.Bugzilla, 32615, "OnAppearing is not called on previous page when modal page is popped")] + public class Bugzilla32615 : TestContentPage // or TestMasterDetailPage, etc ... + { + int _counter; + Label _textField; + protected override void Init () + { + var btnModal = new Button { AutomationId = "btnModal", Text = "open", HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; + btnModal.Clicked += async (sender, e) => await Navigation.PushModalAsync (new Bugzilla32615Page2 ()); + _textField = new Label { AutomationId = "lblCount"}; + var layout = new StackLayout (); + layout.Children.Add (btnModal); + layout.Children.Add (_textField); + // Initialize ui here instead of ctor + Content = layout; + } + + protected override void OnAppearing() + { + _textField.Text = _counter++.ToString(); + } + + class Bugzilla32615Page2 : ContentPage + { + public Bugzilla32615Page2 () + { + var btnPop = new Button { AutomationId = "btnPop", Text = "pop", HorizontalOptions = LayoutOptions.FillAndExpand, VerticalOptions = LayoutOptions.FillAndExpand }; + btnPop.Clicked += async (sender, e) => await Navigation.PopModalAsync (); + Content = btnPop; + } + + protected override void OnDisappearing () + { + System.Diagnostics.Debug.WriteLine ("Disappearing Modal"); + base.OnDisappearing (); + } + + protected override void OnAppearing () + { + System.Diagnostics.Debug.WriteLine ("Appearing Modal"); + base.OnAppearing (); + } + } + +#if UITEST + [Test] + public async void Bugzilla32615Test () + { + RunningApp.Tap (q => q.Marked ("btnModal")); + RunningApp.Tap (q => q.Marked ("btnPop")); + await Task.Delay (1000); + var lbl = RunningApp.WaitForElement (c => c.Marked("lblCount")); + Assert.AreEqual ("1", lbl [0].Text); + } +#endif + } +} |