Esempio n. 1
0
        public void Remove()
        {
            var factory = ViewFactory <SimpleClass> .IList();

            var list = factory.List;
            var view = factory.View;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            var bbb = new SimpleClass(80, "bbb", new DateTime(1980, 12, 12));

            list.Add(bbb);
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            factory.ClearEventCounts();

            var removingIndex = -1;

            view.RemovingItem += delegate(object sender, RemovingItemEventArgs args) { removingIndex = args.Index; };

            Assert.IsTrue(view.Remove(bbb));
            Assert.AreEqual(2, list.Count);
            Assert.AreEqual("ccc", list[1].StringValue);
            Assert.AreEqual(1, factory.RemovingItemCount);
            Assert.AreEqual(1, removingIndex);
            Assert.AreEqual(1, factory.ListChangedDeletedCount);
        }
Esempio n. 2
0
        public void RemoveIBindingList()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            IList <SimpleClass>          list = factory.List;
            ObjectListView <SimpleClass> view = factory.View;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            SimpleClass bbb = new SimpleClass(80, "bbb", new DateTime(1980, 12, 12));

            list.Add(bbb);
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            factory.ClearEventCounts();

            int removingIndex = -1;

            factory.View.RemovingItem += delegate(object sender, RemovingItemEventArgs args)
            {
                removingIndex = args.Index;
            };

            ((IList)factory.View).Remove(bbb);

            Assert.AreEqual(2, factory.List.Count);
            Assert.AreEqual("ccc", factory.List[1].StringValue);
            Assert.AreEqual(1, factory.ListChangedDeletedCount);
            Assert.AreEqual(1, factory.RemovingItemCount);
            Assert.AreEqual(1, removingIndex);
        }
Esempio n. 3
0
        public void CopyToEmptyList()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            SimpleClass[] array = new SimpleClass[0];
            factory.View.CopyTo(array, 0);
        }
Esempio n. 4
0
        public void RemoveAt()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            IList <SimpleClass> list = factory.List;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            list.Add(new SimpleClass(80, "bbb", new DateTime(1980, 12, 12)));
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            factory.ClearEventCounts();

            int removingIndex = -1;

            factory.View.RemovingItem += delegate(object sender, RemovingItemEventArgs args)
            {
                removingIndex = args.Index;
            };

            factory.View.RemoveAt(0);

            Assert.AreEqual(2, list.Count);
            Assert.AreEqual("bbb", list[0].StringValue);
            Assert.AreEqual(1, factory.RemovingItemCount);
            Assert.AreEqual(0, removingIndex);
        }
Esempio n. 5
0
        public void CopyTo()
        {
            var factory = ViewFactory <SimpleClass> .IList();

            var list = factory.List;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            list.Add(new SimpleClass(80, "bbb", new DateTime(1980, 12, 12)));
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            var array = new SimpleClass[3];

            ((ICollection)factory.View).CopyTo(array, 0);

            var item = array[0];

            Assert.IsNotNull(item);
            Assert.AreEqual(100, item.IntegerValue);
            Assert.AreEqual("aaa", item.StringValue);
            Assert.AreEqual(new DateTime(1970, 1, 1), item.DateTimeValue);

            item = array[1];
            Assert.AreEqual(80, item.IntegerValue);
            Assert.AreEqual("bbb", item.StringValue);
            Assert.AreEqual(new DateTime(1980, 12, 12), item.DateTimeValue);

            item = array[2];
            Assert.AreEqual(60, item.IntegerValue);
            Assert.AreEqual("ccc", item.StringValue);
            Assert.AreEqual(new DateTime(1975, 6, 6), item.DateTimeValue);
        }
Esempio n. 6
0
        public void CopyToEmptyList()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            SimpleClass[] array = new SimpleClass[0];
            ((ICollection)factory.View).CopyTo(array, 0);
        }
Esempio n. 7
0
        public void GetEnumeratorEmptyList()
        {
            var factory = ViewFactory <SimpleClass> .IList();

            var e = ((IEnumerable)factory.View).GetEnumerator();

            Assert.IsNotNull(e);
            Assert.IsFalse(e.MoveNext());
        }
Esempio n. 8
0
        public void EndNewWithoutAddNew()
        {
            var factory = ViewFactory <SimpleClass> .IList();

            var view = factory.View;

            ((ICancelAddNew)view).EndNew(0);
            Assert.AreEqual(0, factory.ListChangedAddedCount);
        }
