protected override void Generate(DropTableOperation dropTableOperation, IndentedTextWriter writer)
 {
     var isReadonly = ReadonlyEntities.Contains(dropTableOperation.Name);
     if (!isReadonly)
     {
         base.Generate(dropTableOperation, writer);
     }
 }
        public void Inverse_should_produce_create_table_operation()
        {
            var inverse = new CreateTableOperation("T");
            var dropTableOperation = new DropTableOperation("T", inverse);

            Assert.Equal("T", dropTableOperation.Name);
            Assert.Same(inverse, dropTableOperation.Inverse);
        }
        public void Inverse_should_return_set_create_table_operation()
        {
            var inverse = new CreateTableOperation("T");
            var operation = new DropTableOperation("T", inverse);

            Assert.Equal("T", operation.Name);
            Assert.Same(inverse, operation.Inverse);

            operation = new DropTableOperation("T", null, null, inverse);

            Assert.Equal("T", operation.Name);
            Assert.Same(inverse, operation.Inverse);
        }
        public void Inverse_should_return_set_create_table_operation()
        {
            var inverse   = new CreateTableOperation("T");
            var operation = new DropTableOperation("T", inverse);

            Assert.Equal("T", operation.Name);
            Assert.Same(inverse, operation.Inverse);

            operation = new DropTableOperation("T", null, null, inverse);

            Assert.Equal("T", operation.Name);
            Assert.Same(inverse, operation.Inverse);
        }
        public void Can_get_and_set_table_and_annotations()
        {
            var operation = new DropTableOperation("T");

            Assert.Equal("T", operation.Name);
            Assert.Empty(operation.RemovedAnnotations);
            Assert.Empty(operation.RemovedColumnAnnotations);
            Assert.Null(operation.Inverse);

            operation = new DropTableOperation("T", null);
            Assert.Equal("T", operation.Name);
            Assert.Empty(operation.RemovedAnnotations);
            Assert.Empty(operation.RemovedColumnAnnotations);
            Assert.Null(operation.Inverse);

            operation = new DropTableOperation("T", null, null, null);
            Assert.Equal("T", operation.Name);
            Assert.Empty(operation.RemovedAnnotations);
            Assert.Empty(operation.RemovedColumnAnnotations);
            Assert.Null(operation.Inverse);

            operation = new DropTableOperation(
                "T", new Dictionary<string, object> { { "AT1", "VT1" } },
                new Dictionary<string, IDictionary<string, object>> { { "C1", new Dictionary<string, object> { { "AC1", "VC1" } } } });

            Assert.Equal("T", operation.Name);
            Assert.Equal("VT1", operation.RemovedAnnotations["AT1"]);
            Assert.Equal("VC1", operation.RemovedColumnAnnotations["C1"]["AC1"]);
            Assert.Null(operation.Inverse);


            operation = new DropTableOperation(
                "T", new Dictionary<string, object> { { "AT1", "VT1" } },
                new Dictionary<string, IDictionary<string, object>> { { "C1", new Dictionary<string, object> { { "AC1", "VC1" } } } }, null);

            Assert.Equal("T", operation.Name);
            Assert.Equal("VT1", operation.RemovedAnnotations["AT1"]);
            Assert.Equal("VC1", operation.RemovedColumnAnnotations["C1"]["AC1"]);
            Assert.Null(operation.Inverse);
        }
 protected override void Generate(DropTableOperation dropTableOperation, IndentedTextWriter writer)
 {
     var drop = new DropTableOperation(TrimSchemaPrefix(dropTableOperation.Name));
       base.Generate(drop, writer);
 }
        /// <summary>
        /// Generates SQL for a <see cref="DropTableOperation" />.
        /// Generated SQL should be added using the Statement method.
        /// </summary>
        /// <param name="dropTableOperation"> The operation to produce SQL for. </param>
        protected virtual void Generate(DropTableOperation dropTableOperation)
        {
            Check.NotNull(dropTableOperation, "dropTableOperation");

            using (var writer = Writer())
            {
                writer.Write("DROP TABLE ");
                writer.Write(Name(dropTableOperation.Name));

                Statement(writer);
            }
        }
        /// <summary>
        /// Generates code to perform a <see cref="DropTableOperation" />.
        /// </summary>
        /// <param name="dropTableOperation"> The operation to generate code for. </param>
        /// <param name="writer"> Text writer to add the generated code to. </param>
        protected virtual void Generate(DropTableOperation dropTableOperation, IndentedTextWriter writer)
        {
            Check.NotNull(dropTableOperation, "dropTableOperation");
            Check.NotNull(writer, "writer");

            writer.Write("DropTable(");
            writer.Write(Quote(dropTableOperation.Name));

            if (dropTableOperation.RemovedAnnotations.Any())
            {
                writer.Indent++;

                writer.WriteLine(",");
                writer.Write("removedAnnotations := ");
                GenerateAnnotations(dropTableOperation.RemovedAnnotations, writer);
                writer.Indent--;
            }

            var columns = dropTableOperation.RemovedColumnAnnotations;
            if (columns.Any())
            {
                writer.Indent++;

                writer.WriteLine(",");
                writer.Write("removedColumnAnnotations := ");

                writer.WriteLine("New Dictionary(Of String, IDictionary(Of String, Object)) From _");
                writer.WriteLine("{");
                writer.Indent++;

                var columnNames = columns.Keys.OrderBy(k => k).ToArray();
                for (var i = 0; i < columnNames.Length; i++)
                {
                    writer.WriteLine("{");
                    writer.Indent++;
                    writer.WriteLine(Quote(columnNames[i]) + ",");
                    GenerateAnnotations(columns[columnNames[i]], writer);
                    writer.WriteLine();
                    writer.Indent--;
                    writer.WriteLine(i < columnNames.Length - 1 ? " }," : " }");
                }

                writer.Indent--;
                writer.Write("}");
                writer.Indent--;
            }

            writer.WriteLine(")");
        }
        /// <summary>
        ///     Generates code to perform a <see cref="DropTableOperation" />.
        /// </summary>
        /// <param name="dropTableOperation"> The operation to generate code for. </param>
        /// <param name="writer"> Text writer to add the generated code to. </param>
        protected virtual void Generate(DropTableOperation dropTableOperation, IndentedTextWriter writer)
        {
            Check.NotNull(dropTableOperation, "dropTableOperation");
            Check.NotNull(writer, "writer");

            writer.Write("DropTable(");
            writer.Write(Quote(dropTableOperation.Name));
            writer.WriteLine(")");
        }
 private void Convert(DropTableOperation dropTableOperation)
 {
     StringBuilder sql = new StringBuilder();
     sql.Append("DROP TABLE ");
     AppendTableName(dropTableOperation.Name, sql);
     AddStatment(sql);
 }
        /// <summary>
        ///     Generates code to perform a <see cref = "DropTableOperation" />.
        /// </summary>
        /// <param name = "dropTableOperation">The operation to generate code for.</param>
        /// <param name = "writer">Text writer to add the generated code to.</param>
        protected virtual void Generate(DropTableOperation dropTableOperation, IndentedTextWriter writer)
        {
            Contract.Requires(dropTableOperation != null);
            Contract.Requires(writer != null);

            writer.Write("DropTable(");
            writer.Write(Quote(dropTableOperation.Name));
            writer.WriteLine(")");
        }
 protected virtual MigrationStatement Generate(DropTableOperation op)
 {
   return new MigrationStatement() { Sql = "drop table " + "`" + TrimSchemaPrefix(op.Name) + "`" };
 }
