public void ThenTheViewFilteredToIdShouldBePopulatedWithData(string viewName, int id, Table table)
        {
            var expected = new CollectionPopulatedTableData(table.Header, table.Rows.Select(x => x.Values));

            var actual = LoadTableDataFromSql(string.Format("SELECT * FROM {0} WHERE Id = {1}", viewName, id));

            expected.VerifyMatch(actual, TableDataComparers.UnorderedRowNamedColumn);
        }
        public void ThenTheTableShouldBePopulatedWithData(string tableName, Table table)
        {
            var expected = new CollectionPopulatedTableData(table.Header, table.Rows.Select(x => x.Values));

            var actual = LoadTableDataFromSql(string.Format("SELECT * FROM {0}", tableName));

            expected.VerifyMatch(actual, TableDataComparers.UnorderedRowNamedColumn);
        }
        public void CollectionPopulatedTableDataObjectValues()
        {
            var expectedColumnNames = new List<string> { "a", "b" };
            var expectedRows = new List<IList<object>> { new List<object> { "1", "2" } };
            var sourceRows = new List<List<object>> { new List<object> { "1", "2" } };

            var tableData = new CollectionPopulatedTableData(columnNames, sourceRows);

            Assert.IsTrue(expectedColumnNames.SequenceEqual(tableData.ColumnNames));
            Assert.IsTrue(expectedRows[0].SequenceEqual(tableData.Rows[0]));
        }
        public void CollectionPopulatedTableDataNullValueTransformer()
        {
            var expectedColumnNames = new List<string> { "a", "b"};
            var expectedRows = new List<IList<object>> { new List<object> { DBNull.Value, "2" } };
            var sourceRows = new List<List<object>> { new List<object> { "NULL", "2" } };

            var tableData = new CollectionPopulatedTableData(columnNames, sourceRows);
            tableData.TransformData(new TableDataNullValueTransformer());

            Assert.IsTrue(expectedColumnNames.SequenceEqual(tableData.ColumnNames));
            Assert.IsTrue(expectedRows[0].SequenceEqual(tableData.Rows[0]));
        }
        public void ThenTheTableShouldBePopulatedWithIdAndDates(string tableName, Table table)
        {
            var expected = new CollectionPopulatedTableData(table.Header, table.Rows.Select(x => x.Values));
            foreach (var row in expected.Rows)
            {
                if (row[1].ToString() == "NULL")
                    row[1] = DBNull.Value;
            }

            var actual = LoadTableDataFromSql(string.Format("SELECT * FROM {0}", tableName));

            expected.VerifyMatch(actual, TableDataComparers.UnorderedRowNamedColumn);
        }
 public void WhenTableIsPopulatedSupportingNullValues(string tableName, Table table)
 {
     var tableActions = new TableActions(database.ConnectionString);
     var tableData = new CollectionPopulatedTableData(table.Header, table.Rows.Select(x => x.Values));
     tableData.TransformData(new TableDataNullValueTransformer());
     tableActions.Insert(DatabaseObjectName.FromName(tableName), tableData);
 }