Tmx.TestData.GetTestScenario C# (CSharp) Method

GetTestScenario() static private method

static private GetTestScenario ( ITestSuite testSuite, string testScenarioName, string testScenarioId, string testSuiteName, string testSuiteId, System.Guid testPlatformId ) : ITestScenario
testSuite ITestSuite
testScenarioName string
testScenarioId string
testSuiteName string
testSuiteId string
testPlatformId System.Guid
return ITestScenario
        internal static ITestScenario GetTestScenario(
            ITestSuite testSuite,
            string testScenarioName,
            string testScenarioId,
            string testSuiteName,
            string testSuiteId,
            Guid testPlatformId)
        {
            TestScenario result = null;
            if (testSuite != null)
                CurrentTestSuite = testSuite;
            else if (!string.IsNullOrEmpty(testSuiteName)) {
                /*
            } else if (testSuite == null && 
                        testSuiteName != string.Empty &&
                        testSuiteName != null) {
            */
                var testSuite2 = GetTestSuite(testSuiteName, testSuiteId, testPlatformId);
                if (testSuite2 != null)
                    CurrentTestSuite = testSuite2;
                
            } else if (!string.IsNullOrEmpty(testSuiteId)) {
                /*
            } else if (testSuite == null && 
                        testSuiteId != string.Empty &&
                        testSuiteId != null) {
            */
                var testSuite3 = GetTestSuite(testSuiteName, testSuiteId, testPlatformId);
                if (testSuite3 != null)
                    CurrentTestSuite = testSuite3;
            }
            
            if (CurrentTestSuite == null)
                return result;
            
            if (!string.IsNullOrEmpty(testScenarioName)) {
                
                foreach (ITestScenario testScenario in CurrentTestSuite.TestScenarios)
                    if (testScenario.Name == testScenarioName) {
                        
                        CurrentTestScenario = testScenario;
                        return CurrentTestScenario;
                        // TODO: try this
                        // return TestData.CurrentTestScenario = testScenario;
                    }
            }
            
            if (!string.IsNullOrEmpty(testScenarioId)) {
                // foreach (ITestScenario testScenario in TestData.CurrentTestSuite.TestScenarios.Cast<ITestScenario>().Where(testScenario => testScenario.Id == testScenarioId)) {
                foreach (ITestScenario testScenario in CurrentTestSuite.TestScenarios.Where(testScenario => testScenario.Id == testScenarioId)) {
                    if (testPlatformId != testScenario.PlatformUniqueId)
                        continue;
                    if (testScenarioName != testScenario.Name && !string.IsNullOrEmpty(testScenarioName))
                        continue;
                    CurrentTestScenario = testScenario;
                    return testScenario;
                }
            }

            return result;
        }