summaryrefslogtreecommitdiff
path: root/Xamarin.Forms.Core.UnitTests/PickerTests.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Xamarin.Forms.Core.UnitTests/PickerTests.cs')
-rw-r--r--Xamarin.Forms.Core.UnitTests/PickerTests.cs59
1 files changed, 59 insertions, 0 deletions
diff --git a/Xamarin.Forms.Core.UnitTests/PickerTests.cs b/Xamarin.Forms.Core.UnitTests/PickerTests.cs
new file mode 100644
index 00000000..859f9025
--- /dev/null
+++ b/Xamarin.Forms.Core.UnitTests/PickerTests.cs
@@ -0,0 +1,59 @@
+using System;
+
+using NUnit.Framework;
+using System.Collections.Generic;
+
+namespace Xamarin.Forms.Core.UnitTests
+{
+ [TestFixture]
+ public class PickerTests : BaseTestFixture
+ {
+ [Test]
+ public void TestSetSelectedIndexOnNullRows()
+ {
+ var picker = new Picker ();
+
+ Assert.IsEmpty (picker.Items);
+ Assert.AreEqual (-1, picker.SelectedIndex);
+
+ picker.SelectedIndex = 2;
+
+ Assert.AreEqual (-1, picker.SelectedIndex);
+ }
+
+ [Test]
+ public void TestSelectedIndexInRange ()
+ {
+ var picker = new Picker { Items = { "John", "Paul", "George", "Ringo" } };
+
+ picker.SelectedIndex = 2;
+ Assert.AreEqual (2, picker.SelectedIndex);
+
+ picker.SelectedIndex = 42;
+ Assert.AreEqual (3, picker.SelectedIndex);
+
+ picker.SelectedIndex = -1;
+ Assert.AreEqual (-1, picker.SelectedIndex);
+
+ picker.SelectedIndex = -42;
+ Assert.AreEqual (-1, picker.SelectedIndex);
+ }
+
+ [Test]
+ public void TestSelectedIndexChangedOnCollectionShrink()
+ {
+ var picker = new Picker { Items = { "John", "Paul", "George", "Ringo" }, SelectedIndex = 3 };
+
+ Assert.AreEqual (3, picker.SelectedIndex);
+
+ picker.Items.RemoveAt (3);
+ picker.Items.RemoveAt (2);
+
+
+ Assert.AreEqual (1, picker.SelectedIndex);
+
+ picker.Items.Clear ();
+ Assert.AreEqual (-1, picker.SelectedIndex);
+ }
+ }
+}