public void SelectedValue2() { Form f = new Form(); f.ShowInTaskbar = false; ListControlChild child = new ListControlChild(); ArrayList list = new ArrayList(); list.Add(new MockItem("A", 0)); list.Add(new MockItem("B", 1)); list.Add(new MockItem("C", 2)); child.DataSource = list; child.ValueMember = "Text"; MockItem item = new MockItem(String.Empty, 0); child.DataBindings.Add("SelectedValue", item, "Text"); Assert.AreEqual(-1, child.SelectedIndex, "#A1"); f.Controls.Add(child); Assert.AreEqual(-1, child.SelectedIndex, "#B1"); // When the form is shown, normally the SelectedIndex is the // CurrencyManager.Position (0 in this case), but it should remain as -1 // since SelectedValue is bound to a String.Empty value. See #324286 f.Show(); CurrencyManager manager = (CurrencyManager)f.BindingContext [list]; Assert.AreEqual(-1, child.SelectedIndex, "#C1"); Assert.AreEqual(0, manager.Position, "#C2"); f.Dispose(); }
[Test] // bug #81771 public void DataSource_BindingList2() { BindingList <string> list1 = new BindingList <string> (); list1.Add("item 1"); BindingList <string> list2 = new BindingList <string> (); ListControlChild lc = new ListControlChild(); lc.DataSourceChanged += new EventHandler(ListControl_DataSourceChanged); Form form = new Form(); form.Controls.Add(lc); Assert.AreEqual(0, dataSourceChanged, "#1"); Assert.IsNull(lc.DataSource, "#2"); lc.DataSource = list1; Assert.AreEqual(1, dataSourceChanged, "#3"); Assert.AreSame(list1, lc.DataSource, "#4"); lc.DataSource = list2; Assert.AreEqual(2, dataSourceChanged, "#5"); Assert.AreSame(list2, lc.DataSource, "#6"); lc.DataSource = null; Assert.AreEqual(3, dataSourceChanged, "#7"); Assert.IsNull(lc.DataSource, "#8"); list1.Add("item"); list1.Clear(); form.Dispose(); }
public void DisplayMemberNullTest() { ListControlChild lc = new ListControlChild(); lc.DisplayMember = null; Assert.AreEqual(String.Empty, lc.DisplayMember, "#1"); }
public void BehaviorFormatting() { ListControl lc = new ListControlChild(); DateTime dt = new DateTime(1, 2, 3, 4, 5, 6); Assert.AreEqual(false, lc.FormattingEnabled, "A1"); Assert.AreEqual(null, lc.FormatInfo, "A2"); Assert.AreEqual(string.Empty, lc.FormatString, "A3"); Assert.AreEqual(dt.ToString(), lc.GetItemText(dt), "A4"); lc.FormattingEnabled = true; lc.FormatString = "MM/dd"; Assert.AreEqual("02/03", lc.GetItemText(dt), "A5"); lc.Format += new ListControlConvertEventHandler(lc_Format); Assert.AreEqual("Monkey!", lc.GetItemText(dt), "A6"); }
public void SelectedValue() { Form f = new Form(); f.ShowInTaskbar = false; ListControlChild lc = new ListControlChild(); f.Controls.Add(lc); ArrayList list = new ArrayList(); list.Add(new MockItem("TextA", 1)); list.Add(new MockItem(String.Empty, 4)); list.Add(new MockItem("TextC", 9)); lc.ValueMember = "Text"; lc.DataSource = list; f.Show(); lc.SelectedValue = "TextC"; Assert.AreEqual(2, lc.SelectedIndex, "#B1"); Assert.AreEqual("TextC", lc.SelectedValue, "#B2"); lc.SelectedValue = String.Empty; Assert.AreEqual(1, lc.SelectedIndex, "#C1"); Assert.AreEqual(String.Empty, lc.SelectedValue, "#C2"); lc.SelectedValue = "TextA"; Assert.AreEqual(0, lc.SelectedIndex, "#D1"); Assert.AreEqual("TextA", lc.SelectedValue, "#D2"); try { lc.SelectedValue = null; Assert.Fail("#E1"); } catch (ArgumentNullException) { } f.Dispose(); }
public void FormattingChanges() { bool refresh_items_called = false; ListControlChild lc = new ListControlChild(); lc.RefreshingItems += delegate { refresh_items_called = true; }; lc.FormattingEnabled = !lc.FormattingEnabled; Assert.AreEqual(true, refresh_items_called, "A1"); refresh_items_called = false; lc.FormatInfo = CultureInfo.CurrentCulture; Assert.AreEqual(true, refresh_items_called, "B1"); refresh_items_called = false; lc.FormatString = CultureInfo.CurrentCulture.NumberFormat.ToString(); Assert.AreEqual(true, refresh_items_called, "C1"); }
public void DataSource1() { ArrayList list1 = new ArrayList(); list1.Add("item 1"); ArrayList list2 = new ArrayList(); ListControlChild lc = new ListControlChild(); lc.DataSourceChanged += new EventHandler(ListControl_DataSourceChanged); lc.DataSource = list1; Assert.AreEqual(1, dataSourceChanged, "#A1"); Assert.AreSame(list1, lc.DataSource, "#A2"); Form form = new Form(); form.Controls.Add(lc); Assert.AreEqual(1, dataSourceChanged, "#B1"); Assert.AreSame(list1, lc.DataSource, "#B2"); lc.DataSource = list1; Assert.AreEqual(1, dataSourceChanged, "#B3"); Assert.AreSame(list1, lc.DataSource, "#B4"); lc.DataSource = list2; Assert.AreEqual(2, dataSourceChanged, "#B5"); Assert.AreSame(list2, lc.DataSource, "#B6"); lc.DataSource = null; Assert.AreEqual(3, dataSourceChanged, "#B7"); Assert.IsNull(lc.DataSource, "#B8"); list1.Add("whatever"); list2.Add("whatever"); list1.Clear(); list2.Clear(); form.Dispose(); }
public void GetItemText() { MockItem itemA = new MockItem("A", 1); MockItem itemB = new MockItem("B", 2); object itemC = new object(); ListControlChild lc = new ListControlChild(); lc.DisplayMember = "Text"; // No DataSource available Assert.AreEqual("A", lc.GetItemText(itemA), "#A1"); Assert.AreEqual("B", lc.GetItemText(itemB), "#A2"); Assert.AreEqual(itemC.GetType().FullName, lc.GetItemText(itemC), "#A3"); lc.DisplayMember = String.Empty; Assert.AreEqual(itemA.GetType().FullName, lc.GetItemText(itemA), "#B1"); Assert.AreEqual(itemB.GetType().FullName, lc.GetItemText(itemB), "#B2"); Assert.AreEqual(itemC.GetType().FullName, lc.GetItemText(itemC), "#B3"); // DataSource available object [] objects = new object [] { itemA, itemB, itemC }; lc.DisplayMember = "Text"; lc.DataSource = objects; Assert.AreEqual("A", lc.GetItemText(itemA), "#C1"); Assert.AreEqual("B", lc.GetItemText(itemB), "#C2"); Assert.AreEqual(itemC.GetType().FullName, lc.GetItemText(itemC), "#C3"); lc.DisplayMember = String.Empty; Assert.AreEqual(itemA.GetType().FullName, lc.GetItemText(itemA), "#D1"); Assert.AreEqual(itemB.GetType().FullName, lc.GetItemText(itemB), "#D2"); Assert.AreEqual(itemC.GetType().FullName, lc.GetItemText(itemC), "#D3"); }
public void FilterItemOnProperty() { MockItem itemA = new MockItem("A", 1); MockItem itemB = new MockItem("B", 2); object itemC = new object(); ListControlChild lc = new ListControlChild(); lc.DisplayMember = "Text"; // No DataSource available Assert.AreEqual("A", lc.FilterItem(itemA, lc.DisplayMember), "#A1"); Assert.AreEqual("B", lc.FilterItem(itemB, lc.DisplayMember), "#A2"); Assert.AreEqual(itemC, lc.FilterItem(itemC, lc.DisplayMember), "#A3"); lc.DisplayMember = String.Empty; Assert.AreEqual(itemA, lc.FilterItem(itemA, lc.DisplayMember), "#B1"); Assert.AreEqual(itemB, lc.FilterItem(itemB, lc.DisplayMember), "#B2"); Assert.AreEqual(itemC, lc.FilterItem(itemC, lc.DisplayMember), "#B3"); // DataSource available object [] objects = new object [] { itemA, itemB, itemC }; lc.DisplayMember = "Text"; lc.DataSource = objects; Assert.AreEqual("A", lc.FilterItem(itemA, lc.DisplayMember), "#C1"); Assert.AreEqual("B", lc.FilterItem(itemB, lc.DisplayMember), "#C2"); Assert.AreEqual(itemC, lc.FilterItem(itemC, lc.DisplayMember), "#C3"); lc.DisplayMember = String.Empty; Assert.AreEqual(itemA, lc.FilterItem(itemA, lc.DisplayMember), "#D1"); Assert.AreEqual(itemB, lc.FilterItem(itemB, lc.DisplayMember), "#D2"); Assert.AreEqual(itemC, lc.FilterItem(itemC, lc.DisplayMember), "#D3"); }
public void GetItemText () { MockItem itemA = new MockItem ("A", 1); MockItem itemB = new MockItem ("B", 2); object itemC = new object (); ListControlChild lc = new ListControlChild (); lc.DisplayMember = "Text"; // No DataSource available Assert.AreEqual ("A", lc.GetItemText (itemA), "#A1"); Assert.AreEqual ("B", lc.GetItemText (itemB), "#A2"); Assert.AreEqual (itemC.GetType ().FullName, lc.GetItemText (itemC), "#A3"); lc.DisplayMember = String.Empty; Assert.AreEqual (itemA.GetType ().FullName, lc.GetItemText (itemA), "#B1"); Assert.AreEqual (itemB.GetType ().FullName, lc.GetItemText (itemB), "#B2"); Assert.AreEqual (itemC.GetType ().FullName, lc.GetItemText (itemC), "#B3"); // DataSource available object [] objects = new object [] {itemA, itemB, itemC}; lc.DisplayMember = "Text"; lc.DataSource = objects; Assert.AreEqual ("A", lc.GetItemText (itemA), "#C1"); Assert.AreEqual ("B", lc.GetItemText (itemB), "#C2"); Assert.AreEqual (itemC.GetType ().FullName, lc.GetItemText (itemC), "#C3"); lc.DisplayMember = String.Empty; Assert.AreEqual (itemA.GetType ().FullName, lc.GetItemText (itemA), "#D1"); Assert.AreEqual (itemB.GetType ().FullName, lc.GetItemText (itemB), "#D2"); Assert.AreEqual (itemC.GetType ().FullName, lc.GetItemText (itemC), "#D3"); }
public void DisplayMemberNullTest () { ListControlChild lc = new ListControlChild (); lc.DisplayMember = null; Assert.AreEqual (String.Empty, lc.DisplayMember, "#1"); }
public void DataSourceWrongArgumentType () { ListControlChild lc = new ListControlChild (); lc.DataSource = new object (); }
public void AllowSelection() { ListControlChild lc = new ListControlChild(); Assert.IsTrue(lc.allow_selection); }
public void DataSource1 () { ArrayList list1 = new ArrayList (); list1.Add ("item 1"); ArrayList list2 = new ArrayList (); ListControlChild lc = new ListControlChild (); lc.DataSourceChanged += new EventHandler (ListControl_DataSourceChanged); lc.DataSource = list1; Assert.AreEqual (1, dataSourceChanged, "#A1"); Assert.AreSame (list1, lc.DataSource, "#A2"); Form form = new Form (); form.Controls.Add (lc); Assert.AreEqual (1, dataSourceChanged, "#B1"); Assert.AreSame (list1, lc.DataSource, "#B2"); lc.DataSource = list1; Assert.AreEqual (1, dataSourceChanged, "#B3"); Assert.AreSame (list1, lc.DataSource, "#B4"); lc.DataSource = list2; Assert.AreEqual (2, dataSourceChanged, "#B5"); Assert.AreSame (list2, lc.DataSource, "#B6"); lc.DataSource = null; Assert.AreEqual (3, dataSourceChanged, "#B7"); Assert.IsNull (lc.DataSource, "#B8"); list1.Add ("whatever"); list2.Add ("whatever"); list1.Clear (); list2.Clear (); form.Dispose (); }
public void SelectedValue () { Form f = new Form (); f.ShowInTaskbar = false; ListControlChild lc = new ListControlChild (); f.Controls.Add (lc); ArrayList list = new ArrayList (); list.Add (new MockItem ("TextA", 1)); list.Add (new MockItem (String.Empty, 4)); list.Add (new MockItem ("TextC", 9)); lc.ValueMember = "Text"; lc.DataSource = list; f.Show (); lc.SelectedValue = "TextC"; Assert.AreEqual (2, lc.SelectedIndex, "#B1"); Assert.AreEqual ("TextC", lc.SelectedValue, "#B2"); lc.SelectedValue = String.Empty; Assert.AreEqual (1, lc.SelectedIndex, "#C1"); Assert.AreEqual (String.Empty, lc.SelectedValue, "#C2"); lc.SelectedValue = "TextA"; Assert.AreEqual (0, lc.SelectedIndex, "#D1"); Assert.AreEqual ("TextA", lc.SelectedValue, "#D2"); try { lc.SelectedValue = null; Assert.Fail ("#E1"); } catch (ArgumentNullException) { } f.Dispose (); }
public void SelectedValue2 () { Form f = new Form (); f.ShowInTaskbar = false; ListControlChild child = new ListControlChild (); ArrayList list = new ArrayList (); list.Add (new MockItem ("A", 0)); list.Add (new MockItem ("B", 1)); list.Add (new MockItem ("C", 2)); child.DataSource = list; child.ValueMember = "Text"; MockItem item = new MockItem (String.Empty, 0); child.DataBindings.Add ("SelectedValue", item, "Text"); Assert.AreEqual (-1, child.SelectedIndex, "#A1"); f.Controls.Add (child); Assert.AreEqual (-1, child.SelectedIndex, "#B1"); // When the form is shown, normally the SelectedIndex is the // CurrencyManager.Position (0 in this case), but it should remain as -1 // since SelectedValue is bound to a String.Empty value. See #324286 f.Show (); CurrencyManager manager = (CurrencyManager)f.BindingContext [list]; Assert.AreEqual (-1, child.SelectedIndex, "#C1"); Assert.AreEqual (0, manager.Position, "#C2"); f.Dispose (); }
public void DataSourceWrongArgumentType() { ListControlChild lc = new ListControlChild(); lc.DataSource = new object(); }
[Test] // bug #81771 public void DataSource_BindingList2 () { BindingList<string> list1 = new BindingList<string> (); list1.Add ("item 1"); BindingList<string> list2 = new BindingList<string> (); ListControlChild lc = new ListControlChild (); lc.DataSourceChanged += new EventHandler (ListControl_DataSourceChanged); Form form = new Form (); form.Controls.Add (lc); Assert.AreEqual (0, dataSourceChanged, "#1"); Assert.IsNull (lc.DataSource, "#2"); lc.DataSource = list1; Assert.AreEqual (1, dataSourceChanged, "#3"); Assert.AreSame (list1, lc.DataSource, "#4"); lc.DataSource = list2; Assert.AreEqual (2, dataSourceChanged, "#5"); Assert.AreSame (list2, lc.DataSource, "#6"); lc.DataSource = null; Assert.AreEqual (3, dataSourceChanged, "#7"); Assert.IsNull (lc.DataSource, "#8"); list1.Add ("item"); list1.Clear (); form.Dispose (); }
public void FilterItemOnProperty () { MockItem itemA = new MockItem ("A", 1); MockItem itemB = new MockItem ("B", 2); object itemC = new object (); ListControlChild lc = new ListControlChild (); lc.DisplayMember = "Text"; // No DataSource available Assert.AreEqual ("A", lc.FilterItem (itemA, lc.DisplayMember), "#A1"); Assert.AreEqual ("B", lc.FilterItem (itemB, lc.DisplayMember), "#A2"); Assert.AreEqual (itemC, lc.FilterItem (itemC, lc.DisplayMember), "#A3"); lc.DisplayMember = String.Empty; Assert.AreEqual (itemA, lc.FilterItem (itemA, lc.DisplayMember), "#B1"); Assert.AreEqual (itemB, lc.FilterItem (itemB, lc.DisplayMember), "#B2"); Assert.AreEqual (itemC, lc.FilterItem (itemC, lc.DisplayMember), "#B3"); // DataSource available object [] objects = new object [] {itemA, itemB, itemC}; lc.DisplayMember = "Text"; lc.DataSource = objects; Assert.AreEqual ("A", lc.FilterItem (itemA, lc.DisplayMember), "#C1"); Assert.AreEqual ("B", lc.FilterItem (itemB, lc.DisplayMember), "#C2"); Assert.AreEqual (itemC, lc.FilterItem (itemC, lc.DisplayMember), "#C3"); lc.DisplayMember = String.Empty; Assert.AreEqual (itemA, lc.FilterItem (itemA, lc.DisplayMember), "#D1"); Assert.AreEqual (itemB, lc.FilterItem (itemB, lc.DisplayMember), "#D2"); Assert.AreEqual (itemC, lc.FilterItem (itemC, lc.DisplayMember), "#D3"); }
public void FormattingChanges () { bool refresh_items_called = false; ListControlChild lc = new ListControlChild (); lc.RefreshingItems += delegate { refresh_items_called = true; }; lc.FormattingEnabled = !lc.FormattingEnabled; Assert.AreEqual (true, refresh_items_called, "A1"); refresh_items_called = false; lc.FormatInfo = CultureInfo.CurrentCulture; Assert.AreEqual (true, refresh_items_called, "B1"); refresh_items_called = false; lc.FormatString = CultureInfo.CurrentCulture.NumberFormat.ToString (); Assert.AreEqual (true, refresh_items_called, "C1"); }
public void BehaviorFormatting () { ListControl lc = new ListControlChild (); DateTime dt = new DateTime (1, 2, 3, 4, 5, 6); Assert.AreEqual (false, lc.FormattingEnabled, "A1"); Assert.AreEqual (null, lc.FormatInfo, "A2"); Assert.AreEqual (string.Empty, lc.FormatString, "A3"); Assert.AreEqual (dt.ToString (), lc.GetItemText (dt), "A4"); lc.FormattingEnabled = true; lc.FormatString = "MM/dd"; Assert.AreEqual ("02/03", lc.GetItemText (dt), "A5"); lc.Format += new ListControlConvertEventHandler (lc_Format); Assert.AreEqual ("Monkey!", lc.GetItemText (dt), "A6"); }
public void AllowSelection () { ListControlChild lc = new ListControlChild (); Assert.IsTrue (lc.allow_selection); }