public void Should_Be_Able_To_Get_ForeignKeyColumns_For_A_Table(string tableName)
        {
            // Arrange
            var sut = new SchemaCollectionsProvider();

            var connectionString = ConfigurationManager.ConnectionStrings["CrmOrganisation"];
            using (var conn = new CrmDbConnection(connectionString.ConnectionString))
            {
                var restrictions = new string[] { null, null, tableName, null };
                // Act
                var collection = sut.GetForeignKeyColumns(conn, restrictions);

                // Assert
                Assert.That(collection, Is.Not.Null);
                Assert.That(collection.Columns, Is.Not.Null);
                Assert.That(collection.Rows.Count, Is.GreaterThan(0));

                foreach (DataRow row in collection.Rows)
                {

                    var val = AssertColVal(collection, row, "constraint_catalog");
                    Assert.That(val, Is.EqualTo(conn.ConnectionInfo.OrganisationName));

                    val = AssertColVal(collection, row, "constraint_schema");
                    Assert.That(val, Is.EqualTo("dbo"));

                    val = AssertColVal(collection, row, "constraint_name");
                    Assert.IsFalse(string.IsNullOrEmpty((string)val));
                    Console.WriteLine(val);

                    val = AssertColVal(collection, row, "table_catalog");
                    Assert.That(val, Is.EqualTo(conn.ConnectionInfo.OrganisationName));

                    val = AssertColVal(collection, row, "table_schema");
                    Assert.That(val, Is.EqualTo("dbo"));

                    val = AssertColVal(collection, row, "table_name");
                    Assert.That(val, Is.EqualTo(tableName));

                    val = AssertColVal(collection, row, "constraint_type");
                    Assert.That(val, Is.EqualTo("FOREIGN KEY"));

                    val = AssertColVal(collection, row, "column_name");
                    Assert.That(val, Is.Not.Null);
                    Console.WriteLine(val);

                    val = AssertColVal(collection, row, "ordinal_position");
                    Assert.That(val, Is.Not.EqualTo(0));

                }

            }
        }