public void AddRows_Error_Rollback() { IDynamicTable table = new DynamicTable(DynamicTableType.Expandable); dynamic row; dynamic rowB; //add values row = new ExpandoObject(); row.FirstName = "Hans"; row.LastName = "Mueller"; row.Age = 30; table.AddRow(row); try { row = new ExpandoObject(); row.FirstName = "Hans"; row.LastName = "Meier"; row.Age = 30; rowB = new ExpandoObject(); rowB.LastName = 50; rowB.Street = "Main street"; table.AddRows(new List<dynamic>(){ row, rowB}); Assert.Fail(); } catch (ArgumentException) { } //compare Assert.AreEqual(1, table.Rows.Count); }