+2006-08-08 Duncan Mak <duncan@novell.com>
+
+ * ReadOnlyCollectionBase.cs (Count): Mark as virtual in
+ NET_2_0. Fixes #79033.
+
2006-04-26 Atsushi Enomoto <atsushi@ximian.com>
* Comparer.cs : changed internal field from CultureInfo to
[ComVisible(true)]
#endif
[Serializable]
- public abstract class ReadOnlyCollectionBase : ICollection, IEnumerable {
+ public abstract class ReadOnlyCollectionBase : ICollection, IEnumerable {
// private instance properties
- private System.Collections.ArrayList list;
+ private ArrayList list;
// public instance properties
- public int Count { get { return InnerList.Count; } }
+ public
+#if NET_2_0
+ virtual
+#endif
+ int Count { get { return InnerList.Count; } }
// Public Instance Methods
- public System.Collections.IEnumerator GetEnumerator() { return InnerList.GetEnumerator(); }
+ public IEnumerator GetEnumerator() { return InnerList.GetEnumerator(); }
// Protected Instance Constructors
protected ReadOnlyCollectionBase() {
- this.list = new System.Collections.ArrayList();
+ this.list = new ArrayList();
}
// Protected Instance Properties
- protected System.Collections.ArrayList InnerList {get { return this.list; } }
+ protected ArrayList InnerList {get { return this.list; } }
// ICollection methods
void ICollection.CopyTo(Array array, int index) {
+2006-08-08 Duncan Mak <duncan@novell.com>
+
+ * ReadOnlyCollectionBaseTest.cs (TestZeroCountOnNew): Add test for
+ overriding Count in NET_2_0 for #79033.
+
2006-04-25 Atsushi Enomoto <atsushi@ximian.com>
* QueueTest.cs, SortedListTest.cs : many capacity-related tests are
// We need a concrete class to test the abstract base class
public class ConcreteReadOnlyCollection : ReadOnlyCollectionBase
{
+#if NET_2_0
+ public override int Count { get { return -1; }}
+#endif
}
// Make sure that the Count is 0 for a new object
{
ConcreteReadOnlyCollection myCollection;
myCollection = new ConcreteReadOnlyCollection();
- Assert(0 == myCollection.Count);
+#if NET_2_0
+ Assert (-1 == myCollection.Count);
+#else
+ Assert ( 0 == myCollection.Count);
+#endif
}
// Make sure we get an object from GetEnumerator()