public void ShouldWriteQueryForAddStoredProcedure()
        {
            var          op            = new AddStoredProcedureOperation(SchemaName, ProcedureName, Definition);
            const string expectedQuery = "create procedure [schemaName].[procedureName] as definition";

            Assert.AreEqual(expectedQuery, op.ToQuery());
        }
        public void ShouldDisableWhenMergedWithRemoveOperation()
        {
            var op       = new AddStoredProcedureOperation("schema", "name", "definition");
            var removeOp = new RemoveStoredProcedureOperation("SCHEMA", "NAME");

            op.Merge(removeOp);
            Assert.That(op.Disabled, Is.True);
            Assert.That(removeOp.Disabled, Is.True);
        }
        public void ShouldSetPropertiesForAddStoredProcedure()
        {
            var op = new AddStoredProcedureOperation(SchemaName, ProcedureName, Definition);

            Assert.AreEqual(SchemaName, op.SchemaName);
            Assert.AreEqual(ProcedureName, op.Name);
            Assert.AreEqual(Definition, op.Definition);
            Assert.That(op.ObjectName, Is.EqualTo(string.Format("{0}.{1}", SchemaName, ProcedureName)));
        }
        public void ShouldNotRenameObjectIfDifferentObject()
        {
            var op       = new AddStoredProcedureOperation("schema", "name", "definition");
            var renameOp = new RenameObjectOperation("SCHEMA", "another_object", "newname");

            op.Merge(renameOp);
            Assert.That(op.Disabled, Is.False);
            Assert.That(renameOp.Disabled, Is.False);
            Assert.That(op.Name, Is.EqualTo("name"));
        }