Esempio n. 9
0
        public void GetListName()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            ObjectListView <SimpleClass> view = factory.View;

            Assert.IsTrue(view is ITypedList);
            Assert.AreEqual("", ((ITypedList)view).GetListName(null));
        }
Esempio n. 10
0
        public void GetEnumeratorEmptyList()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            IEnumerator <SimpleClass> e = factory.View.GetEnumerator();

            Assert.IsNotNull(e);
            Assert.IsFalse(e.MoveNext());
        }
Esempio n. 11
0
        public void CancelNewWithoutAddNew()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            ObjectListView <SimpleClass> view = factory.View;

            ((ICancelAddNew)view).CancelNew(0);
            Assert.AreEqual(0, factory.ListChangedAddedCount);
            Assert.AreEqual(0, factory.ListChangedDeletedCount);
        }
Esempio n. 12
0
        public void AddNewEditableObjectAndEndNew()
        {
            var factory = ViewFactory <SimpleEditableObject> .IList();

            var view = factory.View;

            var added = (ObjectView <SimpleEditableObject>)view.AddNew();

            ((ICancelAddNew)view).EndNew(view.IndexOf(added.Object));
            Assert.AreEqual(2, factory.ListChangedAddedCount);
        }
        public void GetItemProperties()
        {
            var factory = ViewFactory <SimpleClass> .IList();

            var view = factory.View;

            var props     = ((ITypedList)view).GetItemProperties(null);
            var typeProps = TypeDescriptor.GetProperties(typeof(SimpleClass));

            Assert.AreEqual(typeProps, props);
        }
Esempio n. 14
0
        public void GetItemProperties()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            ObjectListView <SimpleClass> view = factory.View;

            PropertyDescriptorCollection props     = ((ITypedList)view).GetItemProperties(null);
            PropertyDescriptorCollection typeProps = TypeDescriptor.GetProperties(typeof(SimpleClass));

            Assert.AreEqual(typeProps, props);
        }
Esempio n. 15
0
        public void AddNewAndEndNew()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            ObjectListView <SimpleClass> view = factory.View;

            ObjectView <SimpleClass> added = (ObjectView <SimpleClass>)view.AddNew();

            ((ICancelAddNew)view).EndNew(view.IndexOf(added.Object));
            Assert.AreEqual(1, factory.ListChangedAddedCount);
        }
Esempio n. 16
0
        public void Count()
        {
            var factory = ViewFactory <SimpleClass> .IList();

            var list = factory.List;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            list.Add(new SimpleClass(80, "bbb", new DateTime(1980, 12, 12)));
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            Assert.AreEqual(list.Count, ((ICollection)factory.View).Count);
        }
Esempio n. 17
0
        public void Count()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            IList <SimpleClass> list = factory.List;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            list.Add(new SimpleClass(80, "bbb", new DateTime(1980, 12, 12)));
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            Assert.AreEqual(list.Count, factory.View.Count);
        }
Esempio n. 18
0
        public void AddNewEditableObjectAndCancelNew()
        {
            ViewFactory <SimpleEditableObject> factory = ViewFactory <SimpleEditableObject> .IList();

            ObjectListView <SimpleEditableObject> view = factory.View;

            ObjectView <SimpleEditableObject> added = (ObjectView <SimpleEditableObject>)view.AddNew();

            ((ICancelAddNew)view).CancelNew(view.IndexOf(added.Object));
            Assert.AreEqual(1, factory.ListChangedAddedCount);
            Assert.AreEqual(1, factory.ListChangedDeletedCount);
        }
Esempio n. 19
0
        public void AddNewAndCancelNew()
        {
            var factory = ViewFactory <SimpleClass> .IList();

            var view = factory.View;

            var added = (ObjectView <SimpleClass>)view.AddNew();

            ((ICancelAddNew)view).CancelNew(view.IndexOf(added.Object));
            Assert.AreEqual(1, factory.ListChangedAddedCount);
            Assert.AreEqual(1, factory.ListChangedDeletedCount);
        }
Esempio n. 20
0
        public void Clear()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            SimpleClass item = factory.CreateItem();

            factory.List.Add(item);
            factory.ClearEventCounts();

            ((IList)factory.View).Clear();
            Assert.AreEqual(1, factory.ListChangedResetCount);
            Assert.AreEqual(0, factory.List.Count);
        }
Esempio n. 21
0
        public void ContainsItemNotInList()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            IList <SimpleClass>          list = factory.List;
            ObjectListView <SimpleClass> view = factory.View;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            list.Add(new SimpleClass(80, "bbb", new DateTime(1980, 12, 12)));
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            Assert.IsFalse(((IList)view).Contains(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1))));              // reference compare only for SimpleClass
        }
