Beispiel #1
0
        public void CanNotAddMultipleForeignKeysToTheSameTable()
        {
            var collection = new ForeignKeyCollection();
            var key1       = new ForeignKey(new ObjectName("", "DetailTable1"), new[] { "Field1" }, new ObjectName("", "MasterTable1"), new[] { "Field1" });
            var key2       = new ForeignKey(new ObjectName("", "DetailTable1"), new[] { "Field2" }, new ObjectName("", "MasterTable1"), new[] { "Field2" });

            collection.Add(key1);
            Assert.Throws <ArgumentException>(() => collection.Add(key2));
        }
 public void CanNotAddMultipleForeignKeysToTheSameTable()
 {
     var collection = new ForeignKeyCollection();
     var key1 = new ForeignKey(new ObjectName("", "DetailTable1"), new[] { "Field1" }, new ObjectName("", "MasterTable1"),new[] { "Field1" });
     var key2 = new ForeignKey(new ObjectName("", "DetailTable1"), new[] { "Field2" }, new ObjectName("", "MasterTable1"),new[] { "Field2" });
     
     collection.Add(key1);
     Assert.Throws<ArgumentException>(() => collection.Add(key2));
     
 }
Beispiel #3
0
        public void CanAddMultipleForeignKeys()
        {
            var collection = new ForeignKeyCollection();
            var key1       = new ForeignKey(new ObjectName("", "DetailTable1"), new[] { "Field1" }, new ObjectName("", "MasterTable1"), new[] { "Field1" });
            var key2       = new ForeignKey(new ObjectName("", "DetailTable1"), new[] { "Field2" }, new ObjectName("", "MasterTable2"), new[] { "Field2" });

            collection.Add(key1);
            collection.Add(key2);

            Assert.That(collection, Contains.Item(key1));
            Assert.That(collection, Contains.Item(key2));
        }
        public void CanAddMultipleForeignKeys()
        {
            var collection = new ForeignKeyCollection();
            var key1 = new ForeignKey(new ObjectName("", "DetailTable1"), new[] { "Field1" }, new ObjectName("", "MasterTable1"),new[] { "Field1" });
            var key2 = new ForeignKey(new ObjectName("", "DetailTable1"), new[] { "Field2" }, new ObjectName("", "MasterTable2"),new[] { "Field2" });
            
            collection.Add(key1);
            collection.Add(key2);

            Assert.That(collection,Contains.Item(key1));
            Assert.That(collection,Contains.Item(key2));

            
        }
        private static ForeignKeyCollection CreateForeignKeys(DataTable data, ColumnCollection columns)
        {
            var keys = new ForeignKeyCollection();

            for (var i = 0; i < data.Rows.Count; i++)
            {
                var row = data.Rows[i];

                var schema = (string)row["schema_name"];
                var table  = GetCleanTableName((string)row["referenced_table"]);
                var column = (string)row["referenced_column"];
                var to     = columns.FindByName(schema, table, column);

                schema = (string)row["schema_name"];
                table  = GetCleanTableName((string)row["table"]);
                column = (string)row["column"];
                var from = columns.FindByName(schema, table, column);

                var key = new ForeignKey(from, to)
                {
                    Name = (string)row["FK_NAME"]
                };
                keys.Add(key);
            }

            return(keys);
        }
        public void CanAddSingleKey()
        {
            var collection = new ForeignKeyCollection();
            var key = new ForeignKey(new ObjectName("", "Table1"), new[] {"Field1"}, new ObjectName("", "Table2"),
                                     new[] {"Field2"});
            collection.Add(key);

            Assert.That(collection, Contains.Item(key));
        }
Beispiel #7
0
        public void CanAddSingleKey()
        {
            var collection = new ForeignKeyCollection();
            var key        = new ForeignKey(new ObjectName("", "Table1"), new[] { "Field1" }, new ObjectName("", "Table2"),
                                            new[] { "Field2" });

            collection.Add(key);

            Assert.That(collection, Contains.Item(key));
        }