Exemplo n.º 13
0
        public void Can_get_and_set_table()
        {
            var dropTableOperation = new DropTableOperation("T");

            Assert.Equal("T", dropTableOperation.Name);
        }
 protected virtual MigrationStatement Generate(DropTableOperation op)
 {
     return new MigrationStatement() { Sql = "drop table " + "`" + op.Name + "`" };
 }
        /// <summary>
        /// Gera SQL para uma operação <see cref="DropTableOperation" />.
        /// </summary>
        /// <param name="opeDropTable"> The operation to produce SQL for. </param>
        protected virtual void Generate(DropTableOperation opeDropTable)
        {
            using (var ltextWriter = TextWriter())
            {
                ltextWriter.Write("DROP TABLE ");
                ltextWriter.Write(RemoveDBO(opeDropTable.Name));

                ComandoSQL(ltextWriter);
            }
        }
        /// <summary>
        /// Generates code to perform a <see cref="DropTableOperation" />.
        /// </summary>
        /// <param name="dropTableOperation"> The operation to generate code for. </param>
        /// <param name="writer"> Text writer to add the generated code to. </param>
        protected virtual void Generate(DropTableOperation dropTableOperation, IndentedTextWriter writer)
        {
            Check.NotNull(dropTableOperation, "dropTableOperation");
            Check.NotNull(writer, "writer");

            writer.Write("DropTable(");
            writer.Write(Quote(dropTableOperation.Name));

            if (dropTableOperation.RemovedAnnotations.Any())
            {
                writer.Indent++;

                writer.WriteLine(",");
                writer.Write("removedAnnotations: ");
                GenerateAnnotations(dropTableOperation.RemovedAnnotations, writer);
                writer.Indent--;
            }

            var columns = dropTableOperation.RemovedColumnAnnotations;
            if (columns.Any())
            {
                writer.Indent++;

                writer.WriteLine(",");
                writer.Write("removedColumnAnnotations: ");

                writer.WriteLine("new Dictionary<string, IDictionary<string, object>>");
                writer.WriteLine("{");
                writer.Indent++;

                foreach (var columnName in columns.Keys.OrderBy(k => k))
                {
                    writer.WriteLine("{");
                    writer.Indent++;
                    writer.WriteLine(Quote(columnName) + ",");
                    GenerateAnnotations(columns[columnName], writer);
                    writer.WriteLine();
                    writer.Indent--;
                    writer.WriteLine("},");
                }

                writer.Indent--;
                writer.Write("}");
                writer.Indent--;
            }

            writer.WriteLine(");");
        }
        protected override void Generate(DropTableOperation dropTableOperation)
        {
            Contract.Requires(dropTableOperation != null);

            using (var writer = Writer())
            {
                writer.Write("DROP TABLE ");
                writer.Write(Name(dropTableOperation.Name));

                Statement(writer);
            }
        }
 protected virtual IEnumerable<MigrationStatement> Generate(DropTableOperation operation)
 {
     using (var writer = SqlWriter())
     {
         writer.Write("DROP TABLE ");
         writer.Write(Quote(operation.Name));
         yield return Statement(writer);
     }
 }
        public void Can_get_and_set_table()
        {
            var dropTableOperation = new DropTableOperation("T");

            Assert.Equal("T", dropTableOperation.Name);
        }