public void Can_get_and_set_name_properties() { var moveProcedureOperation = new MoveProcedureOperation("dbo.Customers", "crm"); Assert.Equal("dbo.Customers", moveProcedureOperation.Name); Assert.Equal("crm", moveProcedureOperation.NewSchema); }
public void Inverse_should_produce_move_procedure_operation() { var moveProcedureOperation = new MoveProcedureOperation("dbo.MyCustomers", "crm"); var inverse = (MoveProcedureOperation)moveProcedureOperation.Inverse; Assert.Equal("crm.MyCustomers", inverse.Name); Assert.Equal("dbo", inverse.NewSchema); }
protected virtual IEnumerable<MigrationStatement> Generate(MoveProcedureOperation operation) { throw new NotSupportedException("'MoveProcedureOperation' is not supported."); }
/// <summary> /// Generates code to perform a <see cref="MoveProcedureOperation" />. /// </summary> /// <param name="moveProcedureOperation">The operation to generate code for.</param> /// <param name="writer">Text writer to add the generated code to.</param> protected virtual void Generate(MoveProcedureOperation moveProcedureOperation, IndentedTextWriter writer) { Check.NotNull(moveProcedureOperation, "moveProcedureOperation"); Check.NotNull(writer, "writer"); writer.Write("MoveStoredProcedure(name := "); writer.Write(Quote(moveProcedureOperation.Name)); writer.Write(", newSchema := "); writer.Write( string.IsNullOrWhiteSpace(moveProcedureOperation.NewSchema) ? "Nothing" : Quote(moveProcedureOperation.NewSchema)); writer.WriteLine(")"); }
/// <summary> /// Generates the specified move procedure operation. /// </summary> /// <param name="moveProcedureOperation">The move procedure operation.</param> protected virtual void Generate(MoveProcedureOperation moveProcedureOperation) { Check.NotNull(moveProcedureOperation, "moveProcedureOperation"); var newSchema = moveProcedureOperation.NewSchema ?? "dbo"; if (!newSchema.EqualsIgnoreCase("dbo") && !_generatedSchemas.Contains(newSchema)) { GenerateCreateSchema(newSchema); _generatedSchemas.Add(newSchema); } using (var writer = Writer()) { writer.Write("ALTER SCHEMA "); writer.Write(Quote(newSchema)); writer.Write(" TRANSFER "); writer.Write(Name(moveProcedureOperation.Name)); Statement(writer); } }
public void Generate_can_output_move_procedure_statement() { var moveProcedureOperation = new MoveProcedureOperation("dbo.History", "foo"); var migrationSqlGenerator = new SqlServerMigrationSqlGenerator(); var sql = migrationSqlGenerator.Generate(new[] { moveProcedureOperation }, "2008").Join(s => s.Sql, Environment.NewLine); Assert.Contains( @"IF schema_id('foo') IS NULL EXECUTE('CREATE SCHEMA [foo]') ALTER SCHEMA [foo] TRANSFER [dbo].[History]", sql); }
/// <summary> /// Generates the specified move procedure operation. /// </summary> /// <param name="moveProcedureOperation">The move procedure operation.</param> protected virtual void Generate(MoveProcedureOperation moveProcedureOperation) { }