public void AddingASingleColumnShouldAddItToToColumnList() { CreateConstraintExpression expression = new CreateConstraintExpression(ConstraintType.Unique); CreateConstraintExpressionBuilder builder = new CreateConstraintExpressionBuilder(expression); builder.OnTable("FOO").Column("BAR"); expression.Constraint.Columns.First().ShouldBe("BAR"); }
public void SettingTheTableNameSetsTheTableName() { CreateConstraintExpression expression = new CreateConstraintExpression(ConstraintType.Unique); CreateConstraintExpressionBuilder builder = new CreateConstraintExpressionBuilder(expression); builder.OnTable("FOO"); expression.Constraint.TableName.ShouldBe("FOO"); }
public void AddingMultipleColumnShouldAddThenToToColumnList() { CreateConstraintExpression expression = new CreateConstraintExpression(ConstraintType.Unique); CreateConstraintExpressionBuilder builder = new CreateConstraintExpressionBuilder(expression); builder.OnTable("FOO").Columns(new string[]{"BAR","BAZ" }); expression.Constraint.Columns.First().ShouldBe("BAR"); expression.Constraint.Columns.ElementAt(1).ShouldBe("BAZ"); }
public void CallingColumnsWithDuplicateNamesAddsSetOfColumnNamesForUnique() { var expression = new CreateConstraintExpression(ConstraintType.Unique); var builder = new CreateConstraintExpressionBuilder(expression); builder.Columns(new[] { Column1, Column2, Column1 }); Assert.That(expression.Constraint.Columns.Count, Is.EqualTo(2)); }
public void ATableShouldBeAllowedToSpecifyASchema() { CreateConstraintExpression expression = new CreateConstraintExpression(ConstraintType.PrimaryKey); CreateConstraintExpressionBuilder builder = new CreateConstraintExpressionBuilder(expression); builder.OnTable("FOO").WithSchema("BAR").Column("BAZ"); expression.Constraint.SchemaName.ShouldBe("BAR"); expression.Constraint.TableName.ShouldBe("FOO"); expression.Constraint.Columns.First().ShouldBe("BAZ"); }
private static void SetConstraintType(ICreateConstraintOptionsSyntax expression, SqlServerConstraintType type) { CreateConstraintExpressionBuilder castPrimaryKey = expression as CreateConstraintExpressionBuilder; if (castPrimaryKey == null) { throw new InvalidOperationException(type + " must be called on an object that implements ISupportAdditionalFeatures."); } ISupportAdditionalFeatures castExpression = castPrimaryKey.Expression.Constraint; castExpression.AddAdditionalFeature(ConstraintType, type); }