Esempio n. 22
0
        public void IndexOfItemNotInList()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            IList <SimpleClass> list = factory.List;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            SimpleClass bbb = new SimpleClass(80, "bbb", new DateTime(1980, 12, 12));

            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            Assert.AreEqual(-1, factory.View.IndexOf(bbb));
        }
Esempio n. 23
0
        public void GetListNameAccessors()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            ObjectListView <SimpleClass> view = factory.View;

            // Get some random property descriptors.
            PropertyDescriptorCollection accessors = TypeDescriptor.GetProperties(typeof(ISite));

            PropertyDescriptor[] listAccessors = new PropertyDescriptor[accessors.Count];
            accessors.CopyTo(listAccessors, 0);

            Assert.AreEqual("", ((ITypedList)view).GetListName(listAccessors));
        }
Esempio n. 24
0
        public void IndexOf()
        {
            var factory = ViewFactory <SimpleClass> .IList();

            var list = factory.List;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            var bbb = new SimpleClass(80, "bbb", new DateTime(1980, 12, 12));

            list.Add(bbb);
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            Assert.AreEqual(1, factory.View.IndexOf(bbb));
        }
Esempio n. 25
0
        public void ContainsItemInList()
        {
            var factory = ViewFactory <SimpleClass> .IList();

            var list = factory.List;
            var view = factory.View;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            var bbb = new SimpleClass(80, "bbb", new DateTime(1980, 12, 12));

            list.Add(bbb);
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            Assert.IsTrue(view.Contains(bbb));
        }
Esempio n. 26
0
        public void ContainsItemInList()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            IList <SimpleClass>          list = factory.List;
            ObjectListView <SimpleClass> view = factory.View;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            SimpleClass bbb = new SimpleClass(80, "bbb", new DateTime(1980, 12, 12));

            list.Add(bbb);
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            Assert.IsTrue(((IList)view).Contains(bbb));
        }
Esempio n. 27
0
        public void ItemGet()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            IList <SimpleClass> list = factory.List;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            SimpleClass bbb = new SimpleClass(80, "bbb", new DateTime(1980, 12, 12));

            list.Add(bbb);
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            SimpleClass item = factory.View[1];

            Assert.AreEqual(bbb, item);
        }
        public void GetItemPropertiesAccessors()
        {
            var factory = ViewFactory <SimpleClass> .IList();

            var view = factory.View;

            // Get some random property descriptors.
            var accessors     = TypeDescriptor.GetProperties(typeof(ISite));
            var listAccessors = new PropertyDescriptor[accessors.Count];

            accessors.CopyTo(listAccessors, 0);

            var props     = ((ITypedList)view).GetItemProperties(listAccessors);
            var typeProps = TypeDescriptor.GetProperties(typeof(SimpleClass));

            Assert.AreEqual(typeProps, props);
        }
Esempio n. 29
0
        public void ItemSet()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            factory.List.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            factory.List.Add(new SimpleClass(80, "bbb", new DateTime(1980, 12, 12)));
            factory.List.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            factory.ClearEventCounts();

            factory.View[1] = new SimpleClass(200, "ddd", new DateTime(1963, 3, 9));

            Assert.AreEqual(1, factory.ListChangedItemChangedCount);

            SimpleClass item = factory.List[1];

            Assert.AreEqual(200, item.IntegerValue);
            Assert.AreEqual("ddd", item.StringValue);
            Assert.AreEqual(new DateTime(1963, 3, 9), item.DateTimeValue);
        }
Esempio n. 30
0
        public void RemoveNotInList()
        {
            ViewFactory <SimpleClass> factory = ViewFactory <SimpleClass> .IList();

            IList <SimpleClass>          list = factory.List;
            ObjectListView <SimpleClass> view = factory.View;

            list.Add(new SimpleClass(100, "aaa", new DateTime(1970, 1, 1)));
            SimpleClass bbb = new SimpleClass(80, "bbb", new DateTime(1980, 12, 12));

            list.Add(bbb);
            list.Add(new SimpleClass(60, "ccc", new DateTime(1975, 6, 6)));

            factory.ClearEventCounts();

            SimpleClass ddd = new SimpleClass(66, "ddd", new DateTime(1980, 12, 12));

            ((IList)view).Remove(ddd);
            Assert.AreEqual(0, factory.RemovingItemCount);
        }