public void RemoveAt_Integer()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            dt.Constraints.RemoveAt(0);
            Assert.AreEqual(0, dt.Constraints.Count, "ccrai#1");

            dt = DataProvider.CreateUniqueConstraint();
            Constraint con = new UniqueConstraint(dt.Columns["String1"], false);

            dt.Constraints[0].ConstraintName = "constraint1";
            con.ConstraintName = "constraint2";
            dt.Constraints.Add(con);
            dt.Constraints.RemoveAt(0);
            Assert.AreEqual(1, dt.Constraints.Count, "ccrai#2");
            Assert.AreEqual("constraint2", dt.Constraints[0].ConstraintName, "ccrai#3");

            dt = DataProvider.CreateUniqueConstraint();
            dt.Constraints.CollectionChanged += new CollectionChangeEventHandler(Constraints_CollectionChanged);
            dt.Constraints.RemoveAt(0);
            Assert.AreEqual(true, collectionChanged, "ccrai#4"); //Checking that event has raised

            ArrayList arr = new ArrayList(1);

            arr.Add(new IndexOutOfRangeException());
            TestException(new testExceptionMethodCallback(RemoveAt_I), arr);
        }
        [Test] public void Remove()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            dt.Constraints.Remove(dt.Constraints[0]);
            Assert.AreEqual(0, dt.Constraints.Count, "CN27");
        }
Esempio n. 3
0
        public void GetEnumerator()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            int         counter      = 0;
            IEnumerator myEnumerator = dt.Columns.GetEnumerator();

            while (myEnumerator.MoveNext())
            {
                counter++;
            }
            Assert.AreEqual(6, counter, "dccge#1");

            try
            {
                DataColumn col = (DataColumn)myEnumerator.Current;
                Assert.Fail("dccc2#1: GetEnumerator failed to throw InvalidOperationException");
            }
            catch (InvalidOperationException) {}
            catch (AssertionException exc) { throw  exc; }
            catch (Exception exc)
            {
                Assert.Fail("dccc2#2: GetEnumerator. Wrong exception type. Got:" + exc);
            }
        }
        [Test] public void Remove_ByNameSimple()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            dt.Constraints[0].ConstraintName = "constraint1";
            dt.Constraints.Remove("constraint1");
            Assert.AreEqual(0, dt.Constraints.Count, "CN28");
        }
        // FIXME. This test isn't complete.
        public void CanRemove_Unique()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            //remove the forigen and ask about the unique
            dt.Constraints.Remove(dt.Constraints[0]);
            Assert.AreEqual(true, dt.Constraints.CanRemove(dt.Constraints[0]), "CN4");
        }
        [Test] public void Remove_ByNameCollectionChangedEvent()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            CollectionChangedFlag             = false;
            dt.Constraints.CollectionChanged += new CollectionChangeEventHandler(Constraints_CollectionChangedHandler);
            dt.Constraints.Remove("constraint1");
            Assert.AreEqual(true, CollectionChangedFlag, "CN32"); //Checking that event has raised
        }
        [Test] public void CollectionChanged()
        {
            DataTable dt = DataProvider.CreateParentDataTable();

            CollectionChangedFlag             = false;
            dt.Constraints.CollectionChanged += new CollectionChangeEventHandler(Constraints_CollectionChangedHandler);
            dt = DataProvider.CreateUniqueConstraint(dt);
            Assert.AreEqual(true, CollectionChangedFlag, "CN8");
        }
