public void ShouldRemoveDefaultExpressionWhenMergingRemoveDefaultConstraint(string columnName) { var columns = new Column[] { Column.Int("id", null, "description"), Column.VarChar("column", new CharacterLength(50), "collation", Nullable.Null, "default", "default constraint name", "description") }; var op = new AddTableOperation("schema", "table", columns, false, "filegroup", "textimagefilegroup", "filestreamfilegroup", new string[0]); var addDefaultConstraintOp = new RemoveDefaultConstraintOperation("SCHEMA", "TABLE", columnName, "NAME"); op.Merge(addDefaultConstraintOp); Assert.That(op.Disabled, Is.False); if (String.IsNullOrEmpty(columnName)) { Assert.That(addDefaultConstraintOp.Disabled, Is.False); Assert.That(columns[0].DefaultExpression, Is.Null); Assert.That(columns[1].DefaultExpression, Is.EqualTo("default")); } else { Assert.That(addDefaultConstraintOp.Disabled, Is.True); Assert.That(columns[0].DefaultExpression, Is.Null); Assert.That(columns[1].DefaultExpression, Is.Null); } }
public void ShouldDisableWhenMergedWithRemoveOperation() { var op = new AddDefaultConstraintOperation("schema", "table", "name", "column", "expression", false); var removeOp = new RemoveDefaultConstraintOperation("SCHEMA", "TABLE", "COLUMN", "NAME"); op.Merge(removeOp); Assert.That(op.Disabled, Is.True); Assert.That(removeOp.Disabled, Is.True); }
public void ShouldWriteQueryForRemoveDefaultConstraint() { var schemaName = "schemaName"; var tableName = "tableName"; var constraintName = "columnName"; var op = new RemoveDefaultConstraintOperation(schemaName, tableName, "column", constraintName); var expectedQuery = string.Format("alter table [{0}].[{1}] drop constraint [{2}]", schemaName, tableName, constraintName); Assert.AreEqual(expectedQuery, op.ToQuery()); }
public void ShouldSetPropertiesForRemoveDefaultConstraint() { var schemaName = "schemaName"; var tableName = "tableName"; var name = "columnName"; var op = new RemoveDefaultConstraintOperation(schemaName, tableName, "column", name); Assert.AreEqual(schemaName, op.SchemaName); Assert.AreEqual(tableName, op.TableName); Assert.That(op.Name, Is.EqualTo(name)); }
public void ShouldRemoveDefaultExpressionFromAddedColumnsAndDisableRemovedDefaultConstraint() { var columns = new Column[] { Column.Int("column1", Nullable.NotNull, null, null, null), Column.Int("column2", Nullable.NotNull, null, null, null), }; var op = new UpdateTableOperation("schema", "tableName", columns, new Column[0], new string[0]); var removeDefaultConstraintOp = new RemoveDefaultConstraintOperation("SCHEMA", "TABLENAME", "COLUMN2", "name"); op.Merge(removeDefaultConstraintOp); Assert.That(op.Disabled, Is.False); Assert.That(removeDefaultConstraintOp.Disabled, Is.True); Assert.That(op.AddColumns[1].DefaultExpression, Is.Null); }