public void TestConstructor() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56000, new DateTime(2002, 5, 6))); Assert.AreEqual(1, myList.Count); }
public void TestParseFilterDateForValueGreaterThan() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); SingleFilterInfo info = myList.ParseFilter("AddedDate > 5/6/2002"); Assert.AreEqual("AddedDate", info.PropName); Assert.AreEqual(FilterOperator.GreaterThan, info.OperatorValue); Assert.AreEqual(new DateTime(2002, 5, 6), info.CompareValue); }
public void TestParseFilterFloatForValueEqual() { MyFilteredBindingList <Font> myList = new MyFilteredBindingList <Font>(); SingleFilterInfo info = myList.ParseFilter("Size = 3"); Assert.AreEqual("Size", info.PropName); Assert.AreEqual(FilterOperator.EqualTo, info.OperatorValue); Assert.AreEqual(3.0F, info.CompareValue); }
public void TestParseFilterLongDateString() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); SingleFilterInfo info = myList.ParseFilter("AddedDate = 5/6/2002 12:00:00 AM"); Assert.AreEqual("AddedDate", info.PropName); Assert.AreEqual(FilterOperator.EqualTo, info.OperatorValue); Assert.AreEqual(new DateTime(2002, 5, 6), info.CompareValue); }
public void TestParseFilterIntForValueLessThan() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); SingleFilterInfo info = myList.ParseFilter("StockNo < 3"); Assert.AreEqual("StockNo", info.PropName); Assert.AreEqual(FilterOperator.LessThan, info.OperatorValue); Assert.AreEqual(3, info.CompareValue); }
public void TestParseFilterStringForValueEqualQuotes() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); SingleFilterInfo info = myList.ParseFilter("Category = 'Something'"); Assert.AreEqual("Category", info.PropName); Assert.AreEqual(FilterOperator.EqualTo, info.OperatorValue); Assert.AreEqual("Something", info.CompareValue); }
public void TestDetermineFilterOperator() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); Assert.AreEqual(FilterOperator.EqualTo, myList.DetermineFilterOperator("MyList='SomeStuff'")); Assert.AreEqual(FilterOperator.GreaterThan, myList.DetermineFilterOperator("MyList>'SomeStuff'")); Assert.AreEqual(FilterOperator.LessThan, myList.DetermineFilterOperator("MyList<'SomeStuff'")); Assert.AreEqual(FilterOperator.None, myList.DetermineFilterOperator("MyList<>'SomeStuff'")); }
public void TestFilterRegularExpressionLongDate() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56000, new DateTime(2003, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2004, 5, 6))); myList.Add(new Product("Aker's", "Jumper", 58000, new DateTime(2002, 5, 6))); myList.Filter = "AddedDate = '5/6/2003 12:00:00 AM'"; Assert.AreEqual(1, myList.Count); }
public void TestFilterEmptyString() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "TickTock", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Filter = ""; Assert.AreEqual(4, myList.Count); }
public void TestFilterWithApostrophe() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56100, new DateTime(2003, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56200, new DateTime(2004, 5, 6))); myList.Add(new Product("Games", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.ApplySort("Category", System.ComponentModel.ListSortDirection.Ascending); myList.Filter = "[Category]= Games'"; Assert.AreEqual(0, myList.Count); }
public void TestFilterRegularExpressionApostrophe() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56000, new DateTime(2003, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2004, 5, 6))); myList.Add(new Product("Aker's", "Jumper", 58000, new DateTime(2002, 5, 6))); myList.ApplySort("Category", System.ComponentModel.ListSortDirection.Ascending); myList.Filter = "Category = 'Aker\'s'"; Assert.AreEqual(1, myList.Count); }
public void TestFilterMultiColumn() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56200, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "TickTock", 56100, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "Cherry", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Candles", "Cherry", 56000, new DateTime(2002, 5, 6))); myList.Filter = "Category='Candles' AND ProductName = 'Cherry'"; Assert.AreEqual(1, myList.Count); Assert.AreEqual(4, myList.OriginalList.Count); }
public void TestFilterWithFonts() { MyFilteredBindingList <Font> myList = new MyFilteredBindingList <Font>(); myList.Add(new Font("Arial", 20F)); myList.Add(new Font("Courier", 18F)); myList.Add(new Font("Verdana", 14F)); myList.Add(new Font("Times New Roman", 13F)); myList.Filter = "[Size]<'15'"; Assert.AreEqual(2, myList.Count); Assert.AreEqual(4, myList.OriginalList.Count); }
public void TestFilterDateTime() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56000, new DateTime(2003, 5, 6))); myList.Add(new Product("Games", "TickTock", 56200, new DateTime(2006, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2004, 5, 6))); myList.Add(new Product("Games", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Filter = "[AddedDate]<'5/6/2005'"; Assert.AreEqual(3, myList.Count); Assert.AreEqual(4, myList.OriginalList.Count); }
public void TestFilteringInt() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 54000, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "TickTock", 53000, new DateTime(2002, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 46000, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "Jumper", 36000, new DateTime(2002, 5, 6))); myList.Filter = "[StockNo]>'50000'"; Assert.AreEqual(2, myList.Count); Assert.AreEqual(4, myList.OriginalList.Count); }
public void TestFilterStringLessThan() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "TickTock", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Filter = "Category <'Gaf'"; Assert.AreEqual(2, myList.Count); Assert.AreEqual(4, myList.OriginalList.Count); }
public void TestFilterRegularExpressionPass() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56100, new DateTime(2003, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56200, new DateTime(2004, 5, 6))); myList.Add(new Product("Games'", "Jumper", 58000, new DateTime(2002, 5, 6))); myList.ApplySort("Category", System.ComponentModel.ListSortDirection.Ascending); myList.Filter = "[Category]= 'Games'"; myList.Filter = "StockNo < 50000"; myList.Filter = "StockNo < 50000"; myList.Filter = "AddedDate = '5/01/2004'"; }
public void TestFilterAddNewItem() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56100, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "TickTock", 56200, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "Cherry", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Candles", "Cherry", 56000, new DateTime(2002, 5, 6))); myList.Filter = "Category='Candles'"; myList.Add(new Product("Candles", "Bayberry", 54000, new DateTime(2005, 4, 6))); Assert.AreEqual(2, myList.Count); Assert.AreEqual(5, myList.OriginalList.Count); }
public void TestApplyFilterStringEquals() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "TickTock", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "Jumper", 56000, new DateTime(2002, 5, 6))); SingleFilterInfo info = myList.ParseFilter("Category = 'Gadgets'"); myList.ApplyFilter(info); Assert.AreEqual(myList.Count, 2); }
public void TestFilterRemoveFilter() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56100, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "TickTock", 56200, new DateTime(2002, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Filter = "[Category]='Games'"; Assert.AreEqual(2, myList.Count); myList.RemoveFilter(); Assert.AreEqual(4, myList.Count); }
public void TestSortAndFilterAddNewItem() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56100, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "TickTock", 56200, new DateTime(2002, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Candles", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Filter = "Category='Candles'"; myList.Add(new Product("Candles", "Zoe", 54000, new DateTime(2005, 4, 6))); myList.ApplySort("ProductName", System.ComponentModel.ListSortDirection.Ascending); Assert.AreEqual(2, myList.Count); Assert.AreEqual(5, myList.OriginalList.Count); }
public void TestSortAndFilter() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56100, new DateTime(2003, 5, 6))); myList.Add(new Product("Games", "TickTock", 56200, new DateTime(2006, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2004, 5, 6))); myList.Add(new Product("Games", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.ApplySort("Category", System.ComponentModel.ListSortDirection.Ascending); myList.Filter = "[Category]='Games'"; myList.ApplySort("ProductName", System.ComponentModel.ListSortDirection.Ascending); Assert.AreEqual(2, myList.Count); Assert.AreEqual("Jumper", myList[0].ProductName); }
public void TestFilteringMultiColumnToSingleColumnDGVBehavior() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56200, new DateTime(2002, 5, 6))); myList.Add(new Product("Games", "TickTock", 56100, new DateTime(2002, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Add(new Product("Candles", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Filter = "Category='Candles' AND ProductName = 'Jumper'"; Assert.AreEqual(1, myList.Count); Assert.AreEqual(4, myList.OriginalList.Count); myList.Filter = "ProductName = 'Jumper'"; myList.RemoveFilter(); Assert.AreEqual(4, myList.Count); }
public void TestStripOffQuotes() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); MyFilteredBindingList <Product> .StripOffQuotes("somefilter='someValue'"); Assert.AreEqual("someValue", MyFilteredBindingList <Font> .StripOffQuotes("'someValue'")); Assert.AreEqual("some'Value", MyFilteredBindingList <Font> .StripOffQuotes("'some'Value'")); Assert.AreEqual("'someValue", MyFilteredBindingList <Font> .StripOffQuotes("'someValue")); Assert.AreEqual("someValue'", MyFilteredBindingList <Font> .StripOffQuotes("someValue'")); }
public void TestSortAndFilterAddItemRemoveFilter() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56100, new DateTime(2003, 5, 6))); myList.Add(new Product("Games", "TickTock", 56200, new DateTime(2006, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2004, 5, 6))); myList.Add(new Product("Games", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.ApplySort("Category", System.ComponentModel.ListSortDirection.Descending); myList.Filter = "[Category]< 'Games'"; myList.Add(new Product("Johnson", "TickTock", 45000, new DateTime(2007, 9, 1))); Assert.AreEqual(2, myList.Count); myList.RemoveFilter(); Assert.AreEqual(5, myList.Count); Assert.AreEqual("Johnson", myList[0].Category); }
public void TestFilterMultiColumnFilterToSingleColumnFilterToNoFilter() { MyFilteredBindingList <Product> myList = new MyFilteredBindingList <Product>(); myList.Add(new Product("Gadgets", "TickTock", 56100, new DateTime(2003, 5, 6))); myList.Add(new Product("Games", "TickTock", 56200, new DateTime(2006, 5, 6))); myList.Add(new Product("Gadgets", "Jumper", 56000, new DateTime(2004, 5, 6))); myList.Add(new Product("Games", "Jumper", 56000, new DateTime(2002, 5, 6))); myList.Filter = "[Category] ='Games' AND [ProductName] ='TickTock'"; Assert.AreEqual(1, myList.Count); myList.Filter = "[Category] ='Games'"; Assert.AreEqual(2, myList.Count); myList.RemoveFilter(); Assert.AreEqual(4, myList.Count); Assert.AreEqual("TickTock", myList[0].ProductName); Assert.AreEqual("Gadgets", myList[0].Category); }
public void TestRegexBuilder() { Assert.AreEqual(@"\[?[\w\s]+\]?\s?[><=]\s?'?.+'?", MyFilteredBindingList <Employee> .BuildRegExForFilterFormat()); }