Esempio n. 8
0
        [Test] public void TestCanRemove_ByDataColumn()
        {
            DataTable  dt       = DataProvider.CreateUniqueConstraint();
            DataColumn dummyCol = new DataColumn();

            Assert.AreEqual(false, dt.Columns.CanRemove(null), "DCC35");             //Cannot remove null column
            Assert.AreEqual(false, dt.Columns.CanRemove(dummyCol), "DCC36");         //Don't belong to this table
            Assert.AreEqual(false, dt.Columns.CanRemove(dt.Columns[0]), "DCC37");    //It belongs to unique constraint
            Assert.AreEqual(true, dt.Columns.CanRemove(dt.Columns[1]), "DCC38");
        }
        [Test] public void CopyTo()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            dt.Constraints.Add("constraint2", dt.Columns["String1"], true);

            object[] ar = new object[2];

            dt.Constraints.CopyTo(ar, 0);
            Assert.AreEqual(2, ar.Length, "CN13");
        }
        [Test] public void Clear_Unique()
        {
            DataTable dt        = DataProvider.CreateUniqueConstraint();
            int       rowsCount = dt.Rows.Count;

            dt.Constraints.Clear();
            DataRow dr = dt.NewRow();

            dr[0] = 1;
            dt.Rows.Add(dr);
            Assert.AreEqual(rowsCount + 1, dt.Rows.Count, "CN7"); //Just checking that no expection ocuured
        }
        [Test] public void Remove_ByNameWithAdd()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            dt.Constraints[0].ConstraintName = "constraint1";
            Constraint con = new UniqueConstraint(dt.Columns["String1"], false);

            dt.Constraints.Add(con);
            dt.Constraints.Remove(con);

            Assert.AreEqual(1, dt.Constraints.Count, "CN29");
            Assert.AreEqual("constraint1", dt.Constraints[0].ConstraintName, "CN30");
        }
        public void Item()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            dt.Constraints[0].ConstraintName = "constraint1";
            Assert.AreEqual("constraint1", dt.Constraints[0].ConstraintName, "cci#1");
            Assert.AreEqual("constraint1", dt.Constraints["constraint1"].ConstraintName, "cci#2");

            ArrayList arr = new ArrayList(1);

            arr.Add(new IndexOutOfRangeException());
            TestException(new testExceptionMethodCallback(Item2), arr);
        }
        [Test] public void IsSynchronized()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            Assert.AreEqual(false, dt.Constraints.IsSynchronized, "CN25");

            ConstraintCollection col = (ConstraintCollection)dt.Constraints.SyncRoot;

            //		lock(dt.Constraints.SyncRoot)
            //		{
            //	Assert.AreEqual(true, col.IsSynchronized, "CN26");

            //}
        }
        [Test] public void GetEnumerator()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            dt.Constraints.Add("constraint2", dt.Columns["String1"], false);

            int         counter      = 0;
            IEnumerator myEnumerator = dt.Constraints.GetEnumerator();

            while (myEnumerator.MoveNext())
            {
                counter++;
            }
            Assert.AreEqual(2, counter, "CN17");
        }
        [Test] public void Count()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            Assert.AreEqual(1, dt.Constraints.Count, "CN14");

            //Add

            dt.Constraints.Add("constraint2", dt.Columns["String1"], false);
            Assert.AreEqual(2, dt.Constraints.Count, "CN15");

            //Remove

            dt.Constraints.Remove("constraint2");
            Assert.AreEqual(1, dt.Constraints.Count, "CN16");
        }
        [Test] public void IndexOf()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            Assert.AreEqual(0, dt.Constraints.IndexOf(dt.Constraints[0]), "CN18");

            //Add new constraint
            Constraint con = new UniqueConstraint(dt.Columns["String1"], false);

            dt.Constraints.Add(con);
            Assert.AreEqual(1, dt.Constraints.IndexOf(con), "CN19");

            //Remove it and try to look for it

            dt.Constraints.Remove(con);
            Assert.AreEqual(-1, dt.Constraints.IndexOf(con), "CN20");
        }
        [Test] public void IndexOf_ByName()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            dt.Constraints[0].ConstraintName = "name1";
            Assert.AreEqual(0, dt.Constraints.IndexOf("name1"), "CN21");

            //Add new constraint
            Constraint con = new UniqueConstraint(dt.Columns["String1"], false);

            con.ConstraintName = "name2";

            dt.Constraints.Add(con);
            Assert.AreEqual(1, dt.Constraints.IndexOf("name2"), "CN22");

            //Remove it and try to look for it

            dt.Constraints.Remove(con);
            Assert.AreEqual(-1, dt.Constraints.IndexOf("name2"), "CN23");
        }
        public void Add_Constraint()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            Assert.AreEqual(1, dt.Constraints.Count, "ccac#1");
            Assert.AreEqual("Constraint1", dt.Constraints[0].ConstraintName, "ccac#2");

            DataSet ds = DataProvider.CreateForigenConstraint();

            Assert.AreEqual(1, ds.Tables[1].Constraints.Count, "ccac#3");
            Assert.AreEqual(1, ds.Tables[0].Constraints.Count, "ccac#4");

            ArrayList arr = new ArrayList(1);

            arr.Add(new ConstraintException());
            TestException(new testExceptionMethodCallback(DataProvider.TryToBreakUniqueConstraint), arr);

            arr = new ArrayList(1);
            arr.Add(new InvalidConstraintException());
            TestException(new testExceptionMethodCallback(DataProvider.TryToBreakForigenConstraint), arr);
        }
        private void RemoveAt_I()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            dt.Constraints.RemoveAt(2);
        }
        private void Item2()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            dt.Constraints[1].ConstraintName = "error";
        }
        [Test] public void IsReadOnly()
        {
            DataTable dt = DataProvider.CreateUniqueConstraint();

            Assert.AreEqual(false, dt.Constraints.IsReadOnly, "CN24");
        }