Add repro for 52533
authorSamantha Houts <samantha.houts@xamarin.com>
Sat, 18 Feb 2017 00:11:04 +0000 (16:11 -0800)
committerRui Marinho <me@ruimarinho.net>
Fri, 10 Mar 2017 14:44:19 +0000 (14:44 +0000)
Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla52533.cs [new file with mode: 0644]
Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Xamarin.Forms.Controls.Issues.Shared.projitems

diff --git a/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla52533.cs b/Xamarin.Forms.Controls.Issues/Xamarin.Forms.Controls.Issues.Shared/Bugzilla52533.cs
new file mode 100644 (file)
index 0000000..c7c31fc
--- /dev/null
@@ -0,0 +1,64 @@
+using Xamarin.Forms.CustomAttributes;
+using Xamarin.Forms.Internals;
+using System.Linq;
+
+#if UITEST
+using Xamarin.UITest;
+using NUnit.Framework;
+#endif
+
+// Apply the default category of "Issues" to all of the tests in this assembly
+// We use this as a catch-all for tests which haven't been individually categorized
+#if UITEST
+[assembly: NUnit.Framework.Category("Issues")]
+#endif
+
+namespace Xamarin.Forms.Controls.Issues
+{
+       [Preserve(AllMembers = true)]
+       [Issue(IssueTracker.Bugzilla, 52533, "System.ArgumentException: NaN is not a valid value for width", PlatformAffected.iOS)]
+       public class Bugzilla52533 : TestContentPage
+       {
+               const string LabelId = "label";
+
+               protected override void Init()
+               {
+                       Content = new ListView { ItemTemplate = new DataTemplate(typeof(GridViewCell)), ItemsSource = Enumerable.Range(0, 10) };
+               }
+
+               [Preserve(AllMembers = true)]
+               class GridViewCell : ViewCell
+               {
+
+                       public GridViewCell()
+                       {
+                               var grid = new Grid
+                               {
+                                       // Multiple rows
+                                       RowDefinitions = {
+                                               new RowDefinition { Height = new GridLength(20, GridUnitType.Absolute) },
+                                               new RowDefinition { Height = new GridLength(150, GridUnitType.Absolute) }
+                                       },
+                                       // Dynamic width
+                                       ColumnDefinitions = {
+                                               new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) }
+                                       }
+                               };
+
+                               // Infinitely wide + Label
+                               var horStack = new StackLayout { Orientation = StackOrientation.Horizontal, Children = { new Label { Text = "If this does not crash, this test has passed.", AutomationId = LabelId } } };
+                               grid.Children.Add(horStack, 0, 0);
+
+                               View = grid;
+                       }
+               }
+
+#if UITEST
+               [Test]
+               public void Bugzilla52533Test()
+               {
+                       RunningApp.WaitForElement(q => q.Marked(LabelId));
+               }
+#endif
+       }
+}
index 8d90656..411c09d 100644 (file)
     <Compile Include="$(MSBuildThisFileDirectory)Bugzilla44777.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Bugzilla51503.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Bugzilla51505.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)Bugzilla52533.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)_Template.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Issue1028.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)Issue1075.cs" />