Example #1
0
        public void CallingUniqueAddsIndexExpressionToContext()
        {
            var collectionMock = new Mock <ICollection <IMigrationExpression> >();
            var builderMock    = new Mock <IColumnExpressionBuilder>();
            var contextMock    = new Mock <IMigrationContext>();

            builderMock.SetupGet(n => n.Column.ModificationType).Returns(ColumnModificationType.Create);
            builderMock.SetupGet(n => n.Column.Name).Returns("BaconId");
            builderMock.SetupGet(n => n.SchemaName).Returns("Eggs");
            builderMock.SetupGet(n => n.TableName).Returns("Bacon");
            contextMock.Setup(x => x.Expressions).Returns(collectionMock.Object);

            var helper = new ColumnExpressionBuilderHelper(builderMock.Object, contextMock.Object);

            helper.Unique("IX_Bacon_BaconId");

            collectionMock.Verify(x => x.Add(It.Is <CreateIndexExpression>(
                                                 ix => ix.Index.Name == "IX_Bacon_BaconId" &&
                                                 ix.Index.TableName == "Bacon" &&
                                                 ix.Index.SchemaName == "Eggs" &&
                                                 ix.Index.IsUnique &&
                                                 !ix.Index.IsClustered &&
                                                 ix.Index.Columns.All(c => c.Name == "BaconId")
                                                 )));

            contextMock.VerifyGet(x => x.Expressions);
        }
 public ICreateColumnOptionSyntax Unique()
 {
     ColumnHelper.Unique(null);
     return(this);
 }
 public IAlterTableColumnOptionOrAddColumnOrAlterColumnSyntax Unique()
 {
     ColumnHelper.Unique(null);
     return(this);
 }
Example #4
0
 public ICreateTableColumnOptionOrWithColumnSyntax Unique()
 {
     ColumnHelper.Unique(null);
     return(this);
 }