示例#1
0
        private void ValidatePeekTest(string databaseName, string objectName, string objectType, string schemaName, bool shouldReturnValidResult)
        {
            // Get live connectionInfo and serverConnection
            ConnectionInfo   connInfo         = TestObjects.InitLiveConnectionInfoForDefinition(databaseName);
            ServerConnection serverConnection = TestObjects.InitLiveServerConnectionForDefinition(connInfo);

            PeekDefinition peekDefinition = new PeekDefinition(serverConnection, connInfo);

            PeekDefinition.ScriptGetter sqlScriptGetter = null;
            switch (objectType)
            {
            case SynonymTypeName:
                sqlScriptGetter = peekDefinition.GetSynonymScripts;
                break;

            case ScalarValuedFunctionTypeName:
                sqlScriptGetter = peekDefinition.GetScalarValuedFunctionScripts;
                objectType      = "Function";
                break;

            case TableValuedFunctionTypeName:
                sqlScriptGetter = peekDefinition.GetTableValuedFunctionScripts;
                objectType      = "Function";
                break;

            case TableTypeName:
                sqlScriptGetter = peekDefinition.GetTableScripts;
                break;

            case ViewTypeName:
                sqlScriptGetter = peekDefinition.GetViewScripts;
                break;

            case StoredProcedureTypeName:
                sqlScriptGetter = peekDefinition.GetStoredProcedureScripts;
                break;

            case UserDefinedDataTypeTypeName:
                sqlScriptGetter = peekDefinition.GetUserDefinedDataTypeScripts;
                objectType      = "Type";
                break;

            case UserDefinedTableTypeTypeName:
                sqlScriptGetter = peekDefinition.GetUserDefinedTableTypeScripts;
                objectType      = "Type";
                break;
            }

            Location[] locations = peekDefinition.GetSqlObjectDefinition(sqlScriptGetter, objectName, schemaName, objectType);
            if (shouldReturnValidResult)
            {
                Assert.NotNull(locations);
                Cleanup(locations);
            }
            else
            {
                Assert.Null(locations);
            }
        }
示例#2
0
        public void GetStoredProcedureDefinitionFailureTest()
        {
            // Get live connectionInfo and serverConnection
            ConnectionInfo   connInfo         = TestObjects.InitLiveConnectionInfoForDefinition();
            ServerConnection serverConnection = TestObjects.InitLiveServerConnectionForDefinition(connInfo);

            PeekDefinition peekDefinition = new PeekDefinition(serverConnection, connInfo);
            string         objectName     = "SP2";
            string         schemaName     = "dbo";
            string         objectType     = "PROCEDURE";

            Location[] locations = peekDefinition.GetSqlObjectDefinition(peekDefinition.GetStoredProcedureScripts, objectName, schemaName, objectType);
            Assert.Null(locations);
        }
示例#3
0
        public void GetViewDefinitionInvalidObjectTest()
        {
            // Get live connectionInfo and serverConnection
            ConnectionInfo   connInfo         = TestObjects.InitLiveConnectionInfoForDefinition();
            ServerConnection serverConnection = TestObjects.InitLiveServerConnectionForDefinition(connInfo);

            PeekDefinition peekDefinition = new PeekDefinition(serverConnection, connInfo);
            string         objectName     = "objects";
            string         schemaName     = null;
            string         objectType     = "VIEW";

            Location[] locations = peekDefinition.GetSqlObjectDefinition(peekDefinition.GetViewScripts, objectName, schemaName, objectType);
            Assert.Null(locations);
        }
示例#4
0
        public void GetValidViewDefinitionTest()
        {
            ConnectionInfo   connInfo         = TestObjects.InitLiveConnectionInfoForDefinition();
            ServerConnection serverConnection = TestObjects.InitLiveServerConnectionForDefinition(connInfo);

            PeekDefinition peekDefinition = new PeekDefinition(serverConnection, connInfo);
            string         objectName     = "objects";
            string         schemaName     = "sys";
            string         objectType     = "VIEW";

            Location[] locations = peekDefinition.GetSqlObjectDefinition(peekDefinition.GetViewScripts, objectName, schemaName, objectType);
            Assert.NotNull(locations);
            Cleanup(locations);
        }
示例#5
0
        public void GetStoredProcedureDefinitionWithoutSchemaTest()
        {
            // Get live connectionInfo and serverConnection
            ConnectionInfo   connInfo         = TestObjects.InitLiveConnectionInfoForDefinition();
            ServerConnection serverConnection = TestObjects.InitLiveServerConnectionForDefinition(connInfo);

            PeekDefinition peekDefinition = new PeekDefinition(serverConnection, connInfo);
            string         objectName     = "sp_MSrepl_startup";
            string         schemaName     = null;
            string         objectType     = "PROCEDURE";

            Location[] locations = peekDefinition.GetSqlObjectDefinition(peekDefinition.GetStoredProcedureScripts, objectName, schemaName, objectType);
            Assert.NotNull(locations);
            Cleanup(locations);
        }
示例#6
0
        public void GetTableDefinitionInvalidObjectTest()
        {
            // Get live connectionInfo and serverConnection
            ConnectionInfo   connInfo         = TestObjects.InitLiveConnectionInfoForDefinition();
            ServerConnection serverConnection = TestObjects.InitLiveServerConnectionForDefinition(connInfo);

            PeekDefinition peekDefinition = new PeekDefinition(serverConnection, connInfo);
            string         objectName     = "test_invalid";
            string         schemaName     = null;
            string         objectType     = "TABLE";

            // Get locations for invalid table object
            Location[] locations = peekDefinition.GetSqlObjectDefinition(peekDefinition.GetTableScripts, objectName, schemaName, objectType);
            Assert.Null(locations);
        }
示例#7
0
        public void GetTableDefinitionWithSchemaTest()
        {
            // Get live connectionInfo and serverConnection
            ConnectionInfo   connInfo         = TestObjects.InitLiveConnectionInfoForDefinition();
            ServerConnection serverConnection = TestObjects.InitLiveServerConnectionForDefinition(connInfo);

            PeekDefinition peekDefinition = new PeekDefinition(serverConnection, connInfo);
            string         objectName     = "spt_monitor";

            string schemaName = "dbo";
            string objectType = "TABLE";

            // Get locations for valid table object with schema name
            Location[] locations = peekDefinition.GetSqlObjectDefinition(peekDefinition.GetTableScripts, objectName, schemaName, objectType);
            Assert.NotNull(locations);
            Cleanup(locations);
        }