Exemplo n.º 1
0
        public void StoredProcedureCallWithoutParameters()
        {
            const string text           = "dbo.SOMEPROCEDURE";
            const string expectedOutput = "EXEC dbo.SOMEPROCEDURE;";
            var          cmd            = CreateDbCommand(CommandType.StoredProcedure, text);

            var formatter    = new VerboseSqlServerFormatter();
            var actualOutput = GenerateOutput(formatter, cmd, text);

            Assert.Equal(expectedOutput, actualOutput);
        }
Exemplo n.º 2
0
        public void EnsureVerboseSqlServerFormatterOnlyAddsInformation()
        {
            const string text = "select 1";
            var          cmd  = CreateDbCommand(CommandType.Text, text);

            var formatter    = new VerboseSqlServerFormatter(true);
            var actualOutput = GenerateOutput(formatter, cmd, text);

            const string expectedOutput = "-- Command Type: Text\n-- Database: TestDatabase\n\nselect 1;";

            Assert.Equal(expectedOutput, actualOutput);
        }
Exemplo n.º 3
0
        public void StoredProcedureCallWithOneReturnParameter(string at)
        {
            const string text = "dbo.SOMEPROCEDURE";
            var          cmd  = CreateDbCommand(CommandType.StoredProcedure, text);

            AddDbParameter <int>(cmd, at + "retval", null, ParameterDirection.ReturnValue);

            var formatter    = new VerboseSqlServerFormatter();
            var actualOutput = GenerateOutput(formatter, cmd, text);

            const string expectedOutput = "DECLARE @retval int;\n\nEXEC @retval = dbo.SOMEPROCEDURE;\nSELECT @retval AS ReturnValue;";

            Assert.Equal(expectedOutput, actualOutput);
        }
Exemplo n.º 4
0
        public void StoredProcedureCallWithOneParameter(string at)
        {
            const string text = "dbo.SOMEPROCEDURE";
            var          cmd  = CreateDbCommand(CommandType.StoredProcedure, text);

            AddDbParameter <int>(cmd, at + "x", 123, ParameterDirection.Input);

            var formatter    = new VerboseSqlServerFormatter();
            var actualOutput = GenerateOutput(formatter, cmd, text);

            const string expectedOutput = "DECLARE @x int = 123;\n\nEXEC dbo.SOMEPROCEDURE @x = @x;";

            Assert.Equal(expectedOutput, actualOutput);
        }
Exemplo n.º 5
0
        public void StoredProcedureCallWithInOutputParameter(string at)
        {
            const string text = "dbo.SOMEPROCEDURE";
            var          cmd  = CreateDbCommand(CommandType.StoredProcedure, text);

            // note: since the sql-OUTPUT parameters can be read within the procedure, we need to support setting the value
            AddDbParameter <int>(cmd, at + "x", 123, ParameterDirection.InputOutput);

            var formatter    = new VerboseSqlServerFormatter();
            var actualOutput = GenerateOutput(formatter, cmd, text);

            const string expectedOutput = "DECLARE @x int = 123;\n\nEXEC dbo.SOMEPROCEDURE @x = @x OUTPUT;\nSELECT @x AS x;";

            Assert.Equal(expectedOutput, actualOutput);
        }
Exemplo n.º 6
0
        public void VerboseSqlServerFormatterAddsTransactionInformation()
        {
            // note: since we don't have an active sql connection we cannot test the transactions coupled to a connection
            // the only thing we can do is test the TransactionScope transaction

            var          formatter = new VerboseSqlServerFormatter(true);
            const string text      = "select 1";
            var          cmd       = CreateDbCommand(CommandType.Text, text);

#if NET461
            const string expectedOutput   = "-- Command Type: Text\n-- Database: TestDatabase\n-- Transaction Scope Iso Level: Serializable\n\nselect 1;";
            var          transactionScope = new TransactionScope();
            var          actualOutput     = GenerateOutput(formatter, cmd, text);
            transactionScope.Dispose();
#else
            const string expectedOutput = "-- Command Type: Text\n-- Database: TestDatabase\n\nselect 1;";
            var          actualOutput   = GenerateOutput(formatter, cmd, text);
#endif

            Assert.Equal(expectedOutput, actualOutput